Skip to content

RequestLogConfig

Defined in: packages/gateway/src/policies/observability/request-log.ts:11

Configuration for the requestLog policy.

optional extractFields?: (c) => Record<string, unknown>

Defined in: packages/gateway/src/policies/observability/request-log.ts:13

Additional fields to extract from the request

unknown

Record<string, unknown>


optional ipHeaders?: string[]

Defined in: packages/gateway/src/policies/observability/request-log.ts:17

Ordered list of headers to inspect for the client IP. Default: ["cf-connecting-ip", "x-forwarded-for"].


optional logRequestBody?: boolean

Defined in: packages/gateway/src/policies/observability/request-log.ts:19

Log request body (opt-in). Default: false.


optional logResponseBody?: boolean

Defined in: packages/gateway/src/policies/observability/request-log.ts:21

Log response body (opt-in). Default: false.


optional maxBodyLength?: number

Defined in: packages/gateway/src/policies/observability/request-log.ts:23

Maximum body size in bytes to capture. Default: 8192.


optional redactPaths?: string[]

Defined in: packages/gateway/src/policies/observability/request-log.ts:25

JSON field paths to redact from logged bodies (e.g., ["password", "*.secret"]).


optional sink?: (entry) => void | Promise<void>

Defined in: packages/gateway/src/policies/observability/request-log.ts:15

Custom log sink - defaults to console.log with structured JSON

LogEntry

void | Promise<void>


optional skip?: (c) => boolean | Promise<boolean>

Defined in: packages/gateway/src/policies/types.ts:90

Skip this policy when condition returns true

unknown

boolean | Promise<boolean>

PolicyConfig.skip