@vibesdotdev/logging 0.0.2 → 1.0.0-rc.5
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/LICENSE +18 -0
- package/README.md +101 -8
- package/dist/audit/audit-retention.job.descriptor.d.ts +60 -0
- package/dist/audit/audit-retention.job.descriptor.d.ts.map +1 -0
- package/dist/audit/audit-retention.job.descriptor.js +42 -0
- package/dist/audit/audit-retention.job.descriptor.js.map +1 -0
- package/dist/audit/audit-retention.job.impl.d.ts +23 -0
- package/dist/audit/audit-retention.job.impl.d.ts.map +1 -0
- package/dist/audit/audit-retention.job.impl.js +24 -0
- package/dist/audit/audit-retention.job.impl.js.map +1 -0
- package/dist/audit/audit.descriptor.d.ts +6 -0
- package/dist/audit/audit.descriptor.d.ts.map +1 -1
- package/dist/audit/audit.descriptor.js +72 -5
- package/dist/audit/audit.descriptor.js.map +1 -1
- package/dist/audit/audit.storage.schema.d.ts +3 -3
- package/dist/audit/index.d.ts +3 -1
- package/dist/audit/index.d.ts.map +1 -1
- package/dist/audit/index.js +4 -1
- package/dist/audit/index.js.map +1 -1
- package/dist/audit/scheduled-audit-retention.d.ts +39 -0
- package/dist/audit/scheduled-audit-retention.d.ts.map +1 -0
- package/dist/audit/scheduled-audit-retention.js +38 -0
- package/dist/audit/scheduled-audit-retention.js.map +1 -0
- package/dist/browser/capture-error.d.ts +66 -0
- package/dist/browser/capture-error.d.ts.map +1 -0
- package/dist/browser/capture-error.js +82 -0
- package/dist/browser/capture-error.js.map +1 -0
- package/dist/browser/index.d.ts +11 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +16 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/logging-browser.plugin.d.ts +9 -0
- package/dist/browser/logging-browser.plugin.d.ts.map +1 -0
- package/dist/browser/logging-browser.plugin.js +26 -0
- package/dist/browser/logging-browser.plugin.js.map +1 -0
- package/dist/browser/plugin.d.ts +2 -0
- package/dist/browser/plugin.d.ts.map +1 -0
- package/dist/browser/plugin.js +2 -0
- package/dist/browser/plugin.js.map +1 -0
- package/dist/browser/read-errors.d.ts +26 -0
- package/dist/browser/read-errors.d.ts.map +1 -0
- package/dist/browser/read-errors.js +38 -0
- package/dist/browser/read-errors.js.map +1 -0
- package/dist/browser/sinks/browser/browser.browser.descriptor.d.ts +10 -0
- package/dist/browser/sinks/browser/browser.browser.descriptor.d.ts.map +1 -0
- package/dist/browser/sinks/browser/browser.browser.descriptor.js +23 -0
- package/dist/browser/sinks/browser/browser.browser.descriptor.js.map +1 -0
- package/dist/browser/sinks/browser/browser.impl.browser.d.ts +83 -0
- package/dist/browser/sinks/browser/browser.impl.browser.d.ts.map +1 -0
- package/dist/browser/sinks/browser/browser.impl.browser.js +247 -0
- package/dist/browser/sinks/browser/browser.impl.browser.js.map +1 -0
- package/dist/cli/failures.d.ts +29 -0
- package/dist/cli/failures.d.ts.map +1 -0
- package/dist/cli/failures.js +44 -0
- package/dist/cli/failures.js.map +1 -0
- package/dist/cli/flags.d.ts +24 -0
- package/dist/cli/flags.d.ts.map +1 -0
- package/dist/cli/flags.js +56 -0
- package/dist/cli/flags.js.map +1 -0
- package/dist/cli/log-line.d.ts +23 -0
- package/dist/cli/log-line.d.ts.map +1 -0
- package/dist/cli/log-line.js +39 -0
- package/dist/cli/log-line.js.map +1 -0
- package/dist/cli/logging.logs.descriptor.d.ts +9 -0
- package/dist/cli/logging.logs.descriptor.d.ts.map +1 -0
- package/dist/cli/logging.logs.descriptor.js +16 -0
- package/dist/cli/logging.logs.descriptor.js.map +1 -0
- package/dist/cli/logs.audit.cleanup.descriptor.d.ts +7 -0
- package/dist/cli/logs.audit.cleanup.descriptor.d.ts.map +1 -0
- package/dist/cli/logs.audit.cleanup.descriptor.js +21 -0
- package/dist/cli/logs.audit.cleanup.descriptor.js.map +1 -0
- package/dist/cli/logs.audit.cleanup.impl.d.ts +14 -0
- package/dist/cli/logs.audit.cleanup.impl.d.ts.map +1 -0
- package/dist/cli/logs.audit.cleanup.impl.js +60 -0
- package/dist/cli/logs.audit.cleanup.impl.js.map +1 -0
- package/dist/cli/logs.audit.descriptor.d.ts +9 -0
- package/dist/cli/logs.audit.descriptor.d.ts.map +1 -0
- package/dist/cli/logs.audit.descriptor.js +41 -0
- package/dist/cli/logs.audit.descriptor.js.map +1 -0
- package/dist/cli/logs.audit.group.descriptor.d.ts +7 -0
- package/dist/cli/logs.audit.group.descriptor.d.ts.map +1 -0
- package/dist/cli/logs.audit.group.descriptor.js +15 -0
- package/dist/cli/logs.audit.group.descriptor.js.map +1 -0
- package/dist/cli/logs.audit.impl.d.ts +19 -0
- package/dist/cli/logs.audit.impl.d.ts.map +1 -0
- package/dist/cli/logs.audit.impl.js +83 -0
- package/dist/cli/logs.audit.impl.js.map +1 -0
- package/dist/cli/logs.descriptor.d.ts +1 -8
- package/dist/cli/logs.descriptor.d.ts.map +1 -1
- package/dist/cli/logs.descriptor.js +1 -15
- package/dist/cli/logs.descriptor.js.map +1 -1
- package/dist/cli/logs.list.impl.d.ts +4 -1
- package/dist/cli/logs.list.impl.d.ts.map +1 -1
- package/dist/cli/logs.list.impl.js +60 -63
- package/dist/cli/logs.list.impl.js.map +1 -1
- package/dist/cli/logs.rotate.descriptor.d.ts.map +1 -1
- package/dist/cli/logs.rotate.descriptor.js +7 -3
- package/dist/cli/logs.rotate.descriptor.js.map +1 -1
- package/dist/cli/logs.rotate.impl.d.ts +3 -1
- package/dist/cli/logs.rotate.impl.d.ts.map +1 -1
- package/dist/cli/logs.rotate.impl.js +72 -33
- package/dist/cli/logs.rotate.impl.js.map +1 -1
- package/dist/cli/logs.search.descriptor.d.ts.map +1 -1
- package/dist/cli/logs.search.descriptor.js +4 -0
- package/dist/cli/logs.search.descriptor.js.map +1 -1
- package/dist/cli/logs.search.impl.d.ts +3 -1
- package/dist/cli/logs.search.impl.d.ts.map +1 -1
- package/dist/cli/logs.search.impl.js +114 -108
- package/dist/cli/logs.search.impl.js.map +1 -1
- package/dist/cli/logs.tail.descriptor.d.ts.map +1 -1
- package/dist/cli/logs.tail.descriptor.js +2 -1
- package/dist/cli/logs.tail.descriptor.js.map +1 -1
- package/dist/cli/logs.tail.impl.d.ts +4 -2
- package/dist/cli/logs.tail.impl.d.ts.map +1 -1
- package/dist/cli/logs.tail.impl.js +84 -57
- package/dist/cli/logs.tail.impl.js.map +1 -1
- package/dist/cli/logs.view.impl.d.ts +2 -6
- package/dist/cli/logs.view.impl.d.ts.map +1 -1
- package/dist/cli/logs.view.impl.js +32 -50
- package/dist/cli/logs.view.impl.js.map +1 -1
- package/dist/cli/output.d.ts +29 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +29 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/{logging.cli.plugin.d.ts → cli/plugin.d.ts} +3 -3
- package/dist/cli/plugin.d.ts.map +1 -0
- package/dist/cli/plugin.js +45 -0
- package/dist/cli/plugin.js.map +1 -0
- package/dist/cli/resolve-output.d.ts +25 -0
- package/dist/cli/resolve-output.d.ts.map +1 -0
- package/dist/cli/resolve-output.js +75 -0
- package/dist/cli/resolve-output.js.map +1 -0
- package/dist/cli/types.d.ts +13 -5
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/cli/types.js +3 -3
- package/dist/client/logging-client.d.ts +31 -0
- package/dist/client/logging-client.d.ts.map +1 -0
- package/dist/client/logging-client.js +44 -0
- package/dist/client/logging-client.js.map +1 -0
- package/dist/config/file-rotation.d.ts +11 -0
- package/dist/config/file-rotation.d.ts.map +1 -0
- package/dist/config/file-rotation.js +18 -0
- package/dist/config/file-rotation.js.map +1 -0
- package/dist/config/load-config.d.ts +7 -0
- package/dist/config/load-config.d.ts.map +1 -0
- package/dist/config/load-config.js +68 -0
- package/dist/config/load-config.js.map +1 -0
- package/dist/config/logging.config.descriptor.d.ts +350 -0
- package/dist/config/logging.config.descriptor.d.ts.map +1 -0
- package/dist/config/logging.config.descriptor.js +208 -0
- package/dist/config/logging.config.descriptor.js.map +1 -0
- package/dist/config/otel-service.d.ts +9 -0
- package/dist/config/otel-service.d.ts.map +1 -0
- package/dist/config/otel-service.js +18 -0
- package/dist/config/otel-service.js.map +1 -0
- package/dist/contexts/bootstrap.plugin.d.ts +3 -0
- package/dist/contexts/bootstrap.plugin.d.ts.map +1 -0
- package/dist/contexts/bootstrap.plugin.js +13 -0
- package/dist/contexts/bootstrap.plugin.js.map +1 -0
- package/dist/contexts/fallback-logger.d.ts +7 -2
- package/dist/contexts/fallback-logger.d.ts.map +1 -1
- package/dist/contexts/fallback-logger.js +73 -46
- package/dist/contexts/fallback-logger.js.map +1 -1
- package/dist/contexts/index.d.ts +2 -2
- package/dist/contexts/index.d.ts.map +1 -1
- package/dist/contexts/index.js +2 -3
- package/dist/contexts/index.js.map +1 -1
- package/dist/contexts/logger.d.ts +38 -14
- package/dist/contexts/logger.d.ts.map +1 -1
- package/dist/contexts/logger.js +241 -62
- package/dist/contexts/logger.js.map +1 -1
- package/dist/core/attempt.d.ts +30 -0
- package/dist/core/attempt.d.ts.map +1 -0
- package/dist/core/attempt.js +44 -0
- package/dist/core/attempt.js.map +1 -0
- package/dist/core/emission-window.d.ts +34 -0
- package/dist/core/emission-window.d.ts.map +1 -0
- package/dist/core/emission-window.js +25 -0
- package/dist/core/emission-window.js.map +1 -0
- package/dist/core/endpoint.d.ts +54 -0
- package/dist/core/endpoint.d.ts.map +1 -0
- package/dist/core/endpoint.js +256 -0
- package/dist/core/endpoint.js.map +1 -0
- package/dist/core/entry-context.d.ts +106 -0
- package/dist/core/entry-context.d.ts.map +1 -0
- package/dist/core/entry-context.js +150 -0
- package/dist/core/entry-context.js.map +1 -0
- package/dist/core/index.d.ts +4 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +5 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/logger.d.ts +6 -1
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js +133 -67
- package/dist/core/logger.js.map +1 -1
- package/dist/core/namespace.d.ts +5 -2
- package/dist/core/namespace.d.ts.map +1 -1
- package/dist/core/namespace.js +15 -7
- package/dist/core/namespace.js.map +1 -1
- package/dist/core/normalize.d.ts +31 -0
- package/dist/core/normalize.d.ts.map +1 -0
- package/dist/core/normalize.js +67 -0
- package/dist/core/normalize.js.map +1 -0
- package/dist/core/otlp-headers.d.ts +53 -0
- package/dist/core/otlp-headers.d.ts.map +1 -0
- package/dist/core/otlp-headers.js +64 -0
- package/dist/core/otlp-headers.js.map +1 -0
- package/dist/core/otlp-partial-success.d.ts +48 -0
- package/dist/core/otlp-partial-success.d.ts.map +1 -0
- package/dist/core/otlp-partial-success.js +55 -0
- package/dist/core/otlp-partial-success.js.map +1 -0
- package/dist/core/outcome.d.ts +21 -0
- package/dist/core/outcome.d.ts.map +1 -0
- package/dist/core/outcome.js +24 -0
- package/dist/core/outcome.js.map +1 -0
- package/dist/core/output-resources.d.ts +15 -0
- package/dist/core/output-resources.d.ts.map +1 -0
- package/dist/core/output-resources.js +51 -0
- package/dist/core/output-resources.js.map +1 -0
- package/dist/core/parsing.d.ts.map +1 -1
- package/dist/core/parsing.js +13 -10
- package/dist/core/parsing.js.map +1 -1
- package/dist/core/redact.d.ts +161 -0
- package/dist/core/redact.d.ts.map +1 -0
- package/dist/core/redact.js +581 -0
- package/dist/core/redact.js.map +1 -0
- package/dist/core/root-identity.d.ts +13 -0
- package/dist/core/root-identity.d.ts.map +1 -0
- package/dist/core/root-identity.js +23 -0
- package/dist/core/root-identity.js.map +1 -0
- package/dist/core/types.d.ts +5 -4
- package/dist/core/types.d.ts.map +1 -1
- package/dist/docs/cli.docs.descriptor.d.ts +4 -0
- package/dist/docs/cli.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/cli.docs.descriptor.js +97 -0
- package/dist/docs/cli.docs.descriptor.js.map +1 -0
- package/dist/docs/index.d.ts +7 -0
- package/dist/docs/index.d.ts.map +1 -0
- package/dist/docs/index.js +7 -0
- package/dist/docs/index.js.map +1 -0
- package/dist/docs/levels.docs.descriptor.d.ts +1 -1
- package/dist/docs/levels.docs.descriptor.d.ts.map +1 -1
- package/dist/docs/levels.docs.descriptor.js +112 -246
- package/dist/docs/levels.docs.descriptor.js.map +1 -1
- package/dist/docs/logging.docs.descriptor.d.ts +4 -0
- package/dist/docs/logging.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/logging.docs.descriptor.js +105 -0
- package/dist/docs/logging.docs.descriptor.js.map +1 -0
- package/dist/docs/observability.docs.descriptor.d.ts +4 -0
- package/dist/docs/observability.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/observability.docs.descriptor.js +152 -0
- package/dist/docs/observability.docs.descriptor.js.map +1 -0
- package/dist/docs/structured.docs.descriptor.d.ts +1 -1
- package/dist/docs/structured.docs.descriptor.d.ts.map +1 -1
- package/dist/docs/structured.docs.descriptor.js +111 -267
- package/dist/docs/structured.docs.descriptor.js.map +1 -1
- package/dist/docs/transports.docs.descriptor.d.ts +1 -1
- package/dist/docs/transports.docs.descriptor.d.ts.map +1 -1
- package/dist/docs/transports.docs.descriptor.js +129 -344
- package/dist/docs/transports.docs.descriptor.js.map +1 -1
- package/dist/formatters/json/json.impl.d.ts +1 -1
- package/dist/formatters/json/json.impl.d.ts.map +1 -1
- package/dist/formatters/json/json.impl.js +3 -2
- package/dist/formatters/json/json.impl.js.map +1 -1
- package/dist/formatters/json5/json5.impl.d.ts +1 -1
- package/dist/formatters/json5/json5.impl.d.ts.map +1 -1
- package/dist/formatters/json5/json5.impl.js +3 -2
- package/dist/formatters/json5/json5.impl.js.map +1 -1
- package/dist/formatters/jsonl/jsonl.impl.d.ts +1 -1
- package/dist/formatters/jsonl/jsonl.impl.d.ts.map +1 -1
- package/dist/formatters/jsonl/jsonl.impl.js +3 -2
- package/dist/formatters/jsonl/jsonl.impl.js.map +1 -1
- package/dist/formatters/pretty/{pretty.impl.cli.d.ts → pretty.impl.consumer.d.ts} +1 -1
- package/dist/formatters/pretty/pretty.impl.consumer.d.ts.map +1 -0
- package/dist/formatters/pretty/{pretty.impl.cli.js → pretty.impl.consumer.js} +1 -1
- package/dist/formatters/pretty/pretty.impl.consumer.js.map +1 -0
- package/dist/host-files/file-audit.base.d.ts +39 -0
- package/dist/host-files/file-audit.base.d.ts.map +1 -0
- package/dist/host-files/file-audit.base.js +255 -0
- package/dist/host-files/file-audit.base.js.map +1 -0
- package/dist/host-files/file-output.base.d.ts +84 -0
- package/dist/host-files/file-output.base.d.ts.map +1 -0
- package/dist/host-files/file-output.base.js +401 -0
- package/dist/host-files/file-output.base.js.map +1 -0
- package/dist/host-files/file-output.factory.base.d.ts +31 -0
- package/dist/host-files/file-output.factory.base.d.ts.map +1 -0
- package/dist/host-files/file-output.factory.base.js +82 -0
- package/dist/host-files/file-output.factory.base.js.map +1 -0
- package/dist/host-files/file-output.read.base.d.ts +7 -0
- package/dist/host-files/file-output.read.base.d.ts.map +1 -0
- package/dist/host-files/file-output.read.base.js +229 -0
- package/dist/host-files/file-output.read.base.js.map +1 -0
- package/dist/host-files/file-sink.base.d.ts +22 -0
- package/dist/host-files/file-sink.base.d.ts.map +1 -0
- package/dist/host-files/file-sink.base.js +56 -0
- package/dist/host-files/file-sink.base.js.map +1 -0
- package/dist/host-files/host-file-logging.plugin.d.ts +11 -0
- package/dist/host-files/host-file-logging.plugin.d.ts.map +1 -0
- package/dist/host-files/host-file-logging.plugin.js +63 -0
- package/dist/host-files/host-file-logging.plugin.js.map +1 -0
- package/dist/host-files/index.d.ts +19 -0
- package/dist/host-files/index.d.ts.map +1 -0
- package/dist/host-files/index.js +18 -0
- package/dist/host-files/index.js.map +1 -0
- package/dist/host-files/rotate-appended-file.base.d.ts +35 -0
- package/dist/host-files/rotate-appended-file.base.d.ts.map +1 -0
- package/dist/host-files/rotate-appended-file.base.js +104 -0
- package/dist/host-files/rotate-appended-file.base.js.map +1 -0
- package/dist/host.d.ts +38 -0
- package/dist/host.d.ts.map +1 -0
- package/dist/host.js +39 -0
- package/dist/host.js.map +1 -0
- package/dist/index.d.ts +24 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +27 -23
- package/dist/index.js.map +1 -1
- package/dist/kinds/audit.d.ts +40 -8
- package/dist/kinds/audit.d.ts.map +1 -1
- package/dist/kinds/audit.js +82 -20
- package/dist/kinds/audit.js.map +1 -1
- package/dist/kinds/contexts.d.ts +4 -3
- package/dist/kinds/contexts.d.ts.map +1 -1
- package/dist/kinds/file-output.d.ts +56 -0
- package/dist/kinds/file-output.d.ts.map +1 -0
- package/dist/kinds/file-output.js +11 -0
- package/dist/kinds/file-output.js.map +1 -0
- package/dist/kinds/formatter.d.ts +4 -6
- package/dist/kinds/formatter.d.ts.map +1 -1
- package/dist/kinds/formatter.js +4 -3
- package/dist/kinds/formatter.js.map +1 -1
- package/dist/kinds/index.d.ts +3 -3
- package/dist/kinds/index.d.ts.map +1 -1
- package/dist/kinds/index.js +3 -3
- package/dist/kinds/index.js.map +1 -1
- package/dist/kinds/logger.d.ts +4 -4
- package/dist/kinds/logger.d.ts.map +1 -1
- package/dist/kinds/logger.impl.d.ts +40 -13
- package/dist/kinds/logger.impl.d.ts.map +1 -1
- package/dist/kinds/logger.impl.js +179 -87
- package/dist/kinds/logger.impl.js.map +1 -1
- package/dist/kinds/logger.js +21 -11
- package/dist/kinds/logger.js.map +1 -1
- package/dist/kinds/logger.utils.d.ts +31 -4
- package/dist/kinds/logger.utils.d.ts.map +1 -1
- package/dist/kinds/logger.utils.js +58 -18
- package/dist/kinds/logger.utils.js.map +1 -1
- package/dist/kinds/output.d.ts +5 -11
- package/dist/kinds/output.d.ts.map +1 -1
- package/dist/kinds/output.impl.d.ts +9 -7
- package/dist/kinds/output.impl.d.ts.map +1 -1
- package/dist/kinds/output.impl.js +51 -29
- package/dist/kinds/output.impl.js.map +1 -1
- package/dist/kinds/output.js +10 -5
- package/dist/kinds/output.js.map +1 -1
- package/dist/kinds/output.types.d.ts +26 -7
- package/dist/kinds/output.types.d.ts.map +1 -1
- package/dist/kinds/sink.d.ts +6 -5
- package/dist/kinds/sink.d.ts.map +1 -1
- package/dist/kinds/sink.js +14 -7
- package/dist/kinds/sink.js.map +1 -1
- package/dist/logger.context.descriptor.d.ts +15 -1
- package/dist/logger.context.descriptor.d.ts.map +1 -1
- package/dist/logger.context.descriptor.js +1 -1
- package/dist/logger.context.descriptor.js.map +1 -1
- package/dist/logging.consumer.plugin.d.ts +4 -0
- package/dist/logging.consumer.plugin.d.ts.map +1 -0
- package/dist/logging.consumer.plugin.js +17 -0
- package/dist/logging.consumer.plugin.js.map +1 -0
- package/dist/logging.plugin.d.ts +3 -3
- package/dist/logging.plugin.d.ts.map +1 -1
- package/dist/logging.plugin.js +81 -42
- package/dist/logging.plugin.js.map +1 -1
- package/dist/observability/building-host.d.ts +11 -0
- package/dist/observability/building-host.d.ts.map +1 -0
- package/dist/observability/building-host.js +11 -0
- package/dist/observability/building-host.js.map +1 -0
- package/dist/observability/config.d.ts +36 -0
- package/dist/observability/config.d.ts.map +1 -0
- package/dist/observability/config.js +46 -0
- package/dist/observability/config.js.map +1 -0
- package/dist/observability/http/instrumented-fetch.d.ts +19 -0
- package/dist/observability/http/instrumented-fetch.d.ts.map +1 -0
- package/dist/observability/http/instrumented-fetch.js +175 -0
- package/dist/observability/http/instrumented-fetch.js.map +1 -0
- package/dist/observability/index.d.ts +8 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +10 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/lifecycle.d.ts +18 -0
- package/dist/observability/lifecycle.d.ts.map +1 -0
- package/dist/observability/lifecycle.js +44 -0
- package/dist/observability/lifecycle.js.map +1 -0
- package/dist/observability/observability/error-tracker.d.ts +43 -0
- package/dist/observability/observability/error-tracker.d.ts.map +1 -0
- package/dist/observability/observability/error-tracker.js +130 -0
- package/dist/observability/observability/error-tracker.js.map +1 -0
- package/dist/observability/should-keep-log.d.ts +8 -0
- package/dist/observability/should-keep-log.d.ts.map +1 -0
- package/dist/observability/should-keep-log.js +10 -0
- package/dist/observability/should-keep-log.js.map +1 -0
- package/dist/observability/telemetry/otel.d.ts +47 -0
- package/dist/observability/telemetry/otel.d.ts.map +1 -0
- package/dist/observability/telemetry/otel.js +542 -0
- package/dist/observability/telemetry/otel.js.map +1 -0
- package/dist/observability/telemetry/partial-success.d.ts +35 -0
- package/dist/observability/telemetry/partial-success.d.ts.map +1 -0
- package/dist/observability/telemetry/partial-success.js +94 -0
- package/dist/observability/telemetry/partial-success.js.map +1 -0
- package/dist/observability/telemetry/sdk-lifecycle.d.ts +37 -0
- package/dist/observability/telemetry/sdk-lifecycle.d.ts.map +1 -0
- package/dist/observability/telemetry/sdk-lifecycle.js +132 -0
- package/dist/observability/telemetry/sdk-lifecycle.js.map +1 -0
- package/dist/observability/telemetry/telemetry-root.d.ts +78 -0
- package/dist/observability/telemetry/telemetry-root.d.ts.map +1 -0
- package/dist/observability/telemetry/telemetry-root.js +79 -0
- package/dist/observability/telemetry/telemetry-root.js.map +1 -0
- package/dist/observability/telemetry-instrumentation.d.ts +76 -0
- package/dist/observability/telemetry-instrumentation.d.ts.map +1 -0
- package/dist/observability/telemetry-instrumentation.js +69 -0
- package/dist/observability/telemetry-instrumentation.js.map +1 -0
- package/dist/otel/index.d.ts +9 -0
- package/dist/otel/index.d.ts.map +1 -0
- package/dist/otel/index.js +12 -0
- package/dist/otel/index.js.map +1 -0
- package/dist/otel/logging-otel.plugin.d.ts +11 -0
- package/dist/otel/logging-otel.plugin.d.ts.map +1 -0
- package/dist/otel/logging-otel.plugin.js +27 -0
- package/dist/otel/logging-otel.plugin.js.map +1 -0
- package/dist/otel/sinks/otel/otel.descriptor.d.ts +10 -0
- package/dist/otel/sinks/otel/otel.descriptor.d.ts.map +1 -0
- package/dist/otel/sinks/otel/otel.descriptor.js +23 -0
- package/dist/otel/sinks/otel/otel.descriptor.js.map +1 -0
- package/dist/otel/sinks/otel/otel.impl.d.ts +47 -0
- package/dist/otel/sinks/otel/otel.impl.d.ts.map +1 -0
- package/dist/otel/sinks/otel/otel.impl.js +202 -0
- package/dist/otel/sinks/otel/otel.impl.js.map +1 -0
- package/dist/otel/sinks/otel/otlp-log-exporter.d.ts +76 -0
- package/dist/otel/sinks/otel/otlp-log-exporter.d.ts.map +1 -0
- package/dist/otel/sinks/otel/otlp-log-exporter.js +178 -0
- package/dist/otel/sinks/otel/otlp-log-exporter.js.map +1 -0
- package/dist/outputs/file/file.outputs.descriptor.d.ts +10 -0
- package/dist/outputs/file/file.outputs.descriptor.d.ts.map +1 -0
- package/dist/outputs/file/file.outputs.descriptor.js +32 -0
- package/dist/outputs/file/file.outputs.descriptor.js.map +1 -0
- package/dist/outputs/remote/remote.descriptor.d.ts +1 -1
- package/dist/outputs/remote/remote.descriptor.d.ts.map +1 -1
- package/dist/outputs/remote/remote.descriptor.js +1 -2
- package/dist/outputs/remote/remote.descriptor.js.map +1 -1
- package/dist/outputs/remote/remote.factory.d.ts +9 -0
- package/dist/outputs/remote/remote.factory.d.ts.map +1 -0
- package/dist/outputs/remote/remote.factory.js +16 -0
- package/dist/outputs/remote/remote.factory.js.map +1 -0
- package/dist/outputs/remote/remote.impl.d.ts +40 -4
- package/dist/outputs/remote/remote.impl.d.ts.map +1 -1
- package/dist/outputs/remote/remote.impl.js +224 -99
- package/dist/outputs/remote/remote.impl.js.map +1 -1
- package/dist/outputs.context.descriptor.d.ts +15 -1
- package/dist/outputs.context.descriptor.d.ts.map +1 -1
- package/dist/outputs.context.descriptor.js +1 -1
- package/dist/outputs.context.descriptor.js.map +1 -1
- package/dist/outputs.context.impl.d.ts +2 -1
- package/dist/outputs.context.impl.d.ts.map +1 -1
- package/dist/outputs.context.impl.js +17 -9
- package/dist/outputs.context.impl.js.map +1 -1
- package/dist/paths.d.ts +24 -3
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +63 -3
- package/dist/paths.js.map +1 -1
- package/dist/rotation/rotate-appended-file.d.ts +15 -0
- package/dist/rotation/rotate-appended-file.d.ts.map +1 -0
- package/dist/rotation/rotate-appended-file.js +20 -0
- package/dist/rotation/rotate-appended-file.js.map +1 -0
- package/dist/rotation/rotation-policy.d.ts +19 -0
- package/dist/rotation/rotation-policy.d.ts.map +1 -0
- package/dist/rotation/rotation-policy.js +37 -0
- package/dist/rotation/rotation-policy.js.map +1 -0
- package/dist/schemas/audit.d.ts +25 -7
- package/dist/schemas/audit.d.ts.map +1 -1
- package/dist/schemas/audit.js +10 -4
- package/dist/schemas/audit.js.map +1 -1
- package/dist/schemas/entry.d.ts +11 -5
- package/dist/schemas/entry.d.ts.map +1 -1
- package/dist/schemas/entry.js +3 -2
- package/dist/schemas/entry.js.map +1 -1
- package/dist/schemas/file-host.d.ts +86 -0
- package/dist/schemas/file-host.d.ts.map +1 -0
- package/dist/schemas/file-host.js +10 -0
- package/dist/schemas/file-host.js.map +1 -0
- package/dist/schemas/formatter.d.ts +11 -1
- package/dist/schemas/formatter.d.ts.map +1 -1
- package/dist/schemas/formatter.js +1 -1
- package/dist/schemas/formatter.js.map +1 -1
- package/dist/schemas/index.d.ts +3 -2
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +3 -2
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/logger.d.ts +16 -1
- package/dist/schemas/logger.d.ts.map +1 -1
- package/dist/schemas/logger.js +6 -1
- package/dist/schemas/logger.js.map +1 -1
- package/dist/schemas/output-defaults.d.ts +44 -0
- package/dist/schemas/output-defaults.d.ts.map +1 -0
- package/dist/schemas/output-defaults.js +53 -0
- package/dist/schemas/output-defaults.js.map +1 -0
- package/dist/schemas/output.d.ts +25 -1
- package/dist/schemas/output.d.ts.map +1 -1
- package/dist/schemas/output.js +29 -2
- package/dist/schemas/output.js.map +1 -1
- package/dist/schemas/sink.d.ts +32 -1
- package/dist/schemas/sink.d.ts.map +1 -1
- package/dist/schemas/sink.js +17 -1
- package/dist/schemas/sink.js.map +1 -1
- package/dist/sinks/buffer/buffer.descriptor.js +1 -1
- package/dist/sinks/buffer/buffer.descriptor.js.map +1 -1
- package/dist/sinks/buffer/{buffer.impl.cli.d.ts → buffer.impl.d.ts} +3 -3
- package/dist/sinks/buffer/buffer.impl.d.ts.map +1 -0
- package/dist/sinks/buffer/buffer.impl.js +42 -0
- package/dist/sinks/buffer/buffer.impl.js.map +1 -0
- package/dist/sinks/console/console.descriptor.js +1 -1
- package/dist/sinks/console/console.descriptor.js.map +1 -1
- package/dist/sinks/console/console.impl.browser.d.ts +4 -3
- package/dist/sinks/console/console.impl.browser.d.ts.map +1 -1
- package/dist/sinks/console/console.impl.browser.js +11 -14
- package/dist/sinks/console/console.impl.browser.js.map +1 -1
- package/dist/sinks/console/{console.impl.cli.d.ts → console.impl.consumer.d.ts} +5 -4
- package/dist/sinks/console/console.impl.consumer.d.ts.map +1 -0
- package/dist/sinks/console/{console.impl.cli.js → console.impl.consumer.js} +16 -8
- package/dist/sinks/console/console.impl.consumer.js.map +1 -0
- package/dist/sinks/file/file.sinks.descriptor.d.ts +10 -0
- package/dist/sinks/file/file.sinks.descriptor.d.ts.map +1 -0
- package/dist/sinks/file/file.sinks.descriptor.js +23 -0
- package/dist/sinks/file/file.sinks.descriptor.js.map +1 -0
- package/dist/sinks/index.d.ts +1 -1
- package/dist/sinks/index.d.ts.map +1 -1
- package/dist/sinks/memory/memory.descriptor.d.ts +1 -1
- package/dist/sinks/memory/memory.descriptor.js +2 -2
- package/dist/sinks/memory/memory.descriptor.js.map +1 -1
- package/dist/sinks/memory/memory.impl.d.ts +5 -11
- package/dist/sinks/memory/memory.impl.d.ts.map +1 -1
- package/dist/sinks/memory/memory.impl.js +46 -21
- package/dist/sinks/memory/memory.impl.js.map +1 -1
- package/dist/sinks/stdout/stdout.descriptor.js +1 -1
- package/dist/sinks/stdout/stdout.descriptor.js.map +1 -1
- package/dist/sinks/stdout/{stdout.impl.cli.d.ts → stdout.impl.d.ts} +5 -4
- package/dist/sinks/stdout/stdout.impl.d.ts.map +1 -0
- package/dist/sinks/stdout/stdout.impl.js +29 -0
- package/dist/sinks/stdout/stdout.impl.js.map +1 -0
- package/dist/sinks.context.descriptor.d.ts +15 -1
- package/dist/sinks.context.descriptor.d.ts.map +1 -1
- package/dist/sinks.context.descriptor.js +1 -1
- package/dist/sinks.context.descriptor.js.map +1 -1
- package/dist/sinks.context.impl.d.ts +2 -1
- package/dist/sinks.context.impl.d.ts.map +1 -1
- package/dist/sinks.context.impl.js +17 -9
- package/dist/sinks.context.impl.js.map +1 -1
- package/dist/stdout-capture/mcp-frame.d.ts +23 -0
- package/dist/stdout-capture/mcp-frame.d.ts.map +1 -0
- package/dist/stdout-capture/mcp-frame.js +80 -0
- package/dist/stdout-capture/mcp-frame.js.map +1 -0
- package/dist/stdout-capture/stdout-capture.descriptor.d.ts +10 -0
- package/dist/stdout-capture/stdout-capture.descriptor.d.ts.map +1 -0
- package/dist/stdout-capture/stdout-capture.descriptor.js +17 -0
- package/dist/stdout-capture/stdout-capture.descriptor.js.map +1 -0
- package/dist/stdout-capture/stdout-capture.impl.d.ts +19 -0
- package/dist/stdout-capture/stdout-capture.impl.d.ts.map +1 -0
- package/dist/stdout-capture/stdout-capture.impl.js +49 -0
- package/dist/stdout-capture/stdout-capture.impl.js.map +1 -0
- package/dist/stdout-capture/stdout-capture.lease.d.ts +45 -0
- package/dist/stdout-capture/stdout-capture.lease.d.ts.map +1 -0
- package/dist/stdout-capture/stdout-capture.lease.js +338 -0
- package/dist/stdout-capture/stdout-capture.lease.js.map +1 -0
- package/dist/stdout-capture/stdout-capture.output.descriptor.d.ts +4 -0
- package/dist/stdout-capture/stdout-capture.output.descriptor.d.ts.map +1 -0
- package/dist/stdout-capture/stdout-capture.output.descriptor.js +18 -0
- package/dist/stdout-capture/stdout-capture.output.descriptor.js.map +1 -0
- package/dist/stdout-capture/stdout-capture.state.d.ts +29 -0
- package/dist/stdout-capture/stdout-capture.state.d.ts.map +1 -0
- package/dist/stdout-capture/stdout-capture.state.js +80 -0
- package/dist/stdout-capture/stdout-capture.state.js.map +1 -0
- package/dist/stdout-capture.d.ts +24 -0
- package/dist/stdout-capture.d.ts.map +1 -0
- package/dist/stdout-capture.js +28 -0
- package/dist/stdout-capture.js.map +1 -0
- package/dist/stdout-capture.plugin.d.ts +7 -0
- package/dist/stdout-capture.plugin.d.ts.map +1 -0
- package/dist/stdout-capture.plugin.js +28 -0
- package/dist/stdout-capture.plugin.js.map +1 -0
- package/package.json +308 -224
- package/dist/contexts/audit.d.ts +0 -34
- package/dist/contexts/audit.d.ts.map +0 -1
- package/dist/contexts/audit.js +0 -13
- package/dist/contexts/audit.js.map +0 -1
- package/dist/formatters/index.d.ts +0 -7
- package/dist/formatters/index.d.ts.map +0 -1
- package/dist/formatters/index.js +0 -8
- package/dist/formatters/index.js.map +0 -1
- package/dist/formatters/pretty/pretty.impl.cli.d.ts.map +0 -1
- package/dist/formatters/pretty/pretty.impl.cli.js.map +0 -1
- package/dist/kinds/logger.contracts.d.ts +0 -16
- package/dist/kinds/logger.contracts.d.ts.map +0 -1
- package/dist/kinds/logger.contracts.js +0 -9
- package/dist/kinds/logger.contracts.js.map +0 -1
- package/dist/kinds/output.contracts.d.ts +0 -50
- package/dist/kinds/output.contracts.d.ts.map +0 -1
- package/dist/kinds/output.contracts.js +0 -10
- package/dist/kinds/output.contracts.js.map +0 -1
- package/dist/logging.cli.plugin.d.ts.map +0 -1
- package/dist/logging.cli.plugin.js +0 -39
- package/dist/logging.cli.plugin.js.map +0 -1
- package/dist/outputs/index.d.ts +0 -7
- package/dist/outputs/index.d.ts.map +0 -1
- package/dist/outputs/index.js +0 -8
- package/dist/outputs/index.js.map +0 -1
- package/dist/sinks/buffer/buffer.impl.cli.d.ts.map +0 -1
- package/dist/sinks/buffer/buffer.impl.cli.js +0 -34
- package/dist/sinks/buffer/buffer.impl.cli.js.map +0 -1
- package/dist/sinks/console/console.impl.cli.d.ts.map +0 -1
- package/dist/sinks/console/console.impl.cli.js.map +0 -1
- package/dist/sinks/stdout/stdout.impl.cli.d.ts.map +0 -1
- package/dist/sinks/stdout/stdout.impl.cli.js +0 -21
- package/dist/sinks/stdout/stdout.impl.cli.js.map +0 -1
- package/src/audit/audit.descriptor.ts +0 -45
- package/src/audit/audit.storage.schema.ts +0 -57
- package/src/audit/index.ts +0 -8
- package/src/cli/logs.descriptor.ts +0 -19
- package/src/cli/logs.list.descriptor.ts +0 -28
- package/src/cli/logs.list.impl.ts +0 -93
- package/src/cli/logs.rotate.descriptor.ts +0 -40
- package/src/cli/logs.rotate.impl.ts +0 -61
- package/src/cli/logs.search.descriptor.ts +0 -61
- package/src/cli/logs.search.impl.ts +0 -173
- package/src/cli/logs.tail.descriptor.ts +0 -49
- package/src/cli/logs.tail.impl.ts +0 -105
- package/src/cli/logs.view.descriptor.ts +0 -57
- package/src/cli/logs.view.impl.ts +0 -108
- package/src/cli/types.ts +0 -59
- package/src/contexts/audit.ts +0 -36
- package/src/contexts/fallback-logger.ts +0 -80
- package/src/contexts/index.ts +0 -23
- package/src/contexts/logger.ts +0 -119
- package/src/core/index.ts +0 -32
- package/src/core/logger.ts +0 -150
- package/src/core/namespace.ts +0 -195
- package/src/core/parsing.ts +0 -21
- package/src/core/types.ts +0 -82
- package/src/docs/levels.docs.descriptor.ts +0 -344
- package/src/docs/structured.docs.descriptor.ts +0 -444
- package/src/docs/transports.docs.descriptor.ts +0 -428
- package/src/formatters/index.ts +0 -6
- package/src/formatters/json/json.formatters.descriptor.ts +0 -25
- package/src/formatters/json/json.impl.ts +0 -41
- package/src/formatters/json5/json5.descriptor.ts +0 -25
- package/src/formatters/json5/json5.impl.ts +0 -43
- package/src/formatters/jsonl/jsonl.descriptor.ts +0 -26
- package/src/formatters/jsonl/jsonl.impl.ts +0 -39
- package/src/formatters/pretty/pretty.descriptor.ts +0 -26
- package/src/formatters/pretty/pretty.impl.cli.ts +0 -101
- package/src/index.ts +0 -190
- package/src/kinds/audit.ts +0 -169
- package/src/kinds/contexts.ts +0 -22
- package/src/kinds/formatter.ts +0 -117
- package/src/kinds/index.ts +0 -25
- package/src/kinds/logger.contracts.ts +0 -17
- package/src/kinds/logger.impl.ts +0 -206
- package/src/kinds/logger.ts +0 -46
- package/src/kinds/logger.utils.ts +0 -91
- package/src/kinds/output.contracts.ts +0 -54
- package/src/kinds/output.impl.ts +0 -118
- package/src/kinds/output.ts +0 -59
- package/src/kinds/output.types.ts +0 -105
- package/src/kinds/sink.ts +0 -100
- package/src/logger.context.descriptor.ts +0 -13
- package/src/logging.cli.plugin.ts +0 -43
- package/src/logging.plugin.ts +0 -93
- package/src/outputs/index.ts +0 -6
- package/src/outputs/remote/remote.descriptor.ts +0 -27
- package/src/outputs/remote/remote.impl.ts +0 -218
- package/src/outputs.context.descriptor.ts +0 -10
- package/src/outputs.context.impl.ts +0 -30
- package/src/paths.ts +0 -10
- package/src/schemas/audit.ts +0 -98
- package/src/schemas/entry.ts +0 -88
- package/src/schemas/formatter.ts +0 -37
- package/src/schemas/index.ts +0 -80
- package/src/schemas/logger.ts +0 -38
- package/src/schemas/output.ts +0 -62
- package/src/schemas/sink.ts +0 -39
- package/src/sinks/buffer/buffer.descriptor.ts +0 -13
- package/src/sinks/buffer/buffer.impl.cli.ts +0 -49
- package/src/sinks/console/console.descriptor.ts +0 -20
- package/src/sinks/console/console.impl.browser.ts +0 -69
- package/src/sinks/console/console.impl.cli.ts +0 -71
- package/src/sinks/index.ts +0 -8
- package/src/sinks/memory/memory.descriptor.ts +0 -20
- package/src/sinks/memory/memory.impl.ts +0 -119
- package/src/sinks/stdout/stdout.descriptor.ts +0 -13
- package/src/sinks/stdout/stdout.impl.cli.ts +0 -27
- package/src/sinks.context.descriptor.ts +0 -10
- package/src/sinks.context.impl.ts +0 -30
|
@@ -18,398 +18,183 @@ hardware: [consumer, cloud]
|
|
|
18
18
|
|
|
19
19
|
# Logging Transports
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
In the logging module a "transport" is one of two runtime kinds:
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
- **Sinks** (\`logging/sink\`) — fire-and-forget destinations for individual entries (console, stdout, in-memory buffers).
|
|
24
|
+
- **Outputs** (\`logging/output\`) — durable, named streams with rotation, buffering, read/tail/stats (file or remote HTTP).
|
|
24
25
|
|
|
25
|
-
|
|
26
|
+
The \`loggingPlugin\` registers a fixed set of built-in sinks and outputs. You do **not** pass transport config into the plugin and there is no per-transport plugin factory. Instead you select transports by **ID** on a \`LoggerDescriptor\` (its \`sinks\` and \`outputs\` arrays), and the runtime resolves the matching implementation for the active hardware scope.
|
|
26
27
|
|
|
27
|
-
|
|
28
|
+
## Registering the plugin
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
import { logger } from '@vibesdotdev/logging';
|
|
31
|
-
|
|
32
|
-
logger.info('Console output');
|
|
33
|
-
// [INFO] [app] Console output
|
|
34
|
-
\`\`\`
|
|
35
|
-
|
|
36
|
-
**Configuration:**
|
|
37
|
-
- Default for CLI and browser
|
|
38
|
-
- Uses pretty formatter by default
|
|
39
|
-
- Color-coded output
|
|
40
|
-
|
|
41
|
-
**Use cases:**
|
|
42
|
-
- Development debugging
|
|
43
|
-
- CLI applications
|
|
44
|
-
- Browser console
|
|
45
|
-
|
|
46
|
-
### File Output
|
|
47
|
-
|
|
48
|
-
Writes to log files:
|
|
49
|
-
|
|
50
|
-
\`\`\`ts
|
|
51
|
-
import { getVibesRuntime } from '@vibesdotdev/runtime';
|
|
52
|
-
|
|
53
|
-
const runtime = getVibesRuntime();
|
|
54
|
-
|
|
55
|
-
await runtime.registerPlugin(loggingPlugin({
|
|
56
|
-
outputs: [{
|
|
57
|
-
type: 'file',
|
|
58
|
-
path: './logs/app.log',
|
|
59
|
-
format: 'jsonl',
|
|
60
|
-
maxSize: '10MB',
|
|
61
|
-
maxFiles: 5
|
|
62
|
-
}]
|
|
63
|
-
}));
|
|
64
|
-
\`\`\`
|
|
65
|
-
|
|
66
|
-
**Features:**
|
|
67
|
-
- Automatic rotation
|
|
68
|
-
- Compression of old files
|
|
69
|
-
- Timestamp-based naming
|
|
70
|
-
|
|
71
|
-
**Use cases:**
|
|
72
|
-
- Production logging
|
|
73
|
-
- Audit trails
|
|
74
|
-
- Long-term storage
|
|
75
|
-
|
|
76
|
-
### Memory Sink
|
|
77
|
-
|
|
78
|
-
Buffers logs in memory:
|
|
79
|
-
|
|
80
|
-
\`\`\`ts
|
|
81
|
-
import { memorySinkPlugin } from '@vibesdotdev/logging';
|
|
82
|
-
|
|
83
|
-
await runtime.registerPlugin(memorySinkPlugin({
|
|
84
|
-
maxSize: 1000, // Keep last 1000 entries
|
|
85
|
-
flushOn: 'error' // Auto-flush on error level
|
|
86
|
-
}));
|
|
87
|
-
\`\`\`
|
|
88
|
-
|
|
89
|
-
**Use cases:**
|
|
90
|
-
- Testing
|
|
91
|
-
- Debug sessions
|
|
92
|
-
- Temporary buffering
|
|
93
|
-
|
|
94
|
-
### Buffer Sink
|
|
95
|
-
|
|
96
|
-
Circular buffer with flush capability:
|
|
97
|
-
|
|
98
|
-
\`\`\`ts
|
|
99
|
-
import { bufferSinkPlugin } from '@vibesdotdev/logging';
|
|
100
|
-
|
|
101
|
-
await runtime.registerPlugin(bufferSinkPlugin({
|
|
102
|
-
capacity: 500,
|
|
103
|
-
flushInterval: 60_000 // Flush every minute
|
|
104
|
-
}));
|
|
105
|
-
\`\`\`
|
|
106
|
-
|
|
107
|
-
**Use cases:**
|
|
108
|
-
- Batch processing
|
|
109
|
-
- Network optimization
|
|
110
|
-
- Error context capture
|
|
111
|
-
|
|
112
|
-
### Remote Output
|
|
113
|
-
|
|
114
|
-
Sends logs to remote service:
|
|
115
|
-
|
|
116
|
-
\`\`\`ts
|
|
117
|
-
import { remoteOutputPlugin } from '@vibesdotdev/logging';
|
|
118
|
-
|
|
119
|
-
await runtime.registerPlugin(remoteOutputPlugin({
|
|
120
|
-
endpoint: 'https://logs.vibes.dev/ingest',
|
|
121
|
-
apiKey: process.env.LOGS_API_KEY,
|
|
122
|
-
batchSize: 100,
|
|
123
|
-
flushInterval: 5_000
|
|
124
|
-
}));
|
|
125
|
-
\`\`\`
|
|
126
|
-
|
|
127
|
-
**Features:**
|
|
128
|
-
- Batched delivery
|
|
129
|
-
- Retry on failure
|
|
130
|
-
- Compression
|
|
131
|
-
|
|
132
|
-
**Use cases:**
|
|
133
|
-
- Centralized logging
|
|
134
|
-
- Log aggregation services
|
|
135
|
-
- Multi-app correlation
|
|
136
|
-
|
|
137
|
-
## Configuring Transports
|
|
138
|
-
|
|
139
|
-
### Multiple Transports
|
|
30
|
+
\`loggingPlugin\` is the default export and takes no arguments — it registers the kinds, descriptors, and lazy implementation loaders.
|
|
140
31
|
|
|
141
32
|
\`\`\`ts
|
|
142
|
-
import {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
sinks: ['console', 'memory'],
|
|
146
|
-
outputs: [{
|
|
147
|
-
type: 'file',
|
|
148
|
-
path: './logs/app.log'
|
|
149
|
-
}, {
|
|
150
|
-
type: 'remote',
|
|
151
|
-
endpoint: 'https://logs.vibes.dev/ingest'
|
|
152
|
-
}]
|
|
153
|
-
}));
|
|
154
|
-
\`\`\`
|
|
155
|
-
|
|
156
|
-
**Log flow:**
|
|
157
|
-
\`\`\`
|
|
158
|
-
Logger → Console (immediate)
|
|
159
|
-
→ Memory (buffer)
|
|
160
|
-
→ File (batched)
|
|
161
|
-
→ Remote (batched, compressed)
|
|
162
|
-
\`\`\`
|
|
33
|
+
import { bootstrapVibesRuntime } from '@vibesdotdev/kernel';
|
|
34
|
+
import loggingPlugin from '@vibesdotdev/logging/plugin';
|
|
35
|
+
import loggingConsumerPlugin from '@vibesdotdev/logging/consumer/plugin';
|
|
163
36
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
sinks: ['console'],
|
|
170
|
-
level: 'debug'
|
|
171
|
-
},
|
|
172
|
-
production: {
|
|
173
|
-
sinks: ['console', 'memory'],
|
|
174
|
-
outputs: [
|
|
175
|
-
{ type: 'file', path: '/var/log/app.log' },
|
|
176
|
-
{ type: 'remote', endpoint: 'https://logs.vibes.dev' }
|
|
177
|
-
],
|
|
178
|
-
level: 'info'
|
|
179
|
-
}
|
|
180
|
-
};
|
|
181
|
-
|
|
182
|
-
const env = process.env.NODE_ENV || 'development';
|
|
183
|
-
await runtime.registerPlugin(loggingPlugin(loggingConfig[env]));
|
|
184
|
-
\`\`\`
|
|
185
|
-
|
|
186
|
-
### Transport Selection by Hardware
|
|
187
|
-
|
|
188
|
-
\`\`\`ts
|
|
189
|
-
const loggingConfig = {
|
|
190
|
-
consumer: {
|
|
191
|
-
sinks: ['console'],
|
|
192
|
-
outputs: [{ type: 'file', path: '~/.logs/app.log' }]
|
|
193
|
-
},
|
|
194
|
-
cloud: {
|
|
195
|
-
sinks: ['stdout'],
|
|
196
|
-
outputs: [{ type: 'remote', endpoint: 'https://logs.vibes.dev' }]
|
|
197
|
-
}
|
|
198
|
-
};
|
|
199
|
-
|
|
200
|
-
const hardware = runtime.scope.hardware;
|
|
201
|
-
await runtime.registerPlugin(loggingPlugin(loggingConfig[hardware]));
|
|
202
|
-
\`\`\`
|
|
203
|
-
|
|
204
|
-
## Formatter Integration
|
|
205
|
-
|
|
206
|
-
Transports use formatters to format log entries:
|
|
207
|
-
|
|
208
|
-
### Pretty Formatter (Console)
|
|
209
|
-
|
|
210
|
-
\`\`\`ts
|
|
211
|
-
[INFO] [app:server] Server started on port 3000
|
|
37
|
+
// \`environment\` is your host's environment plugin.
|
|
38
|
+
const runtime = await bootstrapVibesRuntime({
|
|
39
|
+
environment,
|
|
40
|
+
composition: { kind: 'literal', plugins: [async () => loggingPlugin, async () => loggingConsumerPlugin] }
|
|
41
|
+
});
|
|
212
42
|
\`\`\`
|
|
213
43
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
44
|
+
Terminal hosts compose the consumer slice for colorized console and pretty formatting.
|
|
45
|
+
Browser and cloud hosts keep the universal plugin; its buffer and stdout sinks
|
|
46
|
+
use only memory and runtime ports. Browser console stays universal; the optional
|
|
47
|
+
browser plugin adds persistence. Scope filtering does not isolate static bundles.
|
|
48
|
+
|
|
49
|
+
## Built-in sinks
|
|
50
|
+
|
|
51
|
+
| ID | Description | Formats |
|
|
52
|
+
| --- | --- | --- |
|
|
53
|
+
| \`console\` | Colorized output to stderr (browser variant uses \`console.*\`) | \`pretty\`, \`jsonl\`, \`raw\` |
|
|
54
|
+
| \`stdout\` | Plain output to stderr, safe for MCP stdio mode | \`raw\` |
|
|
55
|
+
| \`buffer\` | In-memory retention with optional capacity refusal | \`raw\` |
|
|
56
|
+
| \`memory\` | Queryable in-memory buffer for tests and debugging | \`raw\` |
|
|
57
|
+
|
|
58
|
+
The \`buffer\` sink retains entries in order without an implicit limit. Its
|
|
59
|
+
registered \`SinkDescriptor.capacity\` optionally sets a positive integer bound
|
|
60
|
+
(zero, fractions and non-finite values are invalid). At capacity, \`emit\`
|
|
61
|
+
refuses before mutation with \`CapabilityError\` code \`UNAVAILABLE\`, reason
|
|
62
|
+
\`buffer-capacity-exceeded\`, retryable, without entry contents. The logger
|
|
63
|
+
falls back to its host console and reports the failure. \`drain()\` returns
|
|
64
|
+
accepted entries in order and empties storage; \`clear()\` also restores capacity.
|
|
65
|
+
\`flush()\` keeps entries. \`close()\` and runtime disposal clear instance memory;
|
|
66
|
+
use a durable output when entries must survive disposal.
|
|
67
|
+
|
|
68
|
+
The \`memory\` sink retains all entries by default until clear, close or runtime
|
|
69
|
+
disposal. Its registered \`SinkDescriptor.maxEntries\` accepts a finite
|
|
70
|
+
nonnegative integer: zero disables retention, positive bounds deliberately
|
|
71
|
+
evict oldest entries and preserve newest entries in emission order.
|
|
72
|
+
\`setMaxEntries(number)\` changes the bound and trims immediately; invalid
|
|
73
|
+
limits refuse \`INVALID_INPUT memory-entry-limit-invalid\`. This explicit
|
|
74
|
+
eviction differs from buffer capacity refusal. \`flush()\` keeps entries.
|
|
75
|
+
Queries filter by level, namespace, message and date and return independent array
|
|
76
|
+
snapshots. A limit selects newest matches in emission order; zero selects none.
|
|
77
|
+
Invalid queries refuse \`INVALID_INPUT memory-query-invalid\`.
|
|
78
|
+
\`MemorySinkQueryOptions\` remains available through \`./sinks\`; its owning
|
|
79
|
+
schemas and inferred types export through \`./schemas/sink\` and \`./schemas\`.
|
|
80
|
+
|
|
81
|
+
A sink implements the \`SinkImplementation\` interface — only \`emit\` is required.
|
|
82
|
+
It writes through the runtime it was handed (the host's \`runtime/stdio\`), never
|
|
83
|
+
the global \`console\`:
|
|
84
|
+
|
|
85
|
+
\`\`\`ts
|
|
86
|
+
import { getRuntimeStdio, type RuntimeRef } from '@vibesdotdev/kernel';
|
|
87
|
+
import type { RuntimeLogEntry, SinkImplementation } from '@vibesdotdev/logging';
|
|
88
|
+
|
|
89
|
+
function createStderrSink(runtime: RuntimeRef): SinkImplementation {
|
|
90
|
+
return {
|
|
91
|
+
async emit(entry: RuntimeLogEntry): Promise<void> {
|
|
92
|
+
const stdio = await getRuntimeStdio(runtime);
|
|
93
|
+
stdio.write('stderr', \`[\${entry.level}] [\${entry.namespace}] \${entry.message}\\n\`);
|
|
94
|
+
},
|
|
95
|
+
// Optional:
|
|
96
|
+
async flush() {},
|
|
97
|
+
async close() {}
|
|
98
|
+
};
|
|
99
|
+
}
|
|
223
100
|
\`\`\`
|
|
224
101
|
|
|
225
|
-
|
|
226
|
-
- Machine-parseable
|
|
227
|
-
- Structured data
|
|
228
|
-
- Log aggregation friendly
|
|
102
|
+
## Built-in outputs
|
|
229
103
|
|
|
230
|
-
|
|
104
|
+
Logging's one portable output is \`remote\` — it ships logs to a remote HTTP endpoint. It declares no hardware scope, so it selects on consumer and cloud hosts alike. File outputs (\`storage: 'file'\`) are implemented by the host's runtime environment (for example \`@vibesdotdev/host-node\`). Outputs are described by an \`OutputDescriptor\` whose \`storage\` is either \`'file'\` or \`'remote'\`:
|
|
231
105
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
{"level":"warn",...}
|
|
236
|
-
\`\`\`
|
|
237
|
-
|
|
238
|
-
**Features:**
|
|
239
|
-
- One JSON per line
|
|
240
|
-
- Easy streaming
|
|
241
|
-
- Efficient storage
|
|
242
|
-
|
|
243
|
-
## Transport Configuration
|
|
106
|
+
:::descriptor{kind="logging/output"}
|
|
107
|
+
The \`remote\` descriptor uses \`storage: 'remote'\`, \`format: 'jsonl'\`, and buffering (\`size\`, \`flushInterval\`, \`maxBufferEntries\`).
|
|
108
|
+
:::
|
|
244
109
|
|
|
245
|
-
|
|
110
|
+
An \`OutputImplementation\` is richer than a sink — it supports batched writes, rotation, and reads:
|
|
246
111
|
|
|
247
112
|
\`\`\`ts
|
|
248
|
-
import {
|
|
113
|
+
import type { OutputImplementation } from '@vibesdotdev/logging';
|
|
249
114
|
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
115
|
+
// Interface shape (implemented by the runtime-loaded output):
|
|
116
|
+
// readonly id: string
|
|
117
|
+
// write(entry): Promise<void>
|
|
118
|
+
// writeBatch?(entries): Promise<void>
|
|
119
|
+
// writeLine?(line): Promise<void>
|
|
120
|
+
// flush(): Promise<void>
|
|
121
|
+
// close(): Promise<void>
|
|
122
|
+
// rotate?(): Promise<{ archived: string | null }> // null: nothing to rotate
|
|
123
|
+
// read(options?): Promise<string[]>
|
|
124
|
+
// tail(callback, options?): TailHandle
|
|
125
|
+
// stats(): Promise<OutputStats>
|
|
255
126
|
\`\`\`
|
|
256
127
|
|
|
257
|
-
|
|
128
|
+
## Selecting transports per logger
|
|
258
129
|
|
|
259
|
-
|
|
260
|
-
import { fileOutputPlugin } from '@vibesdotdev/logging';
|
|
261
|
-
|
|
262
|
-
await runtime.registerPlugin(fileOutputPlugin({
|
|
263
|
-
path: './logs/app.log',
|
|
264
|
-
format: 'jsonl',
|
|
265
|
-
rotation: {
|
|
266
|
-
strategy: 'size',
|
|
267
|
-
maxSize: '10MB',
|
|
268
|
-
maxFiles: 5,
|
|
269
|
-
compress: true
|
|
270
|
-
},
|
|
271
|
-
schedule: {
|
|
272
|
-
type: 'daily',
|
|
273
|
-
time: '00:00' // Rotate at midnight
|
|
274
|
-
}
|
|
275
|
-
}));
|
|
276
|
-
\`\`\`
|
|
277
|
-
|
|
278
|
-
### Remote Output
|
|
130
|
+
Transport selection lives on the \`LoggerDescriptor\`. Reference sinks and outputs by their IDs:
|
|
279
131
|
|
|
280
132
|
\`\`\`ts
|
|
281
|
-
import {
|
|
282
|
-
|
|
283
|
-
await runtime.registerPlugin(remoteOutputPlugin({
|
|
284
|
-
endpoint: 'https://logs.vibes.dev/ingest',
|
|
285
|
-
method: 'POST',
|
|
286
|
-
headers: {
|
|
287
|
-
'Authorization': \`Bearer \${process.env.LOGS_API_KEY}\`,
|
|
288
|
-
'Content-Type': 'application/json'
|
|
289
|
-
},
|
|
290
|
-
batch: {
|
|
291
|
-
maxSize: 100,
|
|
292
|
-
maxWait: 5_000
|
|
293
|
-
},
|
|
294
|
-
retry: {
|
|
295
|
-
maxAttempts: 3,
|
|
296
|
-
backoff: 'exponential',
|
|
297
|
-
initialDelay: 1_000
|
|
298
|
-
},
|
|
299
|
-
compression: 'gzip'
|
|
300
|
-
}));
|
|
301
|
-
\`\`\`
|
|
133
|
+
import type { LoggerDescriptor } from '@vibesdotdev/logging';
|
|
302
134
|
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
135
|
+
const descriptor: LoggerDescriptor = {
|
|
136
|
+
kind: 'logging/logger',
|
|
137
|
+
id: 'myapp',
|
|
138
|
+
namespace: 'myapp',
|
|
139
|
+
runtime: 'server',
|
|
140
|
+
level: 'info',
|
|
141
|
+
sinks: ['console'], // default is ['console']
|
|
142
|
+
outputs: ['remote'] // optional, for durable streams
|
|
143
|
+
};
|
|
311
144
|
|
|
312
|
-
|
|
145
|
+
export default descriptor;
|
|
313
146
|
\`\`\`
|
|
314
147
|
|
|
315
|
-
|
|
148
|
+
Then resolve the logger by ID at runtime:
|
|
316
149
|
|
|
317
150
|
\`\`\`ts
|
|
318
|
-
|
|
319
|
-
await transport.flush();
|
|
151
|
+
import { getLogger } from '@vibesdotdev/logging';
|
|
320
152
|
|
|
321
|
-
//
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
}));
|
|
153
|
+
// runtime is the runtime your host booted and handed to this code.
|
|
154
|
+
const logger = getLogger('myapp', runtime);
|
|
155
|
+
logger.info('Application started', { version: '1.0.0' });
|
|
325
156
|
\`\`\`
|
|
326
157
|
|
|
327
|
-
|
|
158
|
+
Derive a child for a sub-namespace instead of resolving another id:
|
|
328
159
|
|
|
329
160
|
\`\`\`ts
|
|
330
|
-
|
|
331
|
-
|
|
161
|
+
const dbLogger = logger.child({ namespace: 'database' });
|
|
162
|
+
dbLogger.debug('Connected');
|
|
332
163
|
\`\`\`
|
|
333
164
|
|
|
334
|
-
##
|
|
165
|
+
## Hardware-aware resolution
|
|
335
166
|
|
|
336
|
-
|
|
167
|
+
Both the \`logging/sink\` and \`logging/output\` kinds resolve candidates against the active \`scope.hardware\`. Descriptors with no \`hardware\` field match everywhere; descriptors that declare \`hardware\` are preferred when the hardware matches (\`remote\` declares none, so it matches everywhere). You select transports the same way on every target — the runtime picks the right implementation for consumer vs. cloud.
|
|
337
168
|
|
|
338
|
-
|
|
339
|
-
const consoleSink = await runtime.query('logging/sink')
|
|
340
|
-
.filter(d => d.id === 'console')
|
|
341
|
-
.resolve();
|
|
342
|
-
\`\`\`
|
|
169
|
+
## Formats
|
|
343
170
|
|
|
344
|
-
|
|
171
|
+
Sinks and outputs both use the shared \`SinkFormat\` enum:
|
|
345
172
|
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
173
|
+
| Format | Notes |
|
|
174
|
+
| --- | --- |
|
|
175
|
+
| \`pretty\` | Human-readable, color-coded (console default) |
|
|
176
|
+
| \`jsonl\` | One JSON object per line (output/file default) |
|
|
177
|
+
| \`json\` | JSON object per entry |
|
|
178
|
+
| \`json5\` | JSON5 variant |
|
|
179
|
+
| \`raw\` | Unformatted |
|
|
353
180
|
|
|
354
|
-
|
|
355
|
-
const sinks = runtime.query('logging/sink').descriptors();
|
|
356
|
-
const outputs = runtime.query('logging/output').descriptors();
|
|
357
|
-
|
|
358
|
-
console.log('Available sinks:', sinks.map(s => s.id));
|
|
359
|
-
console.log('Available outputs:', outputs.map(o => o.id));
|
|
360
|
-
\`\`\`
|
|
181
|
+
## Programmatic logger options
|
|
361
182
|
|
|
362
|
-
|
|
183
|
+
\`RuntimeLoggerOptions\` lets code construct a logger without a descriptor. It accepts \`sinks\` (IDs to resolve) or \`sinkImpls\` (direct implementations that bypass runtime resolution):
|
|
363
184
|
|
|
364
185
|
\`\`\`ts
|
|
365
|
-
import {
|
|
366
|
-
import type { SinkImplementation } from '@vibesdotdev/logging';
|
|
367
|
-
|
|
368
|
-
class CustomSink implements SinkImplementation {
|
|
369
|
-
constructor(private config: CustomConfig) {}
|
|
370
|
-
|
|
371
|
-
emit(entry: LogEntry): void {
|
|
372
|
-
// Custom transport logic
|
|
373
|
-
console.log('Custom:', entry);
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
async flush(): Promise<void> {
|
|
377
|
-
// Flush buffered entries
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
async close(): Promise<void> {
|
|
381
|
-
// Cleanup resources
|
|
382
|
-
}
|
|
383
|
-
}
|
|
186
|
+
import type { RuntimeLoggerOptions } from '@vibesdotdev/logging';
|
|
384
187
|
|
|
385
|
-
const
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
188
|
+
const opts: RuntimeLoggerOptions = {
|
|
189
|
+
namespace: 'jobs',
|
|
190
|
+
runtime: 'worker',
|
|
191
|
+
level: 'debug',
|
|
192
|
+
sinks: ['stdout']
|
|
389
193
|
};
|
|
390
|
-
|
|
391
|
-
export const customSinkPlugin = createRuntimePlugin({
|
|
392
|
-
id: 'custom-sink',
|
|
393
|
-
kinds: [{
|
|
394
|
-
id: 'logging/sink',
|
|
395
|
-
descriptorSchema: SinkDescriptorSchema,
|
|
396
|
-
defaultImplementation: CustomSink
|
|
397
|
-
}],
|
|
398
|
-
descriptors: [descriptor]
|
|
399
|
-
});
|
|
400
194
|
\`\`\`
|
|
401
195
|
|
|
402
|
-
## Transport Best Practices
|
|
403
|
-
|
|
404
|
-
1. **Use appropriate transports** — Console for dev, file/remote for prod
|
|
405
|
-
2. **Configure rotation** — Prevent disk exhaustion
|
|
406
|
-
3. **Batch remote sends** — Reduce network overhead
|
|
407
|
-
4. **Handle failures gracefully** — Don't crash on log failures
|
|
408
|
-
5. **Sanitize sensitive data** — Remove PII before sending
|
|
409
|
-
6. **Monitor transport health** — Alert on delivery failures
|
|
410
|
-
|
|
411
196
|
:::card{title="See also"}
|
|
412
|
-
- [\`logging.levels\`](logging.levels) — Log levels
|
|
197
|
+
- [\`logging.levels\`](logging.levels) — Log levels and filtering
|
|
413
198
|
- [\`logging.structured\`](logging.structured) — Structured logging
|
|
414
199
|
- [\`config.environment\`](config.environment) — Environment configuration
|
|
415
200
|
:::
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transports.docs.descriptor.js","sourceRoot":"","sources":["../../src/docs/transports.docs.descriptor.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAwB;IACvC,IAAI,EAAE,YAAY;IAClB,EAAE,EAAE,oBAAoB;IACxB,KAAK,EAAE,oBAAoB;IAC3B,OAAO,EAAE,8DAA8D;IACvE,IAAI,EAAE;QACL,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE
|
|
1
|
+
{"version":3,"file":"transports.docs.descriptor.js","sourceRoot":"","sources":["../../src/docs/transports.docs.descriptor.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAwB;IACvC,IAAI,EAAE,YAAY;IAClB,EAAE,EAAE,oBAAoB;IACxB,KAAK,EAAE,oBAAoB;IAC3B,OAAO,EAAE,8DAA8D;IACvE,IAAI,EAAE;QACL,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgMT;KACC;IACD,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;IACvE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC;IAClC,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,IAAI;CACb,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { FormatterImplementation, FormatterContext } from '../../kinds/formatter.ts';
|
|
7
7
|
import type { FormatterDescriptor } from '../../schemas/formatter.ts';
|
|
8
|
-
import type
|
|
8
|
+
import { type RuntimeLogEntry } from '../../schemas/entry.ts';
|
|
9
9
|
/**
|
|
10
10
|
* JSON formatter - indented JSON for readability.
|
|
11
11
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.impl.d.ts","sourceRoot":"","sources":["../../../src/formatters/json/json.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"json.impl.d.ts","sourceRoot":"","sources":["../../../src/formatters/json/json.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAErF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,YAAW,uBAAuB;IACpE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,gBAAgB;IAMvE,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM;IAItC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe;IAIzC,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM;IAI/C,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE;CAIhD"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Pretty-printed JSON with configurable indentation.
|
|
5
5
|
*/
|
|
6
|
+
import { RuntimeLogEntrySchema } from "../../schemas/entry.js";
|
|
6
7
|
/**
|
|
7
8
|
* JSON formatter - indented JSON for readability.
|
|
8
9
|
*/
|
|
@@ -19,14 +20,14 @@ export default class JsonFormatter {
|
|
|
19
20
|
return JSON.stringify(entry, null, this.indent);
|
|
20
21
|
}
|
|
21
22
|
parse(formatted) {
|
|
22
|
-
return JSON.parse(formatted);
|
|
23
|
+
return RuntimeLogEntrySchema.parse(JSON.parse(formatted));
|
|
23
24
|
}
|
|
24
25
|
formatBatch(entries) {
|
|
25
26
|
return JSON.stringify(entries, null, this.indent);
|
|
26
27
|
}
|
|
27
28
|
parseBatch(formatted) {
|
|
28
29
|
const parsed = JSON.parse(formatted);
|
|
29
|
-
return Array.isArray(parsed) ? parsed : [parsed];
|
|
30
|
+
return RuntimeLogEntrySchema.array().parse(Array.isArray(parsed) ? parsed : [parsed]);
|
|
30
31
|
}
|
|
31
32
|
}
|
|
32
33
|
//# sourceMappingURL=json.impl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.impl.js","sourceRoot":"","sources":["../../../src/formatters/json/json.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"json.impl.js","sourceRoot":"","sources":["../../../src/formatters/json/json.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,qBAAqB,EAAwB,MAAM,wBAAwB,CAAC;AAErF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;IACxB,EAAE,CAAS;IACX,UAAU,CAAsB;IACxB,MAAM,CAAS;IAEhC,YAAY,UAA+B,EAAE,QAA0B;QACtE,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,KAAsB;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,SAAiB;QACtB,OAAO,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,WAAW,CAAC,OAA0B;QACrC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,SAAiB;QAC3B,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,OAAO,qBAAqB,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACvF,CAAC;CACD"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { FormatterImplementation, FormatterContext } from '../../kinds/formatter.ts';
|
|
8
8
|
import type { FormatterDescriptor } from '../../schemas/formatter.ts';
|
|
9
|
-
import type
|
|
9
|
+
import { type RuntimeLogEntry } from '../../schemas/entry.ts';
|
|
10
10
|
/**
|
|
11
11
|
* JSON5 formatter - human-readable JSON.
|
|
12
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json5.impl.d.ts","sourceRoot":"","sources":["../../../src/formatters/json5/json5.impl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"json5.impl.d.ts","sourceRoot":"","sources":["../../../src/formatters/json5/json5.impl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,uBAAuB;IACrE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,gBAAgB;IAMvE,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM;IAItC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe;IAIzC,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM;IAI/C,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE;CAIhD"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Uses JSON5 for human-readable output with comments support.
|
|
5
5
|
* Note: For serialization, we use standard JSON since JSON5 is a superset.
|
|
6
6
|
*/
|
|
7
|
+
import { RuntimeLogEntrySchema } from "../../schemas/entry.js";
|
|
7
8
|
import JSON5 from 'json5';
|
|
8
9
|
/**
|
|
9
10
|
* JSON5 formatter - human-readable JSON.
|
|
@@ -21,14 +22,14 @@ export default class Json5Formatter {
|
|
|
21
22
|
return JSON5.stringify(entry, null, this.indent);
|
|
22
23
|
}
|
|
23
24
|
parse(formatted) {
|
|
24
|
-
return JSON5.parse(formatted);
|
|
25
|
+
return RuntimeLogEntrySchema.parse(JSON5.parse(formatted));
|
|
25
26
|
}
|
|
26
27
|
formatBatch(entries) {
|
|
27
28
|
return JSON5.stringify(entries, null, this.indent);
|
|
28
29
|
}
|
|
29
30
|
parseBatch(formatted) {
|
|
30
31
|
const parsed = JSON5.parse(formatted);
|
|
31
|
-
return Array.isArray(parsed) ? parsed : [parsed];
|
|
32
|
+
return RuntimeLogEntrySchema.array().parse(Array.isArray(parsed) ? parsed : [parsed]);
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
35
|
//# sourceMappingURL=json5.impl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json5.impl.js","sourceRoot":"","sources":["../../../src/formatters/json5/json5.impl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"json5.impl.js","sourceRoot":"","sources":["../../../src/formatters/json5/json5.impl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,qBAAqB,EAAwB,MAAM,wBAAwB,CAAC;AACrF,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IACzB,EAAE,CAAS;IACX,UAAU,CAAsB;IACxB,MAAM,CAAS;IAEhC,YAAY,UAA+B,EAAE,QAA0B;QACtE,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,KAAsB;QAC5B,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,SAAiB;QACtB,OAAO,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,WAAW,CAAC,OAA0B;QACrC,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,UAAU,CAAC,SAAiB;QAC3B,MAAM,MAAM,GAAY,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/C,OAAO,qBAAqB,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACvF,CAAC;CACD"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { FormatterImplementation, FormatterContext } from '../../kinds/formatter.ts';
|
|
7
7
|
import type { FormatterDescriptor } from '../../schemas/formatter.ts';
|
|
8
|
-
import type
|
|
8
|
+
import { type RuntimeLogEntry } from '../../schemas/entry.ts';
|
|
9
9
|
/**
|
|
10
10
|
* JSONL formatter - one JSON object per line.
|
|
11
11
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonl.impl.d.ts","sourceRoot":"","sources":["../../../src/formatters/jsonl/jsonl.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"jsonl.impl.d.ts","sourceRoot":"","sources":["../../../src/formatters/jsonl/jsonl.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAErF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,uBAAuB;IACrE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;gBAE7B,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,gBAAgB;IAKvE,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM;IAItC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe;IAIzC,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM;IAI/C,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE;CAIhD"}
|