This document is the detailed companion for agents.md.
For logger config (initLogger), values are resolved in this order:
- Environment variable (if available for that setting)
initLogger({...})argument- Existing in-memory
logConfig - Built-in defaults
- Scope: logger
- Type:
"metrics" | "error" | "warn" | "info" | "log" | "debug" | "trace" - Default:
"log" - Env override:
LOG_LEVEL - Notes: controls which console methods are emitted (
errorandmetricsalways emit) - Source:
src/zod.ts,src/dare-console-logger.ts
- Scope: logger
- Type: number (
>= 0) - Default:
500 - Env override:
LOG_SECONDS_BETWEEN_METRICS - Notes:
0disables periodic metrics writes - Source:
src/zod.ts,src/dare-console-logger.ts
- Scope: logger
- Type: number (
>= 10) - Default:
1048576(1 MiB) - Env override:
LOG_PRIORITY_THRESHOLD_BYTES - Notes: when queue size exceeds threshold, flushing is prioritized immediately
- Source:
src/zod.ts,src/dare-console-logger.ts
- Scope: logger
- Type:
Record<string, string> | null - Default:
null - Env override: none
- Notes: merged into emitted
context.meta; merged shallowly on updates - Source:
src/zod.ts,src/dare-console-logger.ts
- Scope: logger
- Type: boolean (
true/false/yes/noaccepted by parser) - Default:
false - Env override:
LOG_OBJECTS - Notes: logs objects directly to console; forces
logSecondsBetweenMetrics=0when enabled - Source:
src/zod.ts,src/dare-console-logger.ts
- Scope: logger
- Type: boolean (
true/false/yes/no) - Default:
false - Env override:
LOG_PRETTY - Notes: pretty-prints JSON logs via
console.log - Source:
src/zod.ts,src/dare-console-logger.ts
- Scope: logger
- Type: boolean (
true/false/yes/no) - Default:
false - Env override:
LOG_WITH_CONSOLE - Notes: bypasses queue and writes via
console.log(JSON.stringify(...)) - Source:
src/zod.ts,src/dare-console-logger.ts
- Scope: logger
- Type: boolean (
true/false/yes/no) - Default:
false - Env override: none
- Notes: intended to suppress init/update debug logs. Current implementation
does not apply
initLogger({ silentInit })intonewConfig, so this setting is effectively always defaulted during init. - Source:
src/zod.ts,src/dare-console-logger.ts
- Maps to:
logLevel - Example:
LOG_LEVEL=info - Source:
src/dare-console-logger.ts,README.md
- Maps to:
logSecondsBetweenMetrics - Example:
LOG_SECONDS_BETWEEN_METRICS=60 - Source:
src/dare-console-logger.ts,README.md
- Maps to:
logPriorityThresholdBytes - Example:
LOG_PRIORITY_THRESHOLD_BYTES=262144 - Source:
src/dare-console-logger.ts
- Maps to:
logObjects - Example:
LOG_OBJECTS=true - Source:
src/dare-console-logger.ts,README.md
- Maps to:
logPretty - Example:
LOG_PRETTY=true - Source:
src/dare-console-logger.ts,README.md
- Maps to:
logWithConsole - Example:
LOG_WITH_CONSOLE=true - Source:
src/dare-console-logger.ts,README.md
- Scope: Express middleware
- Type:
RegExp - Default: unset
- Notes: skip logging for matching
req.originalUrl - Source:
src/express.ts
- Scope: Fresh middleware
- Type:
Cookie[] - Default: unset
- Notes: additional cookies appended to response
- Source:
src/fresh.ts
- Scope: Fresh middleware
- Type:
RegExp - Default: unset
- Notes: skip logging for matching route path
- Source:
src/fresh.ts
- Scope: Hono middleware
- Type:
RegExp - Default: unset
- Notes: skip logging for matching request path
- Source:
src/hono.ts
- Scope: SolidStart middleware
- Type:
RegExp - Default: unset
- Notes: skip logging for matching request path
- Source:
src/solidstart.ts
- Scope: request context
- Default/fallback: generated
"<app>-<timestamp>-<rand>" - Source:
src/utils.ts
- Scope: request context
- Type: comma-separated list
- Default/fallback:
[requestId]when request id is generated - Source:
src/utils.ts
- Scope: request context
- Default/fallback:
"unknown" - Source:
src/utils.ts
- Scope: request context
- Notes: extracts
sessionIdfrom token payload when present - Default/fallback:
"unknown" - Source:
src/utils.ts
- Scope: request context
- Default/fallback:
"postman"for Postman user-agent; otherwise"unknown" - Source:
src/utils.ts
- Scope: request context
- Default/fallback:
"unknown" - Source:
src/utils.ts
- Scope: request context
- Default/fallback:
"unknown" - Source:
src/utils.ts
LoggingConfigtype insrc/zod.tsdoes not currently includelogWithConsole, but runtime schema/config uses it.silentInitexists in schema/type, but is not wired intoinitLogger'snewConfigobject.