---
title: "Server-Side Types"
description: "Framework config, request log records, and server logger factories."
canonical_url: "https://www.blyp.dev/docs/types/server-side"
markdown_url: "https://www.blyp.dev/docs/types/server-side.md"
last_updated: "2018-10-20"
x_farming_labs_generated_preamble: true
---

# Server-Side Types
URL: /docs/types/server-side
LLM index: /llms.txt
Description: Framework config, request log records, and server logger factories.

# Server-Side Types

Each server adapter exports its own config and factory types from its subpath.

## Commonly used imports

```ts
import type { ElysiaLoggerConfig, ElysiaContext } from "@blyp/core/elysia";
import type { HonoLoggerConfig, HonoLoggerVariables } from "@blyp/core/hono";
import type { ExpressLoggerConfig, ExpressLoggerMiddleware } from "@blyp/core/express";
import type { FastifyLoggerConfig, FastifyLoggerPlugin } from "@blyp/core/fastify";
import type { NestLoggerConfig, NestAdapterType } from "@blyp/core/nestjs";
import type { NextJsLoggerFactory, NextJsLoggerConfig } from "@blyp/core/nextjs";
import type { TanStackStartLoggerFactory } from "@blyp/core/tanstack-start";
import type { SolidStartLoggerFactory } from "@blyp/core/solid-start";
import type { SvelteKitLoggerFactory } from "@blyp/core/sveltekit";
import type { WorkersLoggerConfig, WorkersRequestLogger } from "@blyp/core/workers";
import type { ConvexLogger, ConvexLoggerConfig } from "@blyp/core/convex";
```

## `HttpRequestLog`

Most server adapters also export `HttpRequestLog`, which includes:

- `type: "http_request" | "http_error"`
- `method`
- `url`
- `statusCode`
- `responseTime`
- client metadata such as IP, user agent, hostname, and browser/OS hints
- optional error metadata like `error`, `stack`, `code`, `why`, `fix`, `link`, and `details`

## Where typing helps most

- `customProps(ctx)` for request-scoped metadata
- `autoLogging.ignore(ctx)` when you want context-aware suppression
- `clientLogging.validate(ctx, payload)` and `clientLogging.enrich(ctx, payload)`
- wrapped handler helpers such as `NextJsLoggerFactory`, `TanStackStartLoggerFactory`, `SolidStartLoggerFactory`, and `SvelteKitLoggerFactory`
- Convex `logger.wrap()` from `@blyp/core/convex` for isolate handlers that need `ctx` binding

## Request-scoped structured logs

Structured log types are shared root exports because the same `createStructuredLog()` helper works in standalone code and inside framework handlers:

```ts
import {
  createStructuredLog,
  type StructuredLog,
  type StructuredLogEmitOptions,
  type StructuredLogPayload,
} from "@blyp/core";
```

Inside a framework request, the emitted `StructuredLogPayload<TFields>` can also include request metadata such as `method`, `path`, `status`, and `duration`, plus anything returned by the adapter's `customProps(ctx)`.

## Sitemap

See the full [sitemap](/sitemap.md) for all pages.
Docs-scoped sitemap: [/docs/sitemap.md](/docs/sitemap.md).
Well-known sitemap: [/.well-known/sitemap.md](/.well-known/sitemap.md).
