Skip to content
Logixlysia
Esc
navigateopen⌘Jpreview
On this page

Request ID

Generate or honor unique request identifiers across requests and responses

Logixlysia can automatically generate or retrieve unique request identifiers (Request IDs) and attach them to the request context, response headers, and log outputs.

Basic Usage

You can enable the request ID feature using the requestId config option. When set to true, it uses the default configuration (X-Request-Id header and UUID v4 generator).

import { Elysia } from 'elysia'
import { logixlysia } from 'logixlysia'

const app = new Elysia()
  .use(
    logixlysia({
      config: {
        requestId: true
      }
    })
  )

Production Preset

The prod preset enables requestId automatically by default:

const app = new Elysia()
  .use(
    logixlysia({
      preset: 'prod' // requestId is enabled automatically
    })
  )

Custom Configuration

For advanced use cases, you can pass a configuration object instead of a boolean:

const app = new Elysia()
  .use(
    logixlysia({
      config: {
        requestId: {
          // Custom header name to read from / write to
          header: 'X-Correlation-Id',
          // Custom request ID generator function
          generator: () => `req-${crypto.randomUUID()}`
        }
      }
    })
  )

Options

Option Type Default Description
enabled boolean true Turn request ID generation on or off when using object configuration.
header string 'X-Request-Id' The header key to check on incoming requests (honoring upstream proxies) and to set on responses.
generator () => string crypto.randomUUID A function that returns a unique string to use as the request ID.

Log Formatting

When Request ID is enabled, you can output it in your custom log format using the {requestId} token:

const app = new Elysia()
  .use(
    logixlysia({
      config: {
        requestId: true,
        customLogFormat: '{method} {pathname} - Request ID: {requestId}'
      }
    })
  )

If Request ID is disabled or not present, the token will render as an empty string.

Error Responses

If a request fails (e.g. throws an exception), the request ID is still propagated in the response headers (like X-Request-Id) and is correctly logged in the HTTP error telemetry context, allowing trace correlation for failed requests.

Last updated on July 21, 2026

Was this page helpful?