mcp-server-framework 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +174 -0
- package/LICENSE-GPL.md +219 -0
- package/LICENSE.md +187 -0
- package/README.md +439 -0
- package/build/config/config-cache.d.ts +120 -0
- package/build/config/config-cache.d.ts.map +1 -0
- package/build/config/config-cache.js +310 -0
- package/build/config/config-cache.js.map +1 -0
- package/build/config/env.d.ts +476 -0
- package/build/config/env.d.ts.map +1 -0
- package/build/config/env.js +441 -0
- package/build/config/env.js.map +1 -0
- package/build/config/extensions.d.ts +107 -0
- package/build/config/extensions.d.ts.map +1 -0
- package/build/config/extensions.js +152 -0
- package/build/config/extensions.js.map +1 -0
- package/build/config/file/index.d.ts +8 -0
- package/build/config/file/index.d.ts.map +1 -0
- package/build/config/file/index.js +10 -0
- package/build/config/file/index.js.map +1 -0
- package/build/config/file/loader.d.ts +31 -0
- package/build/config/file/loader.d.ts.map +1 -0
- package/build/config/file/loader.js +313 -0
- package/build/config/file/loader.js.map +1 -0
- package/build/config/file/schema.d.ts +583 -0
- package/build/config/file/schema.d.ts.map +1 -0
- package/build/config/file/schema.js +388 -0
- package/build/config/file/schema.js.map +1 -0
- package/build/config/index.d.ts +15 -0
- package/build/config/index.d.ts.map +1 -0
- package/build/config/index.js +27 -0
- package/build/config/index.js.map +1 -0
- package/build/config/startup-warnings.d.ts +46 -0
- package/build/config/startup-warnings.d.ts.map +1 -0
- package/build/config/startup-warnings.js +61 -0
- package/build/config/startup-warnings.js.map +1 -0
- package/build/connection/connection-state.d.ts +196 -0
- package/build/connection/connection-state.d.ts.map +1 -0
- package/build/connection/connection-state.js +426 -0
- package/build/connection/connection-state.js.map +1 -0
- package/build/connection/core/base.d.ts +43 -0
- package/build/connection/core/base.d.ts.map +1 -0
- package/build/connection/core/base.js +82 -0
- package/build/connection/core/base.js.map +1 -0
- package/build/connection/core/constants.d.ts +121 -0
- package/build/connection/core/constants.d.ts.map +1 -0
- package/build/connection/core/constants.js +151 -0
- package/build/connection/core/constants.js.map +1 -0
- package/build/connection/core/index.d.ts +13 -0
- package/build/connection/core/index.d.ts.map +1 -0
- package/build/connection/core/index.js +14 -0
- package/build/connection/core/index.js.map +1 -0
- package/build/connection/core/types.d.ts +102 -0
- package/build/connection/core/types.d.ts.map +1 -0
- package/build/connection/core/types.js +31 -0
- package/build/connection/core/types.js.map +1 -0
- package/build/connection/index.d.ts +19 -0
- package/build/connection/index.d.ts.map +1 -0
- package/build/connection/index.js +22 -0
- package/build/connection/index.js.map +1 -0
- package/build/connection/types.d.ts +125 -0
- package/build/connection/types.d.ts.map +1 -0
- package/build/connection/types.js +39 -0
- package/build/connection/types.js.map +1 -0
- package/build/errors/categories/auth.d.ts +59 -0
- package/build/errors/categories/auth.d.ts.map +1 -0
- package/build/errors/categories/auth.js +111 -0
- package/build/errors/categories/auth.js.map +1 -0
- package/build/errors/categories/connection.d.ts +70 -0
- package/build/errors/categories/connection.d.ts.map +1 -0
- package/build/errors/categories/connection.js +120 -0
- package/build/errors/categories/connection.js.map +1 -0
- package/build/errors/categories/index.d.ts +14 -0
- package/build/errors/categories/index.d.ts.map +1 -0
- package/build/errors/categories/index.js +20 -0
- package/build/errors/categories/index.js.map +1 -0
- package/build/errors/categories/operation.d.ts +83 -0
- package/build/errors/categories/operation.d.ts.map +1 -0
- package/build/errors/categories/operation.js +149 -0
- package/build/errors/categories/operation.js.map +1 -0
- package/build/errors/categories/protocol.d.ts +68 -0
- package/build/errors/categories/protocol.d.ts.map +1 -0
- package/build/errors/categories/protocol.js +135 -0
- package/build/errors/categories/protocol.js.map +1 -0
- package/build/errors/categories/session.d.ts +50 -0
- package/build/errors/categories/session.d.ts.map +1 -0
- package/build/errors/categories/session.js +97 -0
- package/build/errors/categories/session.js.map +1 -0
- package/build/errors/categories/system.d.ts +95 -0
- package/build/errors/categories/system.d.ts.map +1 -0
- package/build/errors/categories/system.js +190 -0
- package/build/errors/categories/system.js.map +1 -0
- package/build/errors/categories/transport.d.ts +70 -0
- package/build/errors/categories/transport.d.ts.map +1 -0
- package/build/errors/categories/transport.js +148 -0
- package/build/errors/categories/transport.js.map +1 -0
- package/build/errors/categories/validation.d.ts +140 -0
- package/build/errors/categories/validation.d.ts.map +1 -0
- package/build/errors/categories/validation.js +311 -0
- package/build/errors/categories/validation.js.map +1 -0
- package/build/errors/core/base.d.ts +103 -0
- package/build/errors/core/base.d.ts.map +1 -0
- package/build/errors/core/base.js +219 -0
- package/build/errors/core/base.js.map +1 -0
- package/build/errors/core/constants.d.ts +40 -0
- package/build/errors/core/constants.d.ts.map +1 -0
- package/build/errors/core/constants.js +49 -0
- package/build/errors/core/constants.js.map +1 -0
- package/build/errors/core/error-codes.d.ts +72 -0
- package/build/errors/core/error-codes.d.ts.map +1 -0
- package/build/errors/core/error-codes.js +88 -0
- package/build/errors/core/error-codes.js.map +1 -0
- package/build/errors/core/http.d.ts +69 -0
- package/build/errors/core/http.d.ts.map +1 -0
- package/build/errors/core/http.js +106 -0
- package/build/errors/core/http.js.map +1 -0
- package/build/errors/core/index.d.ts +23 -0
- package/build/errors/core/index.d.ts.map +1 -0
- package/build/errors/core/index.js +41 -0
- package/build/errors/core/index.js.map +1 -0
- package/build/errors/core/json-rpc.d.ts +69 -0
- package/build/errors/core/json-rpc.d.ts.map +1 -0
- package/build/errors/core/json-rpc.js +79 -0
- package/build/errors/core/json-rpc.js.map +1 -0
- package/build/errors/core/messages.d.ts +51 -0
- package/build/errors/core/messages.d.ts.map +1 -0
- package/build/errors/core/messages.js +59 -0
- package/build/errors/core/messages.js.map +1 -0
- package/build/errors/core/types.d.ts +80 -0
- package/build/errors/core/types.d.ts.map +1 -0
- package/build/errors/core/types.js +10 -0
- package/build/errors/core/types.js.map +1 -0
- package/build/errors/factory.d.ts +199 -0
- package/build/errors/factory.d.ts.map +1 -0
- package/build/errors/factory.js +244 -0
- package/build/errors/factory.js.map +1 -0
- package/build/errors/index.d.ts +35 -0
- package/build/errors/index.d.ts.map +1 -0
- package/build/errors/index.js +67 -0
- package/build/errors/index.js.map +1 -0
- package/build/index.d.ts +93 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +107 -0
- package/build/index.js.map +1 -0
- package/build/logger/core/constants.d.ts +143 -0
- package/build/logger/core/constants.d.ts.map +1 -0
- package/build/logger/core/constants.js +206 -0
- package/build/logger/core/constants.js.map +1 -0
- package/build/logger/core/context.d.ts +170 -0
- package/build/logger/core/context.d.ts.map +1 -0
- package/build/logger/core/context.js +237 -0
- package/build/logger/core/context.js.map +1 -0
- package/build/logger/core/errors.d.ts +101 -0
- package/build/logger/core/errors.d.ts.map +1 -0
- package/build/logger/core/errors.js +128 -0
- package/build/logger/core/errors.js.map +1 -0
- package/build/logger/core/format.d.ts +40 -0
- package/build/logger/core/format.d.ts.map +1 -0
- package/build/logger/core/format.js +47 -0
- package/build/logger/core/format.js.map +1 -0
- package/build/logger/core/index.d.ts +19 -0
- package/build/logger/core/index.d.ts.map +1 -0
- package/build/logger/core/index.js +47 -0
- package/build/logger/core/index.js.map +1 -0
- package/build/logger/core/trace-context.d.ts +51 -0
- package/build/logger/core/trace-context.d.ts.map +1 -0
- package/build/logger/core/trace-context.js +42 -0
- package/build/logger/core/trace-context.js.map +1 -0
- package/build/logger/core/types.d.ts +233 -0
- package/build/logger/core/types.d.ts.map +1 -0
- package/build/logger/core/types.js +10 -0
- package/build/logger/core/types.js.map +1 -0
- package/build/logger/factory.d.ts +150 -0
- package/build/logger/factory.d.ts.map +1 -0
- package/build/logger/factory.js +236 -0
- package/build/logger/factory.js.map +1 -0
- package/build/logger/formatters/index.d.ts +12 -0
- package/build/logger/formatters/index.d.ts.map +1 -0
- package/build/logger/formatters/index.js +15 -0
- package/build/logger/formatters/index.js.map +1 -0
- package/build/logger/formatters/json-formatter.d.ts +54 -0
- package/build/logger/formatters/json-formatter.d.ts.map +1 -0
- package/build/logger/formatters/json-formatter.js +80 -0
- package/build/logger/formatters/json-formatter.js.map +1 -0
- package/build/logger/formatters/schema.d.ts +230 -0
- package/build/logger/formatters/schema.d.ts.map +1 -0
- package/build/logger/formatters/schema.js +278 -0
- package/build/logger/formatters/schema.js.map +1 -0
- package/build/logger/formatters/text-formatter.d.ts +50 -0
- package/build/logger/formatters/text-formatter.d.ts.map +1 -0
- package/build/logger/formatters/text-formatter.js +93 -0
- package/build/logger/formatters/text-formatter.js.map +1 -0
- package/build/logger/index.d.ts +39 -0
- package/build/logger/index.d.ts.map +1 -0
- package/build/logger/index.js +43 -0
- package/build/logger/index.js.map +1 -0
- package/build/logger/logger.d.ts +278 -0
- package/build/logger/logger.d.ts.map +1 -0
- package/build/logger/logger.js +459 -0
- package/build/logger/logger.js.map +1 -0
- package/build/logger/mcp-logger.d.ts +177 -0
- package/build/logger/mcp-logger.d.ts.map +1 -0
- package/build/logger/mcp-logger.js +294 -0
- package/build/logger/mcp-logger.js.map +1 -0
- package/build/logger/scrubbing/index.d.ts +14 -0
- package/build/logger/scrubbing/index.d.ts.map +1 -0
- package/build/logger/scrubbing/index.js +16 -0
- package/build/logger/scrubbing/index.js.map +1 -0
- package/build/logger/scrubbing/injection-guard.d.ts +69 -0
- package/build/logger/scrubbing/injection-guard.d.ts.map +1 -0
- package/build/logger/scrubbing/injection-guard.js +102 -0
- package/build/logger/scrubbing/injection-guard.js.map +1 -0
- package/build/logger/scrubbing/secret-scrubber.d.ts +72 -0
- package/build/logger/scrubbing/secret-scrubber.d.ts.map +1 -0
- package/build/logger/scrubbing/secret-scrubber.js +177 -0
- package/build/logger/scrubbing/secret-scrubber.js.map +1 -0
- package/build/logger/writers/base-writer.d.ts +45 -0
- package/build/logger/writers/base-writer.d.ts.map +1 -0
- package/build/logger/writers/base-writer.js +41 -0
- package/build/logger/writers/base-writer.js.map +1 -0
- package/build/logger/writers/composite-writer.d.ts +83 -0
- package/build/logger/writers/composite-writer.d.ts.map +1 -0
- package/build/logger/writers/composite-writer.js +121 -0
- package/build/logger/writers/composite-writer.js.map +1 -0
- package/build/logger/writers/console-writer.d.ts +59 -0
- package/build/logger/writers/console-writer.d.ts.map +1 -0
- package/build/logger/writers/console-writer.js +73 -0
- package/build/logger/writers/console-writer.js.map +1 -0
- package/build/logger/writers/file-writer.d.ts +160 -0
- package/build/logger/writers/file-writer.d.ts.map +1 -0
- package/build/logger/writers/file-writer.js +345 -0
- package/build/logger/writers/file-writer.js.map +1 -0
- package/build/logger/writers/index.d.ts +15 -0
- package/build/logger/writers/index.d.ts.map +1 -0
- package/build/logger/writers/index.js +19 -0
- package/build/logger/writers/index.js.map +1 -0
- package/build/mcp/capabilities/apps/define-app.d.ts +68 -0
- package/build/mcp/capabilities/apps/define-app.d.ts.map +1 -0
- package/build/mcp/capabilities/apps/define-app.js +127 -0
- package/build/mcp/capabilities/apps/define-app.js.map +1 -0
- package/build/mcp/capabilities/apps/index.d.ts +10 -0
- package/build/mcp/capabilities/apps/index.d.ts.map +1 -0
- package/build/mcp/capabilities/apps/index.js +10 -0
- package/build/mcp/capabilities/apps/index.js.map +1 -0
- package/build/mcp/capabilities/capabilities.d.ts +24 -0
- package/build/mcp/capabilities/capabilities.d.ts.map +1 -0
- package/build/mcp/capabilities/capabilities.js +50 -0
- package/build/mcp/capabilities/capabilities.js.map +1 -0
- package/build/mcp/capabilities/index.d.ts +17 -0
- package/build/mcp/capabilities/index.d.ts.map +1 -0
- package/build/mcp/capabilities/index.js +20 -0
- package/build/mcp/capabilities/index.js.map +1 -0
- package/build/mcp/capabilities/prompts/define-prompt.d.ts +95 -0
- package/build/mcp/capabilities/prompts/define-prompt.d.ts.map +1 -0
- package/build/mcp/capabilities/prompts/define-prompt.js +109 -0
- package/build/mcp/capabilities/prompts/define-prompt.js.map +1 -0
- package/build/mcp/capabilities/prompts/index.d.ts +10 -0
- package/build/mcp/capabilities/prompts/index.d.ts.map +1 -0
- package/build/mcp/capabilities/prompts/index.js +10 -0
- package/build/mcp/capabilities/prompts/index.js.map +1 -0
- package/build/mcp/capabilities/registry/base-registry.d.ts +95 -0
- package/build/mcp/capabilities/registry/base-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/base-registry.js +149 -0
- package/build/mcp/capabilities/registry/base-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/index.d.ts +16 -0
- package/build/mcp/capabilities/registry/index.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/index.js +34 -0
- package/build/mcp/capabilities/registry/index.js.map +1 -0
- package/build/mcp/capabilities/registry/prompt-registry.d.ts +116 -0
- package/build/mcp/capabilities/registry/prompt-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/prompt-registry.js +232 -0
- package/build/mcp/capabilities/registry/prompt-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/reset.d.ts +30 -0
- package/build/mcp/capabilities/registry/reset.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/reset.js +48 -0
- package/build/mcp/capabilities/registry/reset.js.map +1 -0
- package/build/mcp/capabilities/registry/resource-registry.d.ts +152 -0
- package/build/mcp/capabilities/registry/resource-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/resource-registry.js +430 -0
- package/build/mcp/capabilities/registry/resource-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/scope-enforcement.d.ts +48 -0
- package/build/mcp/capabilities/registry/scope-enforcement.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/scope-enforcement.js +62 -0
- package/build/mcp/capabilities/registry/scope-enforcement.js.map +1 -0
- package/build/mcp/capabilities/registry/task-tool-registry.d.ts +96 -0
- package/build/mcp/capabilities/registry/task-tool-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/task-tool-registry.js +190 -0
- package/build/mcp/capabilities/registry/task-tool-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/tool-registry.d.ts +100 -0
- package/build/mcp/capabilities/registry/tool-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/tool-registry.js +242 -0
- package/build/mcp/capabilities/registry/tool-registry.js.map +1 -0
- package/build/mcp/capabilities/resources/define-resource.d.ts +103 -0
- package/build/mcp/capabilities/resources/define-resource.d.ts.map +1 -0
- package/build/mcp/capabilities/resources/define-resource.js +137 -0
- package/build/mcp/capabilities/resources/define-resource.js.map +1 -0
- package/build/mcp/capabilities/resources/index.d.ts +10 -0
- package/build/mcp/capabilities/resources/index.d.ts.map +1 -0
- package/build/mcp/capabilities/resources/index.js +10 -0
- package/build/mcp/capabilities/resources/index.js.map +1 -0
- package/build/mcp/capabilities/server-capabilities.d.ts +33 -0
- package/build/mcp/capabilities/server-capabilities.d.ts.map +1 -0
- package/build/mcp/capabilities/server-capabilities.js +16 -0
- package/build/mcp/capabilities/server-capabilities.js.map +1 -0
- package/build/mcp/capabilities/tasks/define-task.d.ts +75 -0
- package/build/mcp/capabilities/tasks/define-task.d.ts.map +1 -0
- package/build/mcp/capabilities/tasks/define-task.js +93 -0
- package/build/mcp/capabilities/tasks/define-task.js.map +1 -0
- package/build/mcp/capabilities/tasks/index.d.ts +11 -0
- package/build/mcp/capabilities/tasks/index.d.ts.map +1 -0
- package/build/mcp/capabilities/tasks/index.js +11 -0
- package/build/mcp/capabilities/tasks/index.js.map +1 -0
- package/build/mcp/capabilities/tools/define-tool.d.ts +62 -0
- package/build/mcp/capabilities/tools/define-tool.d.ts.map +1 -0
- package/build/mcp/capabilities/tools/define-tool.js +73 -0
- package/build/mcp/capabilities/tools/define-tool.js.map +1 -0
- package/build/mcp/capabilities/tools/index.d.ts +10 -0
- package/build/mcp/capabilities/tools/index.d.ts.map +1 -0
- package/build/mcp/capabilities/tools/index.js +10 -0
- package/build/mcp/capabilities/tools/index.js.map +1 -0
- package/build/mcp/handlers/index.d.ts +19 -0
- package/build/mcp/handlers/index.d.ts.map +1 -0
- package/build/mcp/handlers/index.js +26 -0
- package/build/mcp/handlers/index.js.map +1 -0
- package/build/mcp/handlers/ping.d.ts +27 -0
- package/build/mcp/handlers/ping.d.ts.map +1 -0
- package/build/mcp/handlers/ping.js +61 -0
- package/build/mcp/handlers/ping.js.map +1 -0
- package/build/mcp/handlers/progress.d.ts +41 -0
- package/build/mcp/handlers/progress.d.ts.map +1 -0
- package/build/mcp/handlers/progress.js +79 -0
- package/build/mcp/handlers/progress.js.map +1 -0
- package/build/mcp/index.d.ts +28 -0
- package/build/mcp/index.d.ts.map +1 -0
- package/build/mcp/index.js +34 -0
- package/build/mcp/index.js.map +1 -0
- package/build/mcp/responses/helpers.d.ts +146 -0
- package/build/mcp/responses/helpers.d.ts.map +1 -0
- package/build/mcp/responses/helpers.js +197 -0
- package/build/mcp/responses/helpers.js.map +1 -0
- package/build/mcp/responses/index.d.ts +9 -0
- package/build/mcp/responses/index.d.ts.map +1 -0
- package/build/mcp/responses/index.js +12 -0
- package/build/mcp/responses/index.js.map +1 -0
- package/build/mcp/types/context.d.ts +371 -0
- package/build/mcp/types/context.d.ts.map +1 -0
- package/build/mcp/types/context.js +17 -0
- package/build/mcp/types/context.js.map +1 -0
- package/build/mcp/types/definition.d.ts +727 -0
- package/build/mcp/types/definition.d.ts.map +1 -0
- package/build/mcp/types/definition.js +29 -0
- package/build/mcp/types/definition.js.map +1 -0
- package/build/mcp/types/handler.d.ts +58 -0
- package/build/mcp/types/handler.d.ts.map +1 -0
- package/build/mcp/types/handler.js +10 -0
- package/build/mcp/types/handler.js.map +1 -0
- package/build/mcp/types/index.d.ts +21 -0
- package/build/mcp/types/index.d.ts.map +1 -0
- package/build/mcp/types/index.js +18 -0
- package/build/mcp/types/index.js.map +1 -0
- package/build/mcp/types/response.d.ts +79 -0
- package/build/mcp/types/response.d.ts.map +1 -0
- package/build/mcp/types/response.js +10 -0
- package/build/mcp/types/response.js.map +1 -0
- package/build/server/auth/auth-context.d.ts +52 -0
- package/build/server/auth/auth-context.d.ts.map +1 -0
- package/build/server/auth/auth-context.js +45 -0
- package/build/server/auth/auth-context.js.map +1 -0
- package/build/server/auth/guards.d.ts +72 -0
- package/build/server/auth/guards.d.ts.map +1 -0
- package/build/server/auth/guards.js +103 -0
- package/build/server/auth/guards.js.map +1 -0
- package/build/server/auth/index.d.ts +21 -0
- package/build/server/auth/index.d.ts.map +1 -0
- package/build/server/auth/index.js +20 -0
- package/build/server/auth/index.js.map +1 -0
- package/build/server/auth/oidc-discovery.d.ts +68 -0
- package/build/server/auth/oidc-discovery.d.ts.map +1 -0
- package/build/server/auth/oidc-discovery.js +234 -0
- package/build/server/auth/oidc-discovery.js.map +1 -0
- package/build/server/auth/oidc-provider.d.ts +96 -0
- package/build/server/auth/oidc-provider.d.ts.map +1 -0
- package/build/server/auth/oidc-provider.js +126 -0
- package/build/server/auth/oidc-provider.js.map +1 -0
- package/build/server/auth/types.d.ts +204 -0
- package/build/server/auth/types.d.ts.map +1 -0
- package/build/server/auth/types.js +29 -0
- package/build/server/auth/types.js.map +1 -0
- package/build/server/auth/upstream-provider.d.ts +161 -0
- package/build/server/auth/upstream-provider.d.ts.map +1 -0
- package/build/server/auth/upstream-provider.js +411 -0
- package/build/server/auth/upstream-provider.js.map +1 -0
- package/build/server/builder/constants.d.ts +45 -0
- package/build/server/builder/constants.d.ts.map +1 -0
- package/build/server/builder/constants.js +54 -0
- package/build/server/builder/constants.js.map +1 -0
- package/build/server/builder/index.d.ts +24 -0
- package/build/server/builder/index.d.ts.map +1 -0
- package/build/server/builder/index.js +25 -0
- package/build/server/builder/index.js.map +1 -0
- package/build/server/builder/primitive-collector.d.ts +24 -0
- package/build/server/builder/primitive-collector.d.ts.map +1 -0
- package/build/server/builder/primitive-collector.js +89 -0
- package/build/server/builder/primitive-collector.js.map +1 -0
- package/build/server/builder/server-builder.d.ts +53 -0
- package/build/server/builder/server-builder.d.ts.map +1 -0
- package/build/server/builder/server-builder.js +132 -0
- package/build/server/builder/server-builder.js.map +1 -0
- package/build/server/builder/types.d.ts +93 -0
- package/build/server/builder/types.d.ts.map +1 -0
- package/build/server/builder/types.js +25 -0
- package/build/server/builder/types.js.map +1 -0
- package/build/server/builder/validation.d.ts +36 -0
- package/build/server/builder/validation.d.ts.map +1 -0
- package/build/server/builder/validation.js +44 -0
- package/build/server/builder/validation.js.map +1 -0
- package/build/server/create-server.d.ts +57 -0
- package/build/server/create-server.d.ts.map +1 -0
- package/build/server/create-server.js +104 -0
- package/build/server/create-server.js.map +1 -0
- package/build/server/http/express-app.d.ts +103 -0
- package/build/server/http/express-app.d.ts.map +1 -0
- package/build/server/http/express-app.js +391 -0
- package/build/server/http/express-app.js.map +1 -0
- package/build/server/http/http-server.d.ts +67 -0
- package/build/server/http/http-server.d.ts.map +1 -0
- package/build/server/http/http-server.js +188 -0
- package/build/server/http/http-server.js.map +1 -0
- package/build/server/http/http-transport.d.ts +33 -0
- package/build/server/http/http-transport.d.ts.map +1 -0
- package/build/server/http/http-transport.js +84 -0
- package/build/server/http/http-transport.js.map +1 -0
- package/build/server/http/index.d.ts +15 -0
- package/build/server/http/index.d.ts.map +1 -0
- package/build/server/http/index.js +11 -0
- package/build/server/http/index.js.map +1 -0
- package/build/server/index.d.ts +25 -0
- package/build/server/index.d.ts.map +1 -0
- package/build/server/index.js +41 -0
- package/build/server/index.js.map +1 -0
- package/build/server/lifecycle.d.ts +114 -0
- package/build/server/lifecycle.d.ts.map +1 -0
- package/build/server/lifecycle.js +30 -0
- package/build/server/lifecycle.js.map +1 -0
- package/build/server/middleware/bearer-auth.d.ts +43 -0
- package/build/server/middleware/bearer-auth.d.ts.map +1 -0
- package/build/server/middleware/bearer-auth.js +75 -0
- package/build/server/middleware/bearer-auth.js.map +1 -0
- package/build/server/middleware/custom-header-auth.d.ts +40 -0
- package/build/server/middleware/custom-header-auth.d.ts.map +1 -0
- package/build/server/middleware/custom-header-auth.js +90 -0
- package/build/server/middleware/custom-header-auth.js.map +1 -0
- package/build/server/middleware/dns-rebinding.d.ts +25 -0
- package/build/server/middleware/dns-rebinding.d.ts.map +1 -0
- package/build/server/middleware/dns-rebinding.js +94 -0
- package/build/server/middleware/dns-rebinding.js.map +1 -0
- package/build/server/middleware/index.d.ts +69 -0
- package/build/server/middleware/index.d.ts.map +1 -0
- package/build/server/middleware/index.js +68 -0
- package/build/server/middleware/index.js.map +1 -0
- package/build/server/middleware/logging.d.ts +21 -0
- package/build/server/middleware/logging.d.ts.map +1 -0
- package/build/server/middleware/logging.js +36 -0
- package/build/server/middleware/logging.js.map +1 -0
- package/build/server/middleware/oauth-router.d.ts +50 -0
- package/build/server/middleware/oauth-router.d.ts.map +1 -0
- package/build/server/middleware/oauth-router.js +53 -0
- package/build/server/middleware/oauth-router.js.map +1 -0
- package/build/server/middleware/protocol-version.d.ts +13 -0
- package/build/server/middleware/protocol-version.d.ts.map +1 -0
- package/build/server/middleware/protocol-version.js +48 -0
- package/build/server/middleware/protocol-version.js.map +1 -0
- package/build/server/middleware/rate-limit.d.ts +47 -0
- package/build/server/middleware/rate-limit.d.ts.map +1 -0
- package/build/server/middleware/rate-limit.js +109 -0
- package/build/server/middleware/rate-limit.js.map +1 -0
- package/build/server/middleware/trust-proxy.d.ts +37 -0
- package/build/server/middleware/trust-proxy.d.ts.map +1 -0
- package/build/server/middleware/trust-proxy.js +154 -0
- package/build/server/middleware/trust-proxy.js.map +1 -0
- package/build/server/option-overrides.d.ts +25 -0
- package/build/server/option-overrides.d.ts.map +1 -0
- package/build/server/option-overrides.js +85 -0
- package/build/server/option-overrides.js.map +1 -0
- package/build/server/routes/health.d.ts +87 -0
- package/build/server/routes/health.d.ts.map +1 -0
- package/build/server/routes/health.js +183 -0
- package/build/server/routes/health.js.map +1 -0
- package/build/server/routes/index.d.ts +16 -0
- package/build/server/routes/index.d.ts.map +1 -0
- package/build/server/routes/index.js +18 -0
- package/build/server/routes/index.js.map +1 -0
- package/build/server/routes/metrics.d.ts +40 -0
- package/build/server/routes/metrics.d.ts.map +1 -0
- package/build/server/routes/metrics.js +81 -0
- package/build/server/routes/metrics.js.map +1 -0
- package/build/server/routes/oauth-router.d.ts +50 -0
- package/build/server/routes/oauth-router.d.ts.map +1 -0
- package/build/server/routes/oauth-router.js +53 -0
- package/build/server/routes/oauth-router.js.map +1 -0
- package/build/server/routes/readiness-status.d.ts +25 -0
- package/build/server/routes/readiness-status.d.ts.map +1 -0
- package/build/server/routes/readiness-status.js +27 -0
- package/build/server/routes/readiness-status.js.map +1 -0
- package/build/server/routes/sse-router.d.ts +43 -0
- package/build/server/routes/sse-router.d.ts.map +1 -0
- package/build/server/routes/sse-router.js +92 -0
- package/build/server/routes/sse-router.js.map +1 -0
- package/build/server/routes/streamable-http-router.d.ts +36 -0
- package/build/server/routes/streamable-http-router.d.ts.map +1 -0
- package/build/server/routes/streamable-http-router.js +59 -0
- package/build/server/routes/streamable-http-router.js.map +1 -0
- package/build/server/server-instance.d.ts +185 -0
- package/build/server/server-instance.d.ts.map +1 -0
- package/build/server/server-instance.js +615 -0
- package/build/server/server-instance.js.map +1 -0
- package/build/server/server-options.d.ts +411 -0
- package/build/server/server-options.d.ts.map +1 -0
- package/build/server/server-options.js +17 -0
- package/build/server/server-options.js.map +1 -0
- package/build/server/session/in-memory-store.d.ts +128 -0
- package/build/server/session/in-memory-store.d.ts.map +1 -0
- package/build/server/session/in-memory-store.js +312 -0
- package/build/server/session/in-memory-store.js.map +1 -0
- package/build/server/session/index.d.ts +43 -0
- package/build/server/session/index.d.ts.map +1 -0
- package/build/server/session/index.js +47 -0
- package/build/server/session/index.js.map +1 -0
- package/build/server/session/mcp-session.d.ts +210 -0
- package/build/server/session/mcp-session.d.ts.map +1 -0
- package/build/server/session/mcp-session.js +428 -0
- package/build/server/session/mcp-session.js.map +1 -0
- package/build/server/session/session-factory.d.ts +119 -0
- package/build/server/session/session-factory.d.ts.map +1 -0
- package/build/server/session/session-factory.js +131 -0
- package/build/server/session/session-factory.js.map +1 -0
- package/build/server/session/session-housekeeper.d.ts +100 -0
- package/build/server/session/session-housekeeper.d.ts.map +1 -0
- package/build/server/session/session-housekeeper.js +217 -0
- package/build/server/session/session-housekeeper.js.map +1 -0
- package/build/server/session/session-manager.d.ts +227 -0
- package/build/server/session/session-manager.d.ts.map +1 -0
- package/build/server/session/session-manager.js +282 -0
- package/build/server/session/session-manager.js.map +1 -0
- package/build/server/session/session-store.d.ts +95 -0
- package/build/server/session/session-store.d.ts.map +1 -0
- package/build/server/session/session-store.js +13 -0
- package/build/server/session/session-store.js.map +1 -0
- package/build/server/session/session.d.ts +132 -0
- package/build/server/session/session.d.ts.map +1 -0
- package/build/server/session/session.js +61 -0
- package/build/server/session/session.js.map +1 -0
- package/build/server/transport/constants.d.ts +85 -0
- package/build/server/transport/constants.d.ts.map +1 -0
- package/build/server/transport/constants.js +103 -0
- package/build/server/transport/constants.js.map +1 -0
- package/build/server/transport/index.d.ts +21 -0
- package/build/server/transport/index.d.ts.map +1 -0
- package/build/server/transport/index.js +28 -0
- package/build/server/transport/index.js.map +1 -0
- package/build/server/transport/sse/handler.d.ts +46 -0
- package/build/server/transport/sse/handler.d.ts.map +1 -0
- package/build/server/transport/sse/handler.js +189 -0
- package/build/server/transport/sse/handler.js.map +1 -0
- package/build/server/transport/sse/index.d.ts +15 -0
- package/build/server/transport/sse/index.d.ts.map +1 -0
- package/build/server/transport/sse/index.js +14 -0
- package/build/server/transport/sse/index.js.map +1 -0
- package/build/server/transport/sse/transport.d.ts +94 -0
- package/build/server/transport/sse/transport.d.ts.map +1 -0
- package/build/server/transport/sse/transport.js +175 -0
- package/build/server/transport/sse/transport.js.map +1 -0
- package/build/server/transport/stdio-transport.d.ts +23 -0
- package/build/server/transport/stdio-transport.d.ts.map +1 -0
- package/build/server/transport/stdio-transport.js +59 -0
- package/build/server/transport/stdio-transport.js.map +1 -0
- package/build/server/transport/streamable-http/index.d.ts +9 -0
- package/build/server/transport/streamable-http/index.d.ts.map +1 -0
- package/build/server/transport/streamable-http/index.js +9 -0
- package/build/server/transport/streamable-http/index.js.map +1 -0
- package/build/server/transport/streamable-http/stateful-handler.d.ts +41 -0
- package/build/server/transport/streamable-http/stateful-handler.d.ts.map +1 -0
- package/build/server/transport/streamable-http/stateful-handler.js +264 -0
- package/build/server/transport/streamable-http/stateful-handler.js.map +1 -0
- package/build/server/transport/streamable-http/stateless-handler.d.ts +28 -0
- package/build/server/transport/streamable-http/stateless-handler.d.ts.map +1 -0
- package/build/server/transport/streamable-http/stateless-handler.js +81 -0
- package/build/server/transport/streamable-http/stateless-handler.js.map +1 -0
- package/build/server/transport/streamable-http/transport.d.ts +110 -0
- package/build/server/transport/streamable-http/transport.d.ts.map +1 -0
- package/build/server/transport/streamable-http/transport.js +118 -0
- package/build/server/transport/streamable-http/transport.js.map +1 -0
- package/build/server/transport/transport-context.d.ts +67 -0
- package/build/server/transport/transport-context.d.ts.map +1 -0
- package/build/server/transport/transport-context.js +38 -0
- package/build/server/transport/transport-context.js.map +1 -0
- package/build/server/transport/types.d.ts +56 -0
- package/build/server/transport/types.d.ts.map +1 -0
- package/build/server/transport/types.js +11 -0
- package/build/server/transport/types.js.map +1 -0
- package/build/server/transport-options.d.ts +248 -0
- package/build/server/transport-options.d.ts.map +1 -0
- package/build/server/transport-options.js +18 -0
- package/build/server/transport-options.js.map +1 -0
- package/build/server/types.d.ts +172 -0
- package/build/server/types.d.ts.map +1 -0
- package/build/server/types.js +9 -0
- package/build/server/types.js.map +1 -0
- package/build/telemetry/connection-telemetry-bridge.d.ts +30 -0
- package/build/telemetry/connection-telemetry-bridge.d.ts.map +1 -0
- package/build/telemetry/connection-telemetry-bridge.js +54 -0
- package/build/telemetry/connection-telemetry-bridge.js.map +1 -0
- package/build/telemetry/core/config.d.ts +38 -0
- package/build/telemetry/core/config.d.ts.map +1 -0
- package/build/telemetry/core/config.js +54 -0
- package/build/telemetry/core/config.js.map +1 -0
- package/build/telemetry/core/constants.d.ts +183 -0
- package/build/telemetry/core/constants.d.ts.map +1 -0
- package/build/telemetry/core/constants.js +207 -0
- package/build/telemetry/core/constants.js.map +1 -0
- package/build/telemetry/core/diag-logger.d.ts +35 -0
- package/build/telemetry/core/diag-logger.d.ts.map +1 -0
- package/build/telemetry/core/diag-logger.js +54 -0
- package/build/telemetry/core/diag-logger.js.map +1 -0
- package/build/telemetry/core/index.d.ts +12 -0
- package/build/telemetry/core/index.d.ts.map +1 -0
- package/build/telemetry/core/index.js +32 -0
- package/build/telemetry/core/index.js.map +1 -0
- package/build/telemetry/core/types.d.ts +106 -0
- package/build/telemetry/core/types.d.ts.map +1 -0
- package/build/telemetry/core/types.js +10 -0
- package/build/telemetry/core/types.js.map +1 -0
- package/build/telemetry/index.d.ts +59 -0
- package/build/telemetry/index.d.ts.map +1 -0
- package/build/telemetry/index.js +79 -0
- package/build/telemetry/index.js.map +1 -0
- package/build/telemetry/metrics.d.ts +127 -0
- package/build/telemetry/metrics.d.ts.map +1 -0
- package/build/telemetry/metrics.js +337 -0
- package/build/telemetry/metrics.js.map +1 -0
- package/build/telemetry/sdk.d.ts +110 -0
- package/build/telemetry/sdk.d.ts.map +1 -0
- package/build/telemetry/sdk.js +547 -0
- package/build/telemetry/sdk.js.map +1 -0
- package/build/telemetry/tracing.d.ts +78 -0
- package/build/telemetry/tracing.d.ts.map +1 -0
- package/build/telemetry/tracing.js +257 -0
- package/build/telemetry/tracing.js.map +1 -0
- package/build/utils/env-helpers.d.ts +46 -0
- package/build/utils/env-helpers.d.ts.map +1 -0
- package/build/utils/env-helpers.js +54 -0
- package/build/utils/env-helpers.js.map +1 -0
- package/build/utils/index.d.ts +14 -0
- package/build/utils/index.d.ts.map +1 -0
- package/build/utils/index.js +19 -0
- package/build/utils/index.js.map +1 -0
- package/build/utils/sensitive-keys.d.ts +48 -0
- package/build/utils/sensitive-keys.d.ts.map +1 -0
- package/build/utils/sensitive-keys.js +131 -0
- package/build/utils/sensitive-keys.js.map +1 -0
- package/build/utils/string-helpers.d.ts +126 -0
- package/build/utils/string-helpers.d.ts.map +1 -0
- package/build/utils/string-helpers.js +189 -0
- package/build/utils/string-helpers.js.map +1 -0
- package/build/utils/validation.d.ts +84 -0
- package/build/utils/validation.d.ts.map +1 -0
- package/build/utils/validation.js +111 -0
- package/build/utils/validation.js.map +1 -0
- package/build/utils/zod-helpers.d.ts +92 -0
- package/build/utils/zod-helpers.d.ts.map +1 -0
- package/build/utils/zod-helpers.js +120 -0
- package/build/utils/zod-helpers.js.map +1 -0
- package/package.json +133 -0
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Context Management Module
|
|
3
|
+
*
|
|
4
|
+
* Provides robust context management for correlated logging using AsyncLocalStorage.
|
|
5
|
+
* Enables automatic log enrichment with request/session context across async boundaries.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Automatic context propagation through async operations
|
|
9
|
+
* - Hierarchical context support (parent/child relationships)
|
|
10
|
+
* - Thread-safe context isolation (depth tracked per-context, not globally)
|
|
11
|
+
* - Memory-efficient context management
|
|
12
|
+
*
|
|
13
|
+
* @module logger/core/context
|
|
14
|
+
*/
|
|
15
|
+
import { AsyncLocalStorage } from "async_hooks";
|
|
16
|
+
import { MAX_CONTEXT_DEPTH, COMPONENT_SEPARATOR } from "./constants.js";
|
|
17
|
+
// ============================================================================
|
|
18
|
+
// Context Storage
|
|
19
|
+
// ============================================================================
|
|
20
|
+
/**
|
|
21
|
+
* AsyncLocalStorage instance for maintaining logging context.
|
|
22
|
+
* This allows context to flow through async operations automatically
|
|
23
|
+
* without explicit passing of context objects.
|
|
24
|
+
*
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
const contextStorage = new AsyncLocalStorage();
|
|
28
|
+
// ============================================================================
|
|
29
|
+
// Core Context Functions
|
|
30
|
+
// ============================================================================
|
|
31
|
+
/**
|
|
32
|
+
* Run a function within a logging context.
|
|
33
|
+
*
|
|
34
|
+
* All logs within the function (and any async operations it spawns)
|
|
35
|
+
* will automatically include the provided context. This is the primary
|
|
36
|
+
* way to establish context for a request or operation.
|
|
37
|
+
*
|
|
38
|
+
* Thread-safety: Depth is tracked within the context object itself,
|
|
39
|
+
* making it safe for concurrent operations across different async contexts.
|
|
40
|
+
*
|
|
41
|
+
* @param context - The context to use for logging
|
|
42
|
+
* @param fn - The function to execute within the context
|
|
43
|
+
* @returns The result of the function
|
|
44
|
+
* @throws Error if maximum context depth is exceeded
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* const result = runWithContext(
|
|
49
|
+
* { requestId: 'req-123', sessionId: 'sess-456' },
|
|
50
|
+
* async () => {
|
|
51
|
+
* logger.info('Processing request'); // Includes requestId and sessionId
|
|
52
|
+
* return await processRequest();
|
|
53
|
+
* }
|
|
54
|
+
* );
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export function runWithContext(context, fn) {
|
|
58
|
+
// Get current depth from parent context (if any) or start at 0
|
|
59
|
+
const parentContext = contextStorage.getStore();
|
|
60
|
+
const parentDepth = parentContext?._depth ?? 0;
|
|
61
|
+
const newDepth = parentDepth + 1;
|
|
62
|
+
if (newDepth > MAX_CONTEXT_DEPTH) {
|
|
63
|
+
throw new Error(`Maximum context depth (${MAX_CONTEXT_DEPTH}) exceeded. Possible infinite recursion.`);
|
|
64
|
+
}
|
|
65
|
+
// Create new context with incremented depth (thread-safe: each context has its own depth)
|
|
66
|
+
const contextWithDepth = {
|
|
67
|
+
...context,
|
|
68
|
+
_depth: newDepth,
|
|
69
|
+
};
|
|
70
|
+
return contextStorage.run(contextWithDepth, fn);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Get the current logging context.
|
|
74
|
+
*
|
|
75
|
+
* Returns undefined if called outside of a context established by `runWithContext`.
|
|
76
|
+
*
|
|
77
|
+
* @returns The current context or undefined
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```typescript
|
|
81
|
+
* const context = getContext();
|
|
82
|
+
* if (context?.requestId) {
|
|
83
|
+
* console.log(`Request: ${context.requestId}`);
|
|
84
|
+
* }
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
export function getContext() {
|
|
88
|
+
return contextStorage.getStore();
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Get a specific value from the current context.
|
|
92
|
+
*
|
|
93
|
+
* Convenience function for accessing individual context properties
|
|
94
|
+
* without retrieving the entire context object.
|
|
95
|
+
*
|
|
96
|
+
* @param key - The context property to retrieve
|
|
97
|
+
* @returns The value or undefined if not in context or key doesn't exist
|
|
98
|
+
*
|
|
99
|
+
* @example
|
|
100
|
+
* ```typescript
|
|
101
|
+
* const requestId = getContextValue('requestId');
|
|
102
|
+
* const component = getContextValue('component') ?? 'unknown';
|
|
103
|
+
* ```
|
|
104
|
+
*/
|
|
105
|
+
export function getContextValue(key) {
|
|
106
|
+
return contextStorage.getStore()?.[key];
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Check if currently running within a logging context.
|
|
110
|
+
*
|
|
111
|
+
* @returns true if inside a context established by `runWithContext`
|
|
112
|
+
*
|
|
113
|
+
* @example
|
|
114
|
+
* ```typescript
|
|
115
|
+
* if (hasContext()) {
|
|
116
|
+
* // Safe to access context values
|
|
117
|
+
* }
|
|
118
|
+
* ```
|
|
119
|
+
*/
|
|
120
|
+
export function hasContext() {
|
|
121
|
+
return contextStorage.getStore() !== undefined;
|
|
122
|
+
}
|
|
123
|
+
// ============================================================================
|
|
124
|
+
// Context Manipulation Functions
|
|
125
|
+
// ============================================================================
|
|
126
|
+
/**
|
|
127
|
+
* Create a new context by merging additional values with the current context.
|
|
128
|
+
*
|
|
129
|
+
* This is useful for adding context without losing existing values.
|
|
130
|
+
* If called outside a context, returns only the additional context.
|
|
131
|
+
*
|
|
132
|
+
* @param additionalContext - Context values to add/override
|
|
133
|
+
* @returns A new merged context (does not modify current context)
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```typescript
|
|
137
|
+
* const newContext = mergeContext({ component: 'api', traceId: 'trace-123' });
|
|
138
|
+
* runWithContext(newContext, () => {
|
|
139
|
+
* // Has both original context + new values
|
|
140
|
+
* });
|
|
141
|
+
* ```
|
|
142
|
+
*/
|
|
143
|
+
export function mergeContext(additionalContext) {
|
|
144
|
+
const current = contextStorage.getStore() ?? {};
|
|
145
|
+
return { ...current, ...additionalContext };
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Create a child context that inherits from the current context.
|
|
149
|
+
*
|
|
150
|
+
* The child context inherits all parent values but can override specific ones.
|
|
151
|
+
* Component names are automatically concatenated with a separator.
|
|
152
|
+
*
|
|
153
|
+
* @param childContext - Context values for the child
|
|
154
|
+
* @returns A new child context
|
|
155
|
+
*
|
|
156
|
+
* @example
|
|
157
|
+
* ```typescript
|
|
158
|
+
* // Parent has component: 'api'
|
|
159
|
+
* const childCtx = createChildContext({ component: 'handlers' });
|
|
160
|
+
* // childCtx.component = 'api.handlers'
|
|
161
|
+
* ```
|
|
162
|
+
*/
|
|
163
|
+
export function createChildContext(childContext) {
|
|
164
|
+
const parent = contextStorage.getStore() ?? {};
|
|
165
|
+
// Merge component names if both exist
|
|
166
|
+
let component;
|
|
167
|
+
if (parent.component && childContext.component) {
|
|
168
|
+
component = `${parent.component}${COMPONENT_SEPARATOR}${childContext.component}`;
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
component = childContext.component ?? parent.component;
|
|
172
|
+
}
|
|
173
|
+
return {
|
|
174
|
+
...parent,
|
|
175
|
+
...childContext,
|
|
176
|
+
...(component !== undefined && { component }),
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Execute a function with an extended context (adds to current context).
|
|
181
|
+
*
|
|
182
|
+
* Combines `mergeContext` and `runWithContext` for convenience.
|
|
183
|
+
* This is the preferred way to add context for a sub-operation.
|
|
184
|
+
*
|
|
185
|
+
* @param additionalContext - Context values to add
|
|
186
|
+
* @param fn - The function to execute
|
|
187
|
+
* @returns The result of the function
|
|
188
|
+
*
|
|
189
|
+
* @example
|
|
190
|
+
* ```typescript
|
|
191
|
+
* await withExtendedContext({ operation: 'create' }, async () => {
|
|
192
|
+
* logger.info('Creating resource'); // Includes operation: 'create'
|
|
193
|
+
* return await createResource();
|
|
194
|
+
* });
|
|
195
|
+
* ```
|
|
196
|
+
*/
|
|
197
|
+
export function withExtendedContext(additionalContext, fn) {
|
|
198
|
+
const merged = mergeContext(additionalContext);
|
|
199
|
+
return runWithContext(merged, fn);
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Execute a function with a child context.
|
|
203
|
+
*
|
|
204
|
+
* Combines `createChildContext` and `runWithContext` for convenience.
|
|
205
|
+
* Useful for creating hierarchical logging scopes.
|
|
206
|
+
*
|
|
207
|
+
* @param childContext - Context values for the child scope
|
|
208
|
+
* @param fn - The function to execute
|
|
209
|
+
* @returns The result of the function
|
|
210
|
+
*
|
|
211
|
+
* @example
|
|
212
|
+
* ```typescript
|
|
213
|
+
* await withChildContext({ component: 'validation' }, async () => {
|
|
214
|
+
* logger.info('Validating input'); // component: 'api.validation'
|
|
215
|
+
* return await validateInput();
|
|
216
|
+
* });
|
|
217
|
+
* ```
|
|
218
|
+
*/
|
|
219
|
+
export function withChildContext(childContext, fn) {
|
|
220
|
+
const child = createChildContext(childContext);
|
|
221
|
+
return runWithContext(child, fn);
|
|
222
|
+
}
|
|
223
|
+
// ============================================================================
|
|
224
|
+
// Context Utilities
|
|
225
|
+
// ============================================================================
|
|
226
|
+
/**
|
|
227
|
+
* Get the current context depth.
|
|
228
|
+
*
|
|
229
|
+
* Thread-safe: reads depth from the current async context.
|
|
230
|
+
* Returns 0 if called outside of any context.
|
|
231
|
+
*
|
|
232
|
+
* @returns The current context nesting depth
|
|
233
|
+
*/
|
|
234
|
+
export function getContextDepth() {
|
|
235
|
+
return contextStorage.getStore()?._depth ?? 0;
|
|
236
|
+
}
|
|
237
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/logger/core/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Error Classes Module
|
|
3
|
+
*
|
|
4
|
+
* Provides typed error classes for the logging system. Standalone
|
|
5
|
+
* implementation with no dependencies on framework error classes
|
|
6
|
+
* or external packages — the logger module must remain dependency-free.
|
|
7
|
+
*
|
|
8
|
+
* @module logger/core/errors
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Logger-specific error codes.
|
|
12
|
+
*/
|
|
13
|
+
export declare const LoggerErrorCode: {
|
|
14
|
+
/** Generic logger error */
|
|
15
|
+
readonly LOGGER_ERROR: "LOGGER_ERROR";
|
|
16
|
+
/** Logger resource initialization failed */
|
|
17
|
+
readonly LOGGER_INIT_ERROR: "LOGGER_INIT_ERROR";
|
|
18
|
+
/** Context depth exceeded */
|
|
19
|
+
readonly CONTEXT_DEPTH_EXCEEDED: "CONTEXT_DEPTH_EXCEEDED";
|
|
20
|
+
/** Writer operation failed */
|
|
21
|
+
readonly WRITER_ERROR: "WRITER_ERROR";
|
|
22
|
+
/** Formatter operation failed */
|
|
23
|
+
readonly FORMATTER_ERROR: "FORMATTER_ERROR";
|
|
24
|
+
/** Scrubbing operation failed */
|
|
25
|
+
readonly SCRUBBER_ERROR: "SCRUBBER_ERROR";
|
|
26
|
+
};
|
|
27
|
+
export type LoggerErrorCodeType = (typeof LoggerErrorCode)[keyof typeof LoggerErrorCode];
|
|
28
|
+
/** Options accepted by all logger error constructors. */
|
|
29
|
+
interface LoggerErrorOptions {
|
|
30
|
+
code?: LoggerErrorCodeType | undefined;
|
|
31
|
+
cause?: Error | undefined;
|
|
32
|
+
context?: Record<string, unknown> | undefined;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Base error class for all logger-related errors.
|
|
36
|
+
*
|
|
37
|
+
* Standalone implementation extending native `Error` — no dependency on
|
|
38
|
+
* the framework's `AppError` hierarchy. This ensures the logger module
|
|
39
|
+
* has zero cross-module imports.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* throw new LoggerError('Failed to initialize logger', {
|
|
44
|
+
* code: LoggerErrorCode.LOGGER_INIT_ERROR,
|
|
45
|
+
* cause: originalError,
|
|
46
|
+
* context: { format: 'json' }
|
|
47
|
+
* });
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export declare class LoggerError extends Error {
|
|
51
|
+
/** Logger-specific error code. */
|
|
52
|
+
readonly code: LoggerErrorCodeType;
|
|
53
|
+
/** Additional context for debugging. */
|
|
54
|
+
readonly context?: Record<string, unknown> | undefined;
|
|
55
|
+
readonly cause?: Error | undefined;
|
|
56
|
+
constructor(message: string, options?: LoggerErrorOptions);
|
|
57
|
+
/**
|
|
58
|
+
* Check if an error is a LoggerError instance.
|
|
59
|
+
*/
|
|
60
|
+
static isLoggerError(error: unknown): error is LoggerError;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Error thrown when logger resources fail to initialize.
|
|
64
|
+
*/
|
|
65
|
+
export declare class LoggerInitError extends LoggerError {
|
|
66
|
+
constructor(message: string, options?: {
|
|
67
|
+
cause?: Error | undefined;
|
|
68
|
+
context?: Record<string, unknown> | undefined;
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Error thrown when a log writer operation fails.
|
|
73
|
+
*/
|
|
74
|
+
export declare class WriterError extends LoggerError {
|
|
75
|
+
readonly writerName: string;
|
|
76
|
+
constructor(writerName: string, message: string, options?: {
|
|
77
|
+
cause?: Error | undefined;
|
|
78
|
+
context?: Record<string, unknown> | undefined;
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Error thrown when log formatting fails.
|
|
83
|
+
*/
|
|
84
|
+
export declare class FormatterError extends LoggerError {
|
|
85
|
+
readonly formatterName: string;
|
|
86
|
+
constructor(formatterName: string, message: string, options?: {
|
|
87
|
+
cause?: Error | undefined;
|
|
88
|
+
context?: Record<string, unknown> | undefined;
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Error thrown when secret scrubbing fails.
|
|
93
|
+
*/
|
|
94
|
+
export declare class ScrubberError extends LoggerError {
|
|
95
|
+
constructor(message: string, options?: {
|
|
96
|
+
cause?: Error | undefined;
|
|
97
|
+
context?: Record<string, unknown> | undefined;
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
export {};
|
|
101
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/logger/core/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;GAEG;AACH,eAAO,MAAM,eAAe;IAC1B,2BAA2B;;IAE3B,4CAA4C;;IAE5C,6BAA6B;;IAE7B,8BAA8B;;IAE9B,iCAAiC;;IAEjC,iCAAiC;;CAEzB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEzF,yDAAyD;AACzD,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACvC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAC/C;AAMD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,WAAY,SAAQ,KAAK;IACpC,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IAEnC,wCAAwC;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAEvD,SAAkB,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;gBAEhC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB;IAQ7D;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW;CAG3D;AAMD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;gBAE5C,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KAC1C;CAST;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAW;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAG1B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KAC1C;CAUT;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAG7B,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KAC1C;CAUT;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;gBAE1C,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KAC1C;CAST"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Error Classes Module
|
|
3
|
+
*
|
|
4
|
+
* Provides typed error classes for the logging system. Standalone
|
|
5
|
+
* implementation with no dependencies on framework error classes
|
|
6
|
+
* or external packages — the logger module must remain dependency-free.
|
|
7
|
+
*
|
|
8
|
+
* @module logger/core/errors
|
|
9
|
+
*/
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// Logger Error Codes
|
|
12
|
+
// ============================================================================
|
|
13
|
+
/**
|
|
14
|
+
* Logger-specific error codes.
|
|
15
|
+
*/
|
|
16
|
+
export const LoggerErrorCode = {
|
|
17
|
+
/** Generic logger error */
|
|
18
|
+
LOGGER_ERROR: "LOGGER_ERROR",
|
|
19
|
+
/** Logger resource initialization failed */
|
|
20
|
+
LOGGER_INIT_ERROR: "LOGGER_INIT_ERROR",
|
|
21
|
+
/** Context depth exceeded */
|
|
22
|
+
CONTEXT_DEPTH_EXCEEDED: "CONTEXT_DEPTH_EXCEEDED",
|
|
23
|
+
/** Writer operation failed */
|
|
24
|
+
WRITER_ERROR: "WRITER_ERROR",
|
|
25
|
+
/** Formatter operation failed */
|
|
26
|
+
FORMATTER_ERROR: "FORMATTER_ERROR",
|
|
27
|
+
/** Scrubbing operation failed */
|
|
28
|
+
SCRUBBER_ERROR: "SCRUBBER_ERROR",
|
|
29
|
+
};
|
|
30
|
+
// ============================================================================
|
|
31
|
+
// Base Logger Error
|
|
32
|
+
// ============================================================================
|
|
33
|
+
/**
|
|
34
|
+
* Base error class for all logger-related errors.
|
|
35
|
+
*
|
|
36
|
+
* Standalone implementation extending native `Error` — no dependency on
|
|
37
|
+
* the framework's `AppError` hierarchy. This ensures the logger module
|
|
38
|
+
* has zero cross-module imports.
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```typescript
|
|
42
|
+
* throw new LoggerError('Failed to initialize logger', {
|
|
43
|
+
* code: LoggerErrorCode.LOGGER_INIT_ERROR,
|
|
44
|
+
* cause: originalError,
|
|
45
|
+
* context: { format: 'json' }
|
|
46
|
+
* });
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export class LoggerError extends Error {
|
|
50
|
+
/** Logger-specific error code. */
|
|
51
|
+
code;
|
|
52
|
+
/** Additional context for debugging. */
|
|
53
|
+
context;
|
|
54
|
+
cause;
|
|
55
|
+
constructor(message, options = {}) {
|
|
56
|
+
super(message);
|
|
57
|
+
this.name = "LoggerError";
|
|
58
|
+
this.code = options.code ?? LoggerErrorCode.LOGGER_ERROR;
|
|
59
|
+
this.cause = options.cause;
|
|
60
|
+
this.context = options.context;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Check if an error is a LoggerError instance.
|
|
64
|
+
*/
|
|
65
|
+
static isLoggerError(error) {
|
|
66
|
+
return error instanceof LoggerError;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
// ============================================================================
|
|
70
|
+
// Specialized Logger Errors
|
|
71
|
+
// ============================================================================
|
|
72
|
+
/**
|
|
73
|
+
* Error thrown when logger resources fail to initialize.
|
|
74
|
+
*/
|
|
75
|
+
export class LoggerInitError extends LoggerError {
|
|
76
|
+
constructor(message, options = {}) {
|
|
77
|
+
super(message, {
|
|
78
|
+
code: LoggerErrorCode.LOGGER_INIT_ERROR,
|
|
79
|
+
cause: options.cause,
|
|
80
|
+
context: options.context,
|
|
81
|
+
});
|
|
82
|
+
this.name = "LoggerInitError";
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Error thrown when a log writer operation fails.
|
|
87
|
+
*/
|
|
88
|
+
export class WriterError extends LoggerError {
|
|
89
|
+
writerName;
|
|
90
|
+
constructor(writerName, message, options = {}) {
|
|
91
|
+
super(message, {
|
|
92
|
+
code: LoggerErrorCode.WRITER_ERROR,
|
|
93
|
+
cause: options.cause,
|
|
94
|
+
context: { ...options.context, writerName },
|
|
95
|
+
});
|
|
96
|
+
this.name = "WriterError";
|
|
97
|
+
this.writerName = writerName;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Error thrown when log formatting fails.
|
|
102
|
+
*/
|
|
103
|
+
export class FormatterError extends LoggerError {
|
|
104
|
+
formatterName;
|
|
105
|
+
constructor(formatterName, message, options = {}) {
|
|
106
|
+
super(message, {
|
|
107
|
+
code: LoggerErrorCode.FORMATTER_ERROR,
|
|
108
|
+
cause: options.cause,
|
|
109
|
+
context: { ...options.context, formatterName },
|
|
110
|
+
});
|
|
111
|
+
this.name = "FormatterError";
|
|
112
|
+
this.formatterName = formatterName;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Error thrown when secret scrubbing fails.
|
|
117
|
+
*/
|
|
118
|
+
export class ScrubberError extends LoggerError {
|
|
119
|
+
constructor(message, options = {}) {
|
|
120
|
+
super(message, {
|
|
121
|
+
code: LoggerErrorCode.SCRUBBER_ERROR,
|
|
122
|
+
cause: options.cause,
|
|
123
|
+
context: options.context,
|
|
124
|
+
});
|
|
125
|
+
this.name = "ScrubberError";
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/logger/core/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Formatting Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides formatting functions for log output, such as truncating
|
|
5
|
+
* session IDs for readability and security.
|
|
6
|
+
*
|
|
7
|
+
* @module logger/core/format
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Formats a session ID for logging purposes.
|
|
11
|
+
*
|
|
12
|
+
* Truncates the session ID to keep logs readable while providing
|
|
13
|
+
* enough uniqueness for debugging. Also avoids exposing full
|
|
14
|
+
* session tokens in logs for security.
|
|
15
|
+
*
|
|
16
|
+
* @param sessionId - The full session ID
|
|
17
|
+
* @returns Truncated session ID (first 8 chars by default)
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* formatSessionId('a1b2c3d4-e5f6-7890-abcd-ef1234567890')
|
|
22
|
+
* // Returns: 'a1b2c3d4'
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare function formatSessionId(sessionId: string): string;
|
|
26
|
+
/**
|
|
27
|
+
* Formats a request ID for logging purposes.
|
|
28
|
+
*
|
|
29
|
+
* @param requestId - The full request ID
|
|
30
|
+
* @returns Truncated request ID
|
|
31
|
+
*/
|
|
32
|
+
export declare function formatRequestId(requestId: string): string;
|
|
33
|
+
/**
|
|
34
|
+
* Formats a trace ID for logging purposes.
|
|
35
|
+
*
|
|
36
|
+
* @param traceId - The full trace ID
|
|
37
|
+
* @returns Truncated trace ID
|
|
38
|
+
*/
|
|
39
|
+
export declare function formatTraceId(traceId: string): string;
|
|
40
|
+
//# sourceMappingURL=format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/logger/core/format.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Formatting Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides formatting functions for log output, such as truncating
|
|
5
|
+
* session IDs for readability and security.
|
|
6
|
+
*
|
|
7
|
+
* @module logger/core/format
|
|
8
|
+
*/
|
|
9
|
+
import { truncateId } from "../../utils/string-helpers.js";
|
|
10
|
+
/**
|
|
11
|
+
* Formats a session ID for logging purposes.
|
|
12
|
+
*
|
|
13
|
+
* Truncates the session ID to keep logs readable while providing
|
|
14
|
+
* enough uniqueness for debugging. Also avoids exposing full
|
|
15
|
+
* session tokens in logs for security.
|
|
16
|
+
*
|
|
17
|
+
* @param sessionId - The full session ID
|
|
18
|
+
* @returns Truncated session ID (first 8 chars by default)
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* formatSessionId('a1b2c3d4-e5f6-7890-abcd-ef1234567890')
|
|
23
|
+
* // Returns: 'a1b2c3d4'
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export function formatSessionId(sessionId) {
|
|
27
|
+
return truncateId(sessionId);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Formats a request ID for logging purposes.
|
|
31
|
+
*
|
|
32
|
+
* @param requestId - The full request ID
|
|
33
|
+
* @returns Truncated request ID
|
|
34
|
+
*/
|
|
35
|
+
export function formatRequestId(requestId) {
|
|
36
|
+
return truncateId(requestId);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Formats a trace ID for logging purposes.
|
|
40
|
+
*
|
|
41
|
+
* @param traceId - The full trace ID
|
|
42
|
+
* @returns Truncated trace ID
|
|
43
|
+
*/
|
|
44
|
+
export function formatTraceId(traceId) {
|
|
45
|
+
return truncateId(traceId);
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/logger/core/format.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Core Module
|
|
3
|
+
*
|
|
4
|
+
* Exports the fundamental types, constants, and context management
|
|
5
|
+
* for the logging system. This is the foundation that all other
|
|
6
|
+
* logger components build upon.
|
|
7
|
+
*
|
|
8
|
+
* @module logger/core
|
|
9
|
+
*/
|
|
10
|
+
export type { LogLevel, McpLogLevel, TransportMode, HttpContext, EventContext, LogContext, LoggerInterface, LogWriter, LogFormatter, LogEntryParams, LoggerConfig, LogNotificationHandler, } from "./types.js";
|
|
11
|
+
export { LOG_LEVELS, LOG_SEVERITY, LOG_LEVEL_TO_MCP, MCP_LEVEL_ORDER, DEFAULT_LOG_LEVEL, DEFAULT_LOG_FORMAT, DEFAULT_SERVICE_NAME, ID_DISPLAY_LENGTH, LEVEL_PAD_LENGTH, LOG_FILE_EXTENSION, DEFAULT_LOG_COMPONENTS, LOGGER_COMPONENTS, SENSITIVE_KEYS, SENSITIVE_KEY_BLOCKLIST, REDACTED_VALUE, JWT_PREFIX, CONTROL_CHAR_REPLACEMENTS, CONTROL_CHAR_PATTERN, ANSI_ESCAPE_PATTERN, MAX_CONTEXT_DEPTH, COMPONENT_SEPARATOR, MAX_CHILD_LOGGER_CACHE_SIZE, MAX_MESSAGE_LENGTH, TRUNCATION_SUFFIX, } from "./constants.js";
|
|
12
|
+
export type { SensitiveKey } from "./constants.js";
|
|
13
|
+
export { runWithContext, getContext, getContextValue, hasContext, mergeContext, createChildContext, withExtendedContext, withChildContext, getContextDepth, } from "./context.js";
|
|
14
|
+
export type { TraceContext, TraceContextExtractor } from "./trace-context.js";
|
|
15
|
+
export { setTraceContextExtractor, extractTraceContext } from "./trace-context.js";
|
|
16
|
+
export { LoggerErrorCode, LoggerError, LoggerInitError, WriterError, FormatterError, ScrubberError } from "./errors.js";
|
|
17
|
+
export type { LoggerErrorCodeType } from "./errors.js";
|
|
18
|
+
export { formatSessionId, formatRequestId, formatTraceId } from "./format.js";
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/logger/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,YAAY,EACV,QAAQ,EACR,WAAW,EACX,aAAa,EACb,WAAW,EACX,YAAY,EACZ,UAAU,EACV,eAAe,EACf,SAAS,EACT,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAMpB,OAAO,EAEL,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe,EAEf,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EAEpB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EAEjB,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,UAAU,EAEV,yBAAyB,EACzB,oBAAoB,EACpB,mBAAmB,EAEnB,iBAAiB,EACjB,mBAAmB,EAEnB,2BAA2B,EAC3B,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAMnD,OAAO,EAEL,cAAc,EACd,UAAU,EACV,eAAe,EACf,UAAU,EAEV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAEhB,eAAe,GAChB,MAAM,cAAc,CAAC;AAMtB,YAAY,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAMnF,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAExH,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAMvD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Core Module
|
|
3
|
+
*
|
|
4
|
+
* Exports the fundamental types, constants, and context management
|
|
5
|
+
* for the logging system. This is the foundation that all other
|
|
6
|
+
* logger components build upon.
|
|
7
|
+
*
|
|
8
|
+
* @module logger/core
|
|
9
|
+
*/
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// Constants
|
|
12
|
+
// ============================================================================
|
|
13
|
+
export {
|
|
14
|
+
// Log level configuration
|
|
15
|
+
LOG_LEVELS, LOG_SEVERITY, LOG_LEVEL_TO_MCP, MCP_LEVEL_ORDER,
|
|
16
|
+
// Default configuration
|
|
17
|
+
DEFAULT_LOG_LEVEL, DEFAULT_LOG_FORMAT, DEFAULT_SERVICE_NAME,
|
|
18
|
+
// Formatting constants
|
|
19
|
+
ID_DISPLAY_LENGTH, LEVEL_PAD_LENGTH, LOG_FILE_EXTENSION, DEFAULT_LOG_COMPONENTS, LOGGER_COMPONENTS,
|
|
20
|
+
// Security constants (scrubbing)
|
|
21
|
+
SENSITIVE_KEYS, SENSITIVE_KEY_BLOCKLIST, REDACTED_VALUE, JWT_PREFIX,
|
|
22
|
+
// Security constants (injection prevention)
|
|
23
|
+
CONTROL_CHAR_REPLACEMENTS, CONTROL_CHAR_PATTERN, ANSI_ESCAPE_PATTERN,
|
|
24
|
+
// Context constants
|
|
25
|
+
MAX_CONTEXT_DEPTH, COMPONENT_SEPARATOR,
|
|
26
|
+
// Performance constants
|
|
27
|
+
MAX_CHILD_LOGGER_CACHE_SIZE, MAX_MESSAGE_LENGTH, TRUNCATION_SUFFIX, } from "./constants.js";
|
|
28
|
+
// ============================================================================
|
|
29
|
+
// Context Management
|
|
30
|
+
// ============================================================================
|
|
31
|
+
export {
|
|
32
|
+
// Core context functions
|
|
33
|
+
runWithContext, getContext, getContextValue, hasContext,
|
|
34
|
+
// Context manipulation
|
|
35
|
+
mergeContext, createChildContext, withExtendedContext, withChildContext,
|
|
36
|
+
// Utilities
|
|
37
|
+
getContextDepth, } from "./context.js";
|
|
38
|
+
export { setTraceContextExtractor, extractTraceContext } from "./trace-context.js";
|
|
39
|
+
// ============================================================================
|
|
40
|
+
// Errors
|
|
41
|
+
// ============================================================================
|
|
42
|
+
export { LoggerErrorCode, LoggerError, LoggerInitError, WriterError, FormatterError, ScrubberError } from "./errors.js";
|
|
43
|
+
// ============================================================================
|
|
44
|
+
// Formatting Utilities
|
|
45
|
+
// ============================================================================
|
|
46
|
+
export { formatSessionId, formatRequestId, formatTraceId } from "./format.js";
|
|
47
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/logger/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAqBH,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,OAAO;AACL,0BAA0B;AAC1B,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe;AACf,wBAAwB;AACxB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB;AACpB,uBAAuB;AACvB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB;AACjB,iCAAiC;AACjC,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,UAAU;AACV,4CAA4C;AAC5C,yBAAyB,EACzB,oBAAoB,EACpB,mBAAmB;AACnB,oBAAoB;AACpB,iBAAiB,EACjB,mBAAmB;AACnB,wBAAwB;AACxB,2BAA2B,EAC3B,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAKxB,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,OAAO;AACL,yBAAyB;AACzB,cAAc,EACd,UAAU,EACV,eAAe,EACf,UAAU;AACV,uBAAuB;AACvB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB;AAChB,YAAY;AACZ,eAAe,GAChB,MAAM,cAAc,CAAC;AAOtB,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEnF,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIxH,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
|