evlog 2.10.0 → 2.11.1
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/README.md +27 -1
- package/dist/{_drain-CJDuM0ua.mjs → _drain-YH8ERc5l.mjs} +1 -1
- package/dist/{_drain-CJDuM0ua.mjs.map → _drain-YH8ERc5l.mjs.map} +1 -1
- package/dist/{_http-rRIz2Q0L.mjs → _http-C_2wbJw3.mjs} +7 -21
- package/dist/_http-C_2wbJw3.mjs.map +1 -0
- package/dist/{_severity-BLiOKoxh.mjs → _severity-BZhz3f9e.mjs} +1 -1
- package/dist/{_severity-BLiOKoxh.mjs.map → _severity-BZhz3f9e.mjs.map} +1 -1
- package/dist/adapters/axiom.d.mts +1 -1
- package/dist/adapters/axiom.d.mts.map +1 -1
- package/dist/adapters/axiom.mjs +2 -2
- package/dist/adapters/better-stack.d.mts +1 -1
- package/dist/adapters/better-stack.d.mts.map +1 -1
- package/dist/adapters/better-stack.mjs +2 -2
- package/dist/adapters/datadog.d.mts +86 -0
- package/dist/adapters/datadog.d.mts.map +1 -0
- package/dist/adapters/datadog.mjs +172 -0
- package/dist/adapters/datadog.mjs.map +1 -0
- package/dist/adapters/fs.d.mts +1 -1
- package/dist/adapters/fs.d.mts.map +1 -1
- package/dist/adapters/fs.mjs +1 -1
- package/dist/adapters/hyperdx.d.mts +1 -1
- package/dist/adapters/hyperdx.d.mts.map +1 -1
- package/dist/adapters/hyperdx.mjs +2 -2
- package/dist/adapters/otlp.d.mts +1 -1
- package/dist/adapters/otlp.d.mts.map +1 -1
- package/dist/adapters/otlp.mjs +3 -3
- package/dist/adapters/posthog.d.mts +1 -1
- package/dist/adapters/posthog.d.mts.map +1 -1
- package/dist/adapters/posthog.mjs +2 -2
- package/dist/adapters/sentry.d.mts +1 -1
- package/dist/adapters/sentry.d.mts.map +1 -1
- package/dist/adapters/sentry.mjs +3 -3
- package/dist/ai/index.d.mts +1 -1
- package/dist/browser.d.mts +1 -1
- package/dist/{dist-BsWcv7B8.mjs → dist-BFn8qsRC.mjs} +1 -1
- package/dist/{dist-BsWcv7B8.mjs.map → dist-BFn8qsRC.mjs.map} +1 -1
- package/dist/elysia/index.d.mts +2 -2
- package/dist/elysia/index.mjs +1 -1
- package/dist/enrichers.d.mts +1 -1
- package/dist/{error-BJ-I4sim.d.mts → error-plrBYLQk.d.mts} +7 -2
- package/dist/error-plrBYLQk.d.mts.map +1 -0
- package/dist/error.d.mts +1 -1
- package/dist/error.mjs +15 -0
- package/dist/error.mjs.map +1 -1
- package/dist/{errors-DBIBK0Bt.d.mts → errors-bPoj9UZk.d.mts} +2 -2
- package/dist/{errors-DBIBK0Bt.d.mts.map → errors-bPoj9UZk.d.mts.map} +1 -1
- package/dist/express/index.d.mts +2 -2
- package/dist/express/index.mjs +2 -2
- package/dist/fastify/index.d.mts +2 -2
- package/dist/fastify/index.d.mts.map +1 -1
- package/dist/fastify/index.mjs +2 -2
- package/dist/{headers-DrdQ6uG5.mjs → headers-BSi3UHKL.mjs} +1 -1
- package/dist/{headers-DrdQ6uG5.mjs.map → headers-BSi3UHKL.mjs.map} +1 -1
- package/dist/hono/index.d.mts +2 -2
- package/dist/hono/index.mjs +1 -1
- package/dist/index.d.mts +5 -5
- package/dist/{logger-DU3aQIUk.d.mts → logger-CG1eop2_.d.mts} +2 -2
- package/dist/{logger-DU3aQIUk.d.mts.map → logger-CG1eop2_.d.mts.map} +1 -1
- package/dist/logger.d.mts +1 -1
- package/dist/logger.mjs +2 -1
- package/dist/logger.mjs.map +1 -1
- package/dist/{middleware-BjERCCEd.d.mts → middleware-DojmTj9Y.d.mts} +2 -2
- package/dist/{middleware-BjERCCEd.d.mts.map → middleware-DojmTj9Y.d.mts.map} +1 -1
- package/dist/nestjs/index.d.mts +2 -2
- package/dist/nestjs/index.mjs +2 -2
- package/dist/next/client.d.mts +3 -3
- package/dist/next/client.d.mts.map +1 -1
- package/dist/next/index.d.mts +4 -4
- package/dist/next/index.d.mts.map +1 -1
- package/dist/next/instrumentation.d.mts +1 -1
- package/dist/nitro/errorHandler.d.mts +2 -2
- package/dist/nitro/module.d.mts +2 -2
- package/dist/nitro/plugin.d.mts +2 -2
- package/dist/nitro/plugin.mjs +18 -7
- package/dist/nitro/plugin.mjs.map +1 -1
- package/dist/nitro/v3/errorHandler.d.mts +2 -2
- package/dist/nitro/v3/errorHandler.mjs +1 -1
- package/dist/nitro/v3/index.d.mts +3 -1
- package/dist/nitro/v3/index.mjs +3 -1
- package/dist/nitro/v3/middleware.d.mts +11 -3
- package/dist/nitro/v3/middleware.d.mts.map +1 -1
- package/dist/nitro/v3/middleware.mjs +1 -21
- package/dist/nitro/v3/middleware.mjs.map +1 -1
- package/dist/nitro/v3/module.d.mts +1 -1
- package/dist/nitro/v3/plugin.d.mts +2 -2
- package/dist/nitro/v3/plugin.mjs +21 -5
- package/dist/nitro/v3/plugin.mjs.map +1 -1
- package/dist/nitro/v3/useLogger.d.mts +1 -1
- package/dist/{nitro-BXmkH7BD.d.mts → nitro-CfGx0wDJ.d.mts} +2 -3
- package/dist/nitro-CfGx0wDJ.d.mts.map +1 -0
- package/dist/nitroConfigBridge-fidbf-Y_.mjs +92 -0
- package/dist/nitroConfigBridge-fidbf-Y_.mjs.map +1 -0
- package/dist/nuxt/module.d.mts +3 -3
- package/dist/nuxt/module.mjs +4 -2
- package/dist/nuxt/module.mjs.map +1 -1
- package/dist/{parseError-CcvBYsbl.d.mts → parseError-B_qXj8x4.d.mts} +2 -2
- package/dist/parseError-B_qXj8x4.d.mts.map +1 -0
- package/dist/react-router/index.d.mts +4 -4
- package/dist/react-router/index.d.mts.map +1 -1
- package/dist/react-router/index.mjs +2 -2
- package/dist/runtime/client/log.d.mts +1 -1
- package/dist/runtime/server/routes/_evlog/ingest.post.d.mts +2 -2
- package/dist/runtime/server/useLogger.d.mts +1 -1
- package/dist/runtime/utils/parseError.d.mts +2 -2
- package/dist/{storage-DsueXspk.mjs → storage-B6NPh8rV.mjs} +1 -1
- package/dist/{storage-DsueXspk.mjs.map → storage-B6NPh8rV.mjs.map} +1 -1
- package/dist/sveltekit/index.d.mts +2 -2
- package/dist/sveltekit/index.mjs +2 -2
- package/dist/toolkit.d.mts +3 -3
- package/dist/toolkit.mjs +2 -2
- package/dist/{types-DbVDS9eu.d.mts → types-v_JkG_D7.d.mts} +6 -1
- package/dist/{types-DbVDS9eu.d.mts.map → types-v_JkG_D7.d.mts.map} +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/{useLogger-DY9IByDJ.d.mts → useLogger-TjKH37BO.d.mts} +2 -2
- package/dist/{useLogger-DY9IByDJ.d.mts.map → useLogger-TjKH37BO.d.mts.map} +1 -1
- package/dist/utils.d.mts +1 -1
- package/dist/vite/index.d.mts +1 -1
- package/dist/workers.d.mts +1 -1
- package/package.json +31 -17
- package/dist/_http-rRIz2Q0L.mjs.map +0 -1
- package/dist/error-BJ-I4sim.d.mts.map +0 -1
- package/dist/nitro-BXmkH7BD.d.mts.map +0 -1
- package/dist/parseError-CcvBYsbl.d.mts.map +0 -1
package/dist/nuxt/module.mjs
CHANGED
|
@@ -7,7 +7,7 @@ var name = "evlog";
|
|
|
7
7
|
var module_default = defineNuxtModule({
|
|
8
8
|
meta: {
|
|
9
9
|
name,
|
|
10
|
-
version: "2.
|
|
10
|
+
version: "2.11.1",
|
|
11
11
|
configKey: name,
|
|
12
12
|
docs: "https://evlog.dev"
|
|
13
13
|
},
|
|
@@ -17,10 +17,12 @@ var module_default = defineNuxtModule({
|
|
|
17
17
|
const transportEnabled = options.transport?.enabled ?? false;
|
|
18
18
|
const transportEndpoint = options.transport?.endpoint ?? "/api/_evlog/ingest";
|
|
19
19
|
const transportCredentials = options.transport?.credentials ?? "same-origin";
|
|
20
|
+
nuxt.options.runtimeConfig.evlog = options;
|
|
20
21
|
nuxt.hook("nitro:config", (nitroConfig) => {
|
|
21
22
|
nitroConfig.errorHandler = nitroConfig.errorHandler || resolver.resolve("../nitro/errorHandler");
|
|
23
|
+
const evlogForNitro = nuxt.options.runtimeConfig.evlog ?? options;
|
|
24
|
+
if (evlogForNitro !== void 0 && typeof evlogForNitro === "object") process.env.__EVLOG_CONFIG = JSON.stringify(evlogForNitro);
|
|
22
25
|
});
|
|
23
|
-
nuxt.options.runtimeConfig.evlog = options;
|
|
24
26
|
nuxt.options.runtimeConfig.public.evlog = {
|
|
25
27
|
enabled: options.enabled ?? true,
|
|
26
28
|
console: options.console,
|
package/dist/nuxt/module.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":[],"sources":["../../package.json","../../src/nuxt/module.ts"],"sourcesContent":["","import {\n addImports,\n addPlugin,\n addServerHandler,\n addServerImports,\n addServerPlugin,\n addVitePlugin,\n createResolver,\n defineNuxtModule,\n} from '@nuxt/kit'\nimport type { NitroConfig } from 'nitropack'\nimport type { EnvironmentContext, LogLevel, RouteConfig, SamplingConfig, TransportConfig } from '../types'\nimport { createStripPlugin } from '../vite/strip'\nimport { createSourceLocationPlugin } from '../vite/source-location'\nimport { name, version } from '../../package.json'\n\ninterface ModuleAxiomBaseConfig {\n /** Axiom dataset name */\n dataset: string\n /** Axiom API token */\n token: string\n /** Organization ID (required for Personal Access Tokens) */\n orgId?: string\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n}\n\ninterface ModuleAxiomEdgeConfig {\n /**\n * Edge URL for Axiom ingest/query endpoints.\n * If no path is provided, uses /v1/ingest/{dataset}.\n * If a custom path is provided, it is used as-is (trailing slash trimmed).\n */\n edgeUrl: string\n /** Mutually exclusive with edgeUrl. */\n baseUrl?: never\n}\n\ninterface ModuleAxiomEndpointConfig {\n /** Base URL for Axiom API. Uses /v1/datasets/{dataset}/ingest. */\n baseUrl?: string\n /** Mutually exclusive with baseUrl. */\n edgeUrl?: never\n}\n\ntype ModuleAxiomConfig = ModuleAxiomBaseConfig & (ModuleAxiomEdgeConfig | ModuleAxiomEndpointConfig)\n\nexport interface ModuleOptions {\n /**\n * Enable or disable all logging globally.\n * When false, all emits, tagged logs, and request logger operations become no-ops.\n * @default true\n */\n enabled?: boolean\n\n /**\n * Environment context overrides.\n */\n env?: Partial<EnvironmentContext>\n\n /**\n * Enable or disable browser console output.\n * When false, client-side logs are suppressed in the browser DevTools console\n * but still sent to the server via transport (if enabled).\n * @default true\n */\n console?: boolean\n\n /**\n * Enable pretty printing.\n * @default true in development, false in production\n */\n pretty?: boolean\n\n /**\n * Suppress built-in console output.\n * When true, events are still built, sampled, and passed to drains,\n * but nothing is written to console. Use when drains own the output\n * channel (e.g., stdout-based platforms like GCP Cloud Run, AWS Lambda).\n * @default false\n */\n silent?: boolean\n\n /**\n * Route patterns to include in logging.\n * Supports glob patterns like '/api/**'.\n * If not set, all routes are logged.\n * @example ['/api/**', '/auth/**']\n */\n include?: string[]\n\n /**\n * Route patterns to exclude from logging.\n * Supports glob patterns like '/api/_nuxt_icon/**'.\n * Exclusions take precedence over inclusions.\n * @example ['/api/_nuxt_icon/**', '/health']\n */\n exclude?: string[]\n\n /**\n * Route-specific service configuration.\n * Allows setting different service names for different routes.\n * Patterns are matched using glob syntax.\n *\n * @example\n * ```ts\n * routes: {\n * '/api/foo/**': { service: 'service1' },\n * '/api/bar/**': { service: 'service2' }\n * }\n * ```\n */\n routes?: Record<string, RouteConfig>\n\n /**\n * Sampling configuration for filtering logs.\n * Allows configuring what percentage of logs to keep per level.\n *\n * @example\n * ```ts\n * sampling: {\n * rates: {\n * info: 10, // Keep 10% of info logs\n * warn: 50, // Keep 50% of warning logs\n * debug: 5, // Keep 5% of debug logs\n * error: 100, // Always keep errors (default)\n * }\n * }\n * ```\n */\n sampling?: SamplingConfig\n\n /**\n * Transport configuration for sending client logs to the server.\n *\n * @example\n * ```ts\n * transport: {\n * enabled: true, // send client logs to server via API endpoint\n * endpoint: '/api/_evlog/ingest', // default endpoint (or custom endpoint)\n * credentials: 'include', // optional: cross-origin ingest\n * }\n * ```\n */\n transport?: TransportConfig\n\n /**\n * Axiom adapter configuration.\n * When configured, use `createAxiomDrain()` from `evlog/axiom` to send logs.\n *\n * @example\n * ```ts\n * axiom: {\n * dataset: 'my-app-logs',\n * token: process.env.AXIOM_TOKEN,\n * }\n * ```\n */\n axiom?: ModuleAxiomConfig\n\n /**\n * OTLP adapter configuration.\n * When configured, use `createOTLPDrain()` from `evlog/otlp` to send logs.\n *\n * @example\n * ```ts\n * otlp: {\n * endpoint: 'http://localhost:4318',\n * headers: {\n * 'Authorization': `Basic ${process.env.GRAFANA_TOKEN}`,\n * },\n * }\n * ```\n */\n otlp?: {\n /** OTLP HTTP endpoint (e.g., http://localhost:4318) */\n endpoint: string\n /** Override service name (defaults to event.service) */\n serviceName?: string\n /** Additional resource attributes */\n resourceAttributes?: Record<string, string | number | boolean>\n /** Custom headers (e.g., for authentication) */\n headers?: Record<string, string>\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n }\n\n /**\n * PostHog adapter configuration.\n * When configured, use `createPostHogDrain()` from `evlog/posthog` to send logs\n * via PostHog Logs (OTLP).\n *\n * @example\n * ```ts\n * posthog: {\n * apiKey: process.env.POSTHOG_API_KEY,\n * }\n * ```\n */\n posthog?: {\n /** PostHog project API key */\n apiKey: string\n /** PostHog host URL. Default: https://us.i.posthog.com */\n host?: string\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n }\n\n /**\n * Sentry adapter configuration.\n * When configured, use `createSentryDrain()` from `evlog/sentry` to send logs.\n *\n * @example\n * ```ts\n * sentry: {\n * dsn: process.env.SENTRY_DSN,\n * }\n * ```\n */\n sentry?: {\n /** Sentry DSN */\n dsn: string\n /** Environment override (defaults to event.environment) */\n environment?: string\n /** Release version override (defaults to event.version) */\n release?: string\n /** Additional tags to attach as attributes */\n tags?: Record<string, string>\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n }\n\n /**\n * Log levels to strip from production builds. Set to [] to disable.\n * @default ['debug']\n */\n strip?: LogLevel[]\n\n /**\n * Inject source file:line into log calls.\n * When true, active in both dev and prod.\n * When 'dev', active only in development.\n * @default 'dev'\n */\n sourceLocation?: boolean | 'dev'\n\n /**\n * How long to retain events before cleanup (used by @evlog/nuxthub).\n * Supports \"30d\" (days), \"24h\" (hours), \"60m\" (minutes).\n * @default '30d'\n */\n retention?: string\n}\n\nexport default defineNuxtModule<ModuleOptions>({\n meta: {\n name,\n version,\n configKey: name,\n docs: 'https://evlog.dev',\n },\n defaults: {},\n setup(options, nuxt) {\n const resolver = createResolver(import.meta.url)\n\n const transportEnabled = options.transport?.enabled ?? false\n const transportEndpoint = options.transport?.endpoint ?? '/api/_evlog/ingest'\n const transportCredentials = options.transport?.credentials ?? 'same-origin'\n\n // Register custom error handler for proper EvlogError serialization\n // Only set if not already configured to avoid overwriting user's custom handler\n // @ts-expect-error nitro:config hook exists but is not in NuxtHooks type\n nuxt.hook('nitro:config', (nitroConfig: NitroConfig) => {\n nitroConfig.errorHandler = nitroConfig.errorHandler || resolver.resolve('../nitro/errorHandler')\n })\n\n nuxt.options.runtimeConfig.evlog = options\n nuxt.options.runtimeConfig.public.evlog = {\n enabled: options.enabled ?? true,\n console: options.console,\n pretty: options.pretty,\n transport: {\n enabled: transportEnabled,\n endpoint: transportEndpoint,\n credentials: transportCredentials,\n },\n }\n\n if (transportEnabled) {\n addServerHandler({\n route: transportEndpoint,\n method: 'post',\n handler: resolver.resolve('../runtime/server/routes/_evlog/ingest.post'),\n })\n }\n\n addServerPlugin(resolver.resolve('../nitro/plugin'))\n\n addPlugin({\n src: resolver.resolve('../runtime/client/plugin'),\n mode: 'client',\n })\n\n addImports([\n {\n name: 'log',\n from: resolver.resolve('../runtime/client/log'),\n },\n {\n name: 'setIdentity',\n from: resolver.resolve('../runtime/client/log'),\n },\n {\n name: 'clearIdentity',\n from: resolver.resolve('../runtime/client/log'),\n },\n {\n name: 'createEvlogError',\n from: resolver.resolve('../error'),\n },\n {\n name: 'parseError',\n from: resolver.resolve('../runtime/utils/parseError'),\n },\n ])\n\n addServerImports([\n {\n name: 'useLogger',\n from: resolver.resolve('../runtime/server/useLogger'),\n },\n {\n name: 'log',\n from: resolver.resolve('../logger'),\n },\n {\n name: 'createEvlogError',\n from: resolver.resolve('../error'),\n },\n ])\n\n const stripLevels = options.strip ?? ['debug']\n if (stripLevels.length > 0) {\n addVitePlugin(createStripPlugin(stripLevels))\n }\n\n const srcLoc = options.sourceLocation ?? 'dev'\n if (srcLoc === true || (srcLoc === 'dev' && nuxt.options.dev)) {\n addVitePlugin(createSourceLocationPlugin(true))\n }\n },\n})\n"],"mappings":";;;;;;AC8PA,IAAA,iBAAe,iBAAgC;CAC7C,MAAM;EACJ;EACA;EACA,WAAW;EACX,MAAM;EACP;CACD,UAAU,EAAE;CACZ,MAAM,SAAS,MAAM;EACnB,MAAM,WAAW,eAAe,OAAO,KAAK,IAAI;EAEhD,MAAM,mBAAmB,QAAQ,WAAW,WAAW;EACvD,MAAM,oBAAoB,QAAQ,WAAW,YAAY;EACzD,MAAM,uBAAuB,QAAQ,WAAW,eAAe;AAK/D,OAAK,KAAK,iBAAiB,gBAA6B;AACtD,eAAY,eAAe,YAAY,gBAAgB,SAAS,QAAQ,wBAAwB;IAChG;AAEF,OAAK,QAAQ,cAAc,QAAQ;AACnC,OAAK,QAAQ,cAAc,OAAO,QAAQ;GACxC,SAAS,QAAQ,WAAW;GAC5B,SAAS,QAAQ;GACjB,QAAQ,QAAQ;GAChB,WAAW;IACT,SAAS;IACT,UAAU;IACV,aAAa;IACd;GACF;AAED,MAAI,iBACF,kBAAiB;GACf,OAAO;GACP,QAAQ;GACR,SAAS,SAAS,QAAQ,8CAA8C;GACzE,CAAC;AAGJ,kBAAgB,SAAS,QAAQ,kBAAkB,CAAC;AAEpD,YAAU;GACR,KAAK,SAAS,QAAQ,2BAA2B;GACjD,MAAM;GACP,CAAC;AAEF,aAAW;GACT;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,wBAAwB;IAChD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,wBAAwB;IAChD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,wBAAwB;IAChD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,WAAW;IACnC;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,8BAA8B;IACtD;GACF,CAAC;AAEF,mBAAiB;GACf;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,8BAA8B;IACtD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,YAAY;IACpC;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,WAAW;IACnC;GACF,CAAC;EAEF,MAAM,cAAc,QAAQ,SAAS,CAAC,QAAQ;AAC9C,MAAI,YAAY,SAAS,EACvB,eAAc,kBAAkB,YAAY,CAAC;EAG/C,MAAM,SAAS,QAAQ,kBAAkB;AACzC,MAAI,WAAW,QAAS,WAAW,SAAS,KAAK,QAAQ,IACvD,eAAc,2BAA2B,KAAK,CAAC;;CAGpD,CAAC"}
|
|
1
|
+
{"version":3,"file":"module.mjs","names":[],"sources":["../../package.json","../../src/nuxt/module.ts"],"sourcesContent":["","import {\n addImports,\n addPlugin,\n addServerHandler,\n addServerImports,\n addServerPlugin,\n addVitePlugin,\n createResolver,\n defineNuxtModule,\n} from '@nuxt/kit'\nimport type { NitroConfig } from 'nitropack'\nimport type { EnvironmentContext, LogLevel, RouteConfig, SamplingConfig, TransportConfig } from '../types'\nimport { createStripPlugin } from '../vite/strip'\nimport { createSourceLocationPlugin } from '../vite/source-location'\nimport { name, version } from '../../package.json'\n\ninterface ModuleAxiomBaseConfig {\n /** Axiom dataset name */\n dataset: string\n /** Axiom API token */\n token: string\n /** Organization ID (required for Personal Access Tokens) */\n orgId?: string\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n}\n\ninterface ModuleAxiomEdgeConfig {\n /**\n * Edge URL for Axiom ingest/query endpoints.\n * If no path is provided, uses /v1/ingest/{dataset}.\n * If a custom path is provided, it is used as-is (trailing slash trimmed).\n */\n edgeUrl: string\n /** Mutually exclusive with edgeUrl. */\n baseUrl?: never\n}\n\ninterface ModuleAxiomEndpointConfig {\n /** Base URL for Axiom API. Uses /v1/datasets/{dataset}/ingest. */\n baseUrl?: string\n /** Mutually exclusive with baseUrl. */\n edgeUrl?: never\n}\n\ntype ModuleAxiomConfig = ModuleAxiomBaseConfig & (ModuleAxiomEdgeConfig | ModuleAxiomEndpointConfig)\n\nexport interface ModuleOptions {\n /**\n * Enable or disable all logging globally.\n * When false, all emits, tagged logs, and request logger operations become no-ops.\n * @default true\n */\n enabled?: boolean\n\n /**\n * Environment context overrides.\n */\n env?: Partial<EnvironmentContext>\n\n /**\n * Enable or disable browser console output.\n * When false, client-side logs are suppressed in the browser DevTools console\n * but still sent to the server via transport (if enabled).\n * @default true\n */\n console?: boolean\n\n /**\n * Enable pretty printing.\n * @default true in development, false in production\n */\n pretty?: boolean\n\n /**\n * Suppress built-in console output.\n * When true, events are still built, sampled, and passed to drains,\n * but nothing is written to console. Use when drains own the output\n * channel (e.g., stdout-based platforms like GCP Cloud Run, AWS Lambda).\n * @default false\n */\n silent?: boolean\n\n /**\n * Route patterns to include in logging.\n * Supports glob patterns like '/api/**'.\n * If not set, all routes are logged.\n * @example ['/api/**', '/auth/**']\n */\n include?: string[]\n\n /**\n * Route patterns to exclude from logging.\n * Supports glob patterns like '/api/_nuxt_icon/**'.\n * Exclusions take precedence over inclusions.\n * @example ['/api/_nuxt_icon/**', '/health']\n */\n exclude?: string[]\n\n /**\n * Route-specific service configuration.\n * Allows setting different service names for different routes.\n * Patterns are matched using glob syntax.\n *\n * @example\n * ```ts\n * routes: {\n * '/api/foo/**': { service: 'service1' },\n * '/api/bar/**': { service: 'service2' }\n * }\n * ```\n */\n routes?: Record<string, RouteConfig>\n\n /**\n * Sampling configuration for filtering logs.\n * Allows configuring what percentage of logs to keep per level.\n *\n * @example\n * ```ts\n * sampling: {\n * rates: {\n * info: 10, // Keep 10% of info logs\n * warn: 50, // Keep 50% of warning logs\n * debug: 5, // Keep 5% of debug logs\n * error: 100, // Always keep errors (default)\n * }\n * }\n * ```\n */\n sampling?: SamplingConfig\n\n /**\n * Transport configuration for sending client logs to the server.\n *\n * @example\n * ```ts\n * transport: {\n * enabled: true, // send client logs to server via API endpoint\n * endpoint: '/api/_evlog/ingest', // default endpoint (or custom endpoint)\n * credentials: 'include', // optional: cross-origin ingest\n * }\n * ```\n */\n transport?: TransportConfig\n\n /**\n * Axiom adapter configuration.\n * When configured, use `createAxiomDrain()` from `evlog/axiom` to send logs.\n *\n * @example\n * ```ts\n * axiom: {\n * dataset: 'my-app-logs',\n * token: process.env.AXIOM_TOKEN,\n * }\n * ```\n */\n axiom?: ModuleAxiomConfig\n\n /**\n * OTLP adapter configuration.\n * When configured, use `createOTLPDrain()` from `evlog/otlp` to send logs.\n *\n * @example\n * ```ts\n * otlp: {\n * endpoint: 'http://localhost:4318',\n * headers: {\n * 'Authorization': `Basic ${process.env.GRAFANA_TOKEN}`,\n * },\n * }\n * ```\n */\n otlp?: {\n /** OTLP HTTP endpoint (e.g., http://localhost:4318) */\n endpoint: string\n /** Override service name (defaults to event.service) */\n serviceName?: string\n /** Additional resource attributes */\n resourceAttributes?: Record<string, string | number | boolean>\n /** Custom headers (e.g., for authentication) */\n headers?: Record<string, string>\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n }\n\n /**\n * PostHog adapter configuration.\n * When configured, use `createPostHogDrain()` from `evlog/posthog` to send logs\n * via PostHog Logs (OTLP).\n *\n * @example\n * ```ts\n * posthog: {\n * apiKey: process.env.POSTHOG_API_KEY,\n * }\n * ```\n */\n posthog?: {\n /** PostHog project API key */\n apiKey: string\n /** PostHog host URL. Default: https://us.i.posthog.com */\n host?: string\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n }\n\n /**\n * Sentry adapter configuration.\n * When configured, use `createSentryDrain()` from `evlog/sentry` to send logs.\n *\n * @example\n * ```ts\n * sentry: {\n * dsn: process.env.SENTRY_DSN,\n * }\n * ```\n */\n sentry?: {\n /** Sentry DSN */\n dsn: string\n /** Environment override (defaults to event.environment) */\n environment?: string\n /** Release version override (defaults to event.version) */\n release?: string\n /** Additional tags to attach as attributes */\n tags?: Record<string, string>\n /** Request timeout in milliseconds. Default: 5000 */\n timeout?: number\n }\n\n /**\n * Log levels to strip from production builds. Set to [] to disable.\n * @default ['debug']\n */\n strip?: LogLevel[]\n\n /**\n * Inject source file:line into log calls.\n * When true, active in both dev and prod.\n * When 'dev', active only in development.\n * @default 'dev'\n */\n sourceLocation?: boolean | 'dev'\n\n /**\n * How long to retain events before cleanup (used by @evlog/nuxthub).\n * Supports \"30d\" (days), \"24h\" (hours), \"60m\" (minutes).\n * @default '30d'\n */\n retention?: string\n}\n\nexport default defineNuxtModule<ModuleOptions>({\n meta: {\n name,\n version,\n configKey: name,\n docs: 'https://evlog.dev',\n },\n defaults: {},\n setup(options, nuxt) {\n const resolver = createResolver(import.meta.url)\n\n const transportEnabled = options.transport?.enabled ?? false\n const transportEndpoint = options.transport?.endpoint ?? '/api/_evlog/ingest'\n const transportCredentials = options.transport?.credentials ?? 'same-origin'\n\n nuxt.options.runtimeConfig.evlog = options\n\n // Register custom error handler for proper EvlogError serialization\n // Only set if not already configured to avoid overwriting user's custom handler\n // Mirror standalone Nitro modules: serialize evlog options into __EVLOG_CONFIG so\n // resolveEvlogConfigForNitroPlugin() picks them up in dev (Nitro worker threads\n // often cannot resolve useRuntimeConfig().evlog via dynamic import reliably).\n // @ts-expect-error nitro:config hook exists but is not in NuxtHooks type\n nuxt.hook('nitro:config', (nitroConfig: NitroConfig) => {\n nitroConfig.errorHandler = nitroConfig.errorHandler || resolver.resolve('../nitro/errorHandler')\n\n const evlogForNitro = nuxt.options.runtimeConfig.evlog ?? options\n if (evlogForNitro !== undefined && typeof evlogForNitro === 'object') {\n process.env.__EVLOG_CONFIG = JSON.stringify(evlogForNitro)\n }\n })\n nuxt.options.runtimeConfig.public.evlog = {\n enabled: options.enabled ?? true,\n console: options.console,\n pretty: options.pretty,\n transport: {\n enabled: transportEnabled,\n endpoint: transportEndpoint,\n credentials: transportCredentials,\n },\n }\n\n if (transportEnabled) {\n addServerHandler({\n route: transportEndpoint,\n method: 'post',\n handler: resolver.resolve('../runtime/server/routes/_evlog/ingest.post'),\n })\n }\n\n addServerPlugin(resolver.resolve('../nitro/plugin'))\n\n addPlugin({\n src: resolver.resolve('../runtime/client/plugin'),\n mode: 'client',\n })\n\n addImports([\n {\n name: 'log',\n from: resolver.resolve('../runtime/client/log'),\n },\n {\n name: 'setIdentity',\n from: resolver.resolve('../runtime/client/log'),\n },\n {\n name: 'clearIdentity',\n from: resolver.resolve('../runtime/client/log'),\n },\n {\n name: 'createEvlogError',\n from: resolver.resolve('../error'),\n },\n {\n name: 'parseError',\n from: resolver.resolve('../runtime/utils/parseError'),\n },\n ])\n\n addServerImports([\n {\n name: 'useLogger',\n from: resolver.resolve('../runtime/server/useLogger'),\n },\n {\n name: 'log',\n from: resolver.resolve('../logger'),\n },\n {\n name: 'createEvlogError',\n from: resolver.resolve('../error'),\n },\n ])\n\n const stripLevels = options.strip ?? ['debug']\n if (stripLevels.length > 0) {\n addVitePlugin(createStripPlugin(stripLevels))\n }\n\n const srcLoc = options.sourceLocation ?? 'dev'\n if (srcLoc === true || (srcLoc === 'dev' && nuxt.options.dev)) {\n addVitePlugin(createSourceLocationPlugin(true))\n }\n },\n})\n"],"mappings":";;;;;;AC8PA,IAAA,iBAAe,iBAAgC;CAC7C,MAAM;EACJ;EACA;EACA,WAAW;EACX,MAAM;EACP;CACD,UAAU,EAAE;CACZ,MAAM,SAAS,MAAM;EACnB,MAAM,WAAW,eAAe,OAAO,KAAK,IAAI;EAEhD,MAAM,mBAAmB,QAAQ,WAAW,WAAW;EACvD,MAAM,oBAAoB,QAAQ,WAAW,YAAY;EACzD,MAAM,uBAAuB,QAAQ,WAAW,eAAe;AAE/D,OAAK,QAAQ,cAAc,QAAQ;AAQnC,OAAK,KAAK,iBAAiB,gBAA6B;AACtD,eAAY,eAAe,YAAY,gBAAgB,SAAS,QAAQ,wBAAwB;GAEhG,MAAM,gBAAgB,KAAK,QAAQ,cAAc,SAAS;AAC1D,OAAI,kBAAkB,KAAA,KAAa,OAAO,kBAAkB,SAC1D,SAAQ,IAAI,iBAAiB,KAAK,UAAU,cAAc;IAE5D;AACF,OAAK,QAAQ,cAAc,OAAO,QAAQ;GACxC,SAAS,QAAQ,WAAW;GAC5B,SAAS,QAAQ;GACjB,QAAQ,QAAQ;GAChB,WAAW;IACT,SAAS;IACT,UAAU;IACV,aAAa;IACd;GACF;AAED,MAAI,iBACF,kBAAiB;GACf,OAAO;GACP,QAAQ;GACR,SAAS,SAAS,QAAQ,8CAA8C;GACzE,CAAC;AAGJ,kBAAgB,SAAS,QAAQ,kBAAkB,CAAC;AAEpD,YAAU;GACR,KAAK,SAAS,QAAQ,2BAA2B;GACjD,MAAM;GACP,CAAC;AAEF,aAAW;GACT;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,wBAAwB;IAChD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,wBAAwB;IAChD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,wBAAwB;IAChD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,WAAW;IACnC;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,8BAA8B;IACtD;GACF,CAAC;AAEF,mBAAiB;GACf;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,8BAA8B;IACtD;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,YAAY;IACpC;GACD;IACE,MAAM;IACN,MAAM,SAAS,QAAQ,WAAW;IACnC;GACF,CAAC;EAEF,MAAM,cAAc,QAAQ,SAAS,CAAC,QAAQ;AAC9C,MAAI,YAAY,SAAS,EACvB,eAAc,kBAAkB,YAAY,CAAC;EAG/C,MAAM,SAAS,QAAQ,kBAAkB;AACzC,MAAI,WAAW,QAAS,WAAW,SAAS,KAAK,QAAQ,IACvD,eAAc,2BAA2B,KAAK,CAAC;;CAGpD,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { m as ParsedError } from "./types-
|
|
1
|
+
import { m as ParsedError } from "./types-v_JkG_D7.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/runtime/utils/parseError.d.ts
|
|
4
4
|
declare function parseError(error: unknown): ParsedError;
|
|
5
5
|
//#endregion
|
|
6
6
|
export { parseError as t };
|
|
7
|
-
//# sourceMappingURL=parseError-
|
|
7
|
+
//# sourceMappingURL=parseError-B_qXj8x4.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseError-B_qXj8x4.d.mts","names":[],"sources":["../src/runtime/utils/parseError.ts"],"mappings":";;;iBAMgB,UAAA,CAAW,KAAA,YAAiB,WAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { g as RequestLogger } from "../types-
|
|
2
|
-
import { t as BaseEvlogOptions } from "../middleware-
|
|
3
|
-
import * as react_router0 from "react-router";
|
|
1
|
+
import { g as RequestLogger } from "../types-v_JkG_D7.mjs";
|
|
2
|
+
import { t as BaseEvlogOptions } from "../middleware-DojmTj9Y.mjs";
|
|
3
|
+
import * as _$react_router0 from "react-router";
|
|
4
4
|
|
|
5
5
|
//#region src/react-router/index.d.ts
|
|
6
6
|
declare const useLogger: <T extends object = Record<string, unknown>>() => RequestLogger<T>;
|
|
@@ -18,7 +18,7 @@ declare const useLogger: <T extends object = Record<string, unknown>>() => Reque
|
|
|
18
18
|
* }
|
|
19
19
|
* ```
|
|
20
20
|
*/
|
|
21
|
-
declare const loggerContext: react_router0.RouterContext<RequestLogger<Record<string, unknown>>>;
|
|
21
|
+
declare const loggerContext: _$react_router0.RouterContext<RequestLogger<Record<string, unknown>>>;
|
|
22
22
|
type EvlogReactRouterOptions = BaseEvlogOptions;
|
|
23
23
|
/**
|
|
24
24
|
* Create an evlog middleware for React Router.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/react-router/index.ts"],"mappings":";;;;;cAMiB,SAAA,sBAAS,MAAA,wBAAA,aAAA,CAAA,CAAA;;;AAJ0D;;;;;;;;;;;;cAsBvE,aAAA,EAAa,
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/react-router/index.ts"],"mappings":";;;;;cAMiB,SAAA,sBAAS,MAAA,wBAAA,aAAA,CAAA,CAAA;;;AAJ0D;;;;;;;;;;;;cAsBvE,aAAA,EAAa,eAAA,CAAA,aAAA,CAAA,aAAA,CAAA,MAAA;AAAA,KAEd,uBAAA,GAA0B,gBAAA;;;;;;;;;;;;;AAAtC;iBAiBgB,KAAA,CAAM,OAAA,GAAS,uBAAA;EAE3B,OAAA;EAAA;AAAA;EAAwB,OAAA,EAAS,OAAA;EAAS,OAAA;IAAW,GAAA,CAAI,GAAA,WAAc,KAAA;EAAA;AAAA,GACvE,IAAA,QAAY,OAAA,CAAQ,QAAA,MACnB,OAAA,CAAQ,QAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as createMiddlewareLogger, t as extractSafeHeaders } from "../headers-
|
|
2
|
-
import { t as createLoggerStorage } from "../storage-
|
|
1
|
+
import { r as createMiddlewareLogger, t as extractSafeHeaders } from "../headers-BSi3UHKL.mjs";
|
|
2
|
+
import { t as createLoggerStorage } from "../storage-B6NPh8rV.mjs";
|
|
3
3
|
import { createContext } from "react-router";
|
|
4
4
|
//#region src/react-router/index.ts
|
|
5
5
|
const { storage, useLogger } = createLoggerStorage("middleware context. Make sure the evlog middleware is added to your route.");
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import * as h3 from "h3";
|
|
1
|
+
import * as _$h3 from "h3";
|
|
2
2
|
|
|
3
3
|
//#region src/runtime/server/routes/_evlog/ingest.post.d.ts
|
|
4
|
-
declare const _default: h3.EventHandler<h3.EventHandlerRequest, Promise<null>>;
|
|
4
|
+
declare const _default: _$h3.EventHandler<_$h3.EventHandlerRequest, Promise<null>>;
|
|
5
5
|
//#endregion
|
|
6
6
|
export { _default as default };
|
|
7
7
|
//# sourceMappingURL=ingest.post.d.mts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as useLogger } from "../../useLogger-
|
|
1
|
+
import { t as useLogger } from "../../useLogger-TjKH37BO.mjs";
|
|
2
2
|
export { useLogger };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { m as ParsedError } from "../../types-
|
|
2
|
-
import { t as parseError } from "../../parseError-
|
|
1
|
+
import { m as ParsedError } from "../../types-v_JkG_D7.mjs";
|
|
2
|
+
import { t as parseError } from "../../parseError-B_qXj8x4.mjs";
|
|
3
3
|
export { ParsedError, parseError };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage-
|
|
1
|
+
{"version":3,"file":"storage-B6NPh8rV.mjs","names":[],"sources":["../src/shared/storage.ts"],"sourcesContent":["import { AsyncLocalStorage } from 'node:async_hooks'\nimport type { RequestLogger } from '../types'\n\n/**\n * Create a request-scoped `AsyncLocalStorage` and a matching `useLogger` accessor.\n *\n * Every framework that needs `useLogger()` (Express, Fastify, NestJS, SvelteKit)\n * calls this once at module level to get its own isolated storage + accessor pair.\n *\n * @param contextHint - Human-readable hint appended to the error message when\n * `useLogger()` is called outside of a request (e.g.\n * `\"middleware context. Make sure app.use(evlog()) is registered before your routes.\"`).\n *\n * @beta Part of `evlog/toolkit` — the public API for building custom integrations.\n */\nexport function createLoggerStorage(contextHint: string) {\n const storage = new AsyncLocalStorage<RequestLogger>()\n\n /**\n * Access the request-scoped logger created by the evlog middleware.\n *\n * Must be called inside a request that is handled by the evlog middleware.\n * Throws if called outside of a request context.\n *\n * @example\n * ```ts\n * import { useLogger } from 'evlog/express' // or /fastify, /nestjs, /sveltekit, /elysia\n *\n * function myService() {\n * const log = useLogger()\n * log.set({ users: { count: 42 } })\n * }\n * ```\n */\n function useLogger<T extends object = Record<string, unknown>>(): RequestLogger<T> {\n const logger = storage.getStore()\n if (!logger) {\n throw new Error(\n `[evlog] useLogger() was called outside of an evlog ${contextHint}`,\n )\n }\n return logger as RequestLogger<T>\n }\n\n return { storage, useLogger }\n}\n"],"mappings":";;;;;;;;;;;;;;AAeA,SAAgB,oBAAoB,aAAqB;CACvD,MAAM,UAAU,IAAI,mBAAkC;;;;;;;;;;;;;;;;;CAkBtD,SAAS,YAA0E;EACjF,MAAM,SAAS,QAAQ,UAAU;AACjC,MAAI,CAAC,OACH,OAAM,IAAI,MACR,sDAAsD,cACvD;AAEH,SAAO;;AAGT,QAAO;EAAE;EAAS;EAAW"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { g as RequestLogger } from "../types-
|
|
2
|
-
import { t as BaseEvlogOptions } from "../middleware-
|
|
1
|
+
import { g as RequestLogger } from "../types-v_JkG_D7.mjs";
|
|
2
|
+
import { t as BaseEvlogOptions } from "../middleware-DojmTj9Y.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/sveltekit/index.d.ts
|
|
5
5
|
declare const useLogger: <T extends object = Record<string, unknown>>() => RequestLogger<T>;
|
package/dist/sveltekit/index.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { EvlogError } from "../error.mjs";
|
|
2
2
|
import { t as extractErrorStatus } from "../errors-gH4C9KSC.mjs";
|
|
3
3
|
import { n as serializeEvlogErrorResponse, t as resolveEvlogError } from "../nitro-Dpq5ZmcM.mjs";
|
|
4
|
-
import { r as createMiddlewareLogger, t as extractSafeHeaders } from "../headers-
|
|
5
|
-
import { t as createLoggerStorage } from "../storage-
|
|
4
|
+
import { r as createMiddlewareLogger, t as extractSafeHeaders } from "../headers-BSi3UHKL.mjs";
|
|
5
|
+
import { t as createLoggerStorage } from "../storage-B6NPh8rV.mjs";
|
|
6
6
|
//#region src/sveltekit/index.ts
|
|
7
7
|
const { storage, useLogger } = createLoggerStorage("handle context. Make sure evlog() handle is added to your hooks.server.ts.");
|
|
8
8
|
/**
|
package/dist/toolkit.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { g as RequestLogger } from "./types-
|
|
2
|
-
import { i as createMiddlewareLogger, n as MiddlewareLoggerOptions, r as MiddlewareLoggerResult, t as BaseEvlogOptions } from "./middleware-
|
|
3
|
-
import { n as getServiceForPath, r as shouldLog, t as extractErrorStatus } from "./errors-
|
|
1
|
+
import { g as RequestLogger } from "./types-v_JkG_D7.mjs";
|
|
2
|
+
import { i as createMiddlewareLogger, n as MiddlewareLoggerOptions, r as MiddlewareLoggerResult, t as BaseEvlogOptions } from "./middleware-DojmTj9Y.mjs";
|
|
3
|
+
import { n as getServiceForPath, r as shouldLog, t as extractErrorStatus } from "./errors-bPoj9UZk.mjs";
|
|
4
4
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
5
5
|
|
|
6
6
|
//#region src/shared/headers.d.ts
|
package/dist/toolkit.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as extractErrorStatus } from "./errors-gH4C9KSC.mjs";
|
|
2
2
|
import { n as shouldLog, t as getServiceForPath } from "./routes-CE3_c-iZ.mjs";
|
|
3
|
-
import { n as extractSafeNodeHeaders, r as createMiddlewareLogger, t as extractSafeHeaders } from "./headers-
|
|
4
|
-
import { t as createLoggerStorage } from "./storage-
|
|
3
|
+
import { n as extractSafeNodeHeaders, r as createMiddlewareLogger, t as extractSafeHeaders } from "./headers-BSi3UHKL.mjs";
|
|
4
|
+
import { t as createLoggerStorage } from "./storage-B6NPh8rV.mjs";
|
|
5
5
|
export { createLoggerStorage, createMiddlewareLogger, extractErrorStatus, extractSafeHeaders, extractSafeNodeHeaders, getServiceForPath, shouldLog };
|
|
@@ -452,6 +452,11 @@ interface ErrorOptions {
|
|
|
452
452
|
link?: string;
|
|
453
453
|
/** The original error that caused this */
|
|
454
454
|
cause?: Error;
|
|
455
|
+
/**
|
|
456
|
+
* Backend-only diagnostic context (auditing, support, debugging).
|
|
457
|
+
* Never included in HTTP responses or `EvlogError#toJSON`; included in wide events when the error is passed to `log.error()`.
|
|
458
|
+
*/
|
|
459
|
+
internal?: Record<string, unknown>;
|
|
455
460
|
}
|
|
456
461
|
/**
|
|
457
462
|
* Options for creating a request logger
|
|
@@ -510,4 +515,4 @@ interface ParsedError {
|
|
|
510
515
|
}
|
|
511
516
|
//#endregion
|
|
512
517
|
export { TailSamplingContext as C, TailSamplingCondition as S, WideEvent as T, RequestLoggerOptions as _, EnvironmentContext as a, SamplingRates as b, H3EventContext as c, Log as d, LogLevel as f, RequestLogger as g, RequestLogEntry as h, EnrichContext as i, IngestPayload as l, ParsedError as m, DeepPartial as n, ErrorOptions as o, LoggerConfig as p, DrainContext as r, FieldContext as s, BaseWideEvent as t, InternalFields as u, RouteConfig as v, TransportConfig as w, ServerEvent as x, SamplingConfig as y };
|
|
513
|
-
//# sourceMappingURL=types-
|
|
518
|
+
//# sourceMappingURL=types-v_JkG_D7.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types-
|
|
1
|
+
{"version":3,"file":"types-v_JkG_D7.d.mts","names":[],"sources":["../src/types.ts"],"mappings":"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"}
|
package/dist/types.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { C as TailSamplingContext, S as TailSamplingCondition, T as WideEvent, _ as RequestLoggerOptions, a as EnvironmentContext, b as SamplingRates, c as H3EventContext, d as Log, f as LogLevel, g as RequestLogger, h as RequestLogEntry, i as EnrichContext, l as IngestPayload, m as ParsedError, n as DeepPartial, o as ErrorOptions, p as LoggerConfig, r as DrainContext, s as FieldContext, t as BaseWideEvent, u as InternalFields, v as RouteConfig, w as TransportConfig, x as ServerEvent, y as SamplingConfig } from "./types-
|
|
1
|
+
import { C as TailSamplingContext, S as TailSamplingCondition, T as WideEvent, _ as RequestLoggerOptions, a as EnvironmentContext, b as SamplingRates, c as H3EventContext, d as Log, f as LogLevel, g as RequestLogger, h as RequestLogEntry, i as EnrichContext, l as IngestPayload, m as ParsedError, n as DeepPartial, o as ErrorOptions, p as LoggerConfig, r as DrainContext, s as FieldContext, t as BaseWideEvent, u as InternalFields, v as RouteConfig, w as TransportConfig, x as ServerEvent, y as SamplingConfig } from "./types-v_JkG_D7.mjs";
|
|
2
2
|
export { BaseWideEvent, DeepPartial, DrainContext, EnrichContext, EnvironmentContext, ErrorOptions, FieldContext, H3EventContext, IngestPayload, InternalFields, Log, LogLevel, LoggerConfig, ParsedError, RequestLogEntry, RequestLogger, RequestLoggerOptions, RouteConfig, SamplingConfig, SamplingRates, ServerEvent, TailSamplingCondition, TailSamplingContext, TransportConfig, WideEvent };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as RequestLogger, x as ServerEvent } from "./types-
|
|
1
|
+
import { g as RequestLogger, x as ServerEvent } from "./types-v_JkG_D7.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/runtime/server/useLogger.d.ts
|
|
4
4
|
/**
|
|
@@ -36,4 +36,4 @@ import { g as RequestLogger, x as ServerEvent } from "./types-DbVDS9eu.mjs";
|
|
|
36
36
|
declare function useLogger<T extends object = Record<string, unknown>>(event: ServerEvent, service?: string): RequestLogger<T>;
|
|
37
37
|
//#endregion
|
|
38
38
|
export { useLogger as t };
|
|
39
|
-
//# sourceMappingURL=useLogger-
|
|
39
|
+
//# sourceMappingURL=useLogger-TjKH37BO.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLogger-
|
|
1
|
+
{"version":3,"file":"useLogger-TjKH37BO.d.mts","names":[],"sources":["../src/runtime/server/useLogger.ts"],"mappings":";;;;;AAkCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAgB,SAAA,oBAA6B,MAAA,kBAAA,CAAyB,KAAA,EAAO,WAAA,EAAa,OAAA,YAAmB,aAAA,CAAc,CAAA"}
|
package/dist/utils.d.mts
CHANGED
package/dist/vite/index.d.mts
CHANGED
package/dist/workers.d.mts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "evlog",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.1",
|
|
4
4
|
"description": "Wide event logging library with structured error handling. Inspired by LoggingSucks.",
|
|
5
5
|
"author": "HugoRCD <contact@hrcd.fr>",
|
|
6
6
|
"homepage": "https://evlog.dev",
|
|
@@ -27,7 +27,8 @@
|
|
|
27
27
|
"sveltekit",
|
|
28
28
|
"react-router",
|
|
29
29
|
"vite",
|
|
30
|
-
"typescript"
|
|
30
|
+
"typescript",
|
|
31
|
+
"datadog"
|
|
31
32
|
],
|
|
32
33
|
"license": "MIT",
|
|
33
34
|
"type": "module",
|
|
@@ -88,6 +89,11 @@
|
|
|
88
89
|
"import": "./dist/adapters/hyperdx.mjs",
|
|
89
90
|
"default": "./dist/adapters/hyperdx.mjs"
|
|
90
91
|
},
|
|
92
|
+
"./datadog": {
|
|
93
|
+
"types": "./dist/adapters/datadog.d.mts",
|
|
94
|
+
"import": "./dist/adapters/datadog.mjs",
|
|
95
|
+
"default": "./dist/adapters/datadog.mjs"
|
|
96
|
+
},
|
|
91
97
|
"./fs": {
|
|
92
98
|
"types": "./dist/adapters/fs.d.mts",
|
|
93
99
|
"import": "./dist/adapters/fs.mjs",
|
|
@@ -216,6 +222,9 @@
|
|
|
216
222
|
"hyperdx": [
|
|
217
223
|
"./dist/adapters/hyperdx.d.mts"
|
|
218
224
|
],
|
|
225
|
+
"datadog": [
|
|
226
|
+
"./dist/adapters/datadog.d.mts"
|
|
227
|
+
],
|
|
219
228
|
"fs": [
|
|
220
229
|
"./dist/adapters/fs.d.mts"
|
|
221
230
|
],
|
|
@@ -293,12 +302,13 @@
|
|
|
293
302
|
"typecheck": "echo 'Typecheck handled by build'"
|
|
294
303
|
},
|
|
295
304
|
"devDependencies": {
|
|
305
|
+
"@tanstack/start-client-core": "^1.167.9",
|
|
296
306
|
"acorn": "^8.16.0",
|
|
297
307
|
"@codspeed/vitest-plugin": "^5.2.0",
|
|
298
|
-
"@nestjs/common": "^11.1.
|
|
308
|
+
"@nestjs/common": "^11.1.18",
|
|
299
309
|
"@nuxt/devtools": "^3.2.4",
|
|
300
310
|
"@nuxt/schema": "^4.4.2",
|
|
301
|
-
"@nuxt/test-utils": "^4.0.
|
|
311
|
+
"@nuxt/test-utils": "^4.0.2",
|
|
302
312
|
"@types/express": "^5.0.6",
|
|
303
313
|
"@types/supertest": "^7.2.0",
|
|
304
314
|
"changelogen": "^0.6.2",
|
|
@@ -306,37 +316,38 @@
|
|
|
306
316
|
"elysia": "^1.4.28",
|
|
307
317
|
"express": "^5.2.1",
|
|
308
318
|
"fastify": "^5.8.4",
|
|
309
|
-
"h3": "^1.15.
|
|
310
|
-
"happy-dom": "^20.8.
|
|
319
|
+
"h3": "^1.15.11",
|
|
320
|
+
"happy-dom": "^20.8.9",
|
|
311
321
|
"nitro": "^3.0.260311-beta",
|
|
312
|
-
"nitropack": "^2.13.
|
|
322
|
+
"nitropack": "^2.13.3",
|
|
313
323
|
"nuxt": "^4.4.2",
|
|
314
324
|
"pino": "^10.3.1",
|
|
315
|
-
"react-router": "^7.
|
|
325
|
+
"react-router": "^7.14.0",
|
|
316
326
|
"supertest": "^7.2.2",
|
|
317
|
-
"tsdown": "^0.21.
|
|
327
|
+
"tsdown": "^0.21.7",
|
|
318
328
|
"magic-string": "^0.30.21",
|
|
319
329
|
"typescript": "^6.0.2",
|
|
320
|
-
"vite": "^8.0.
|
|
330
|
+
"vite": "^8.0.8",
|
|
321
331
|
"ufo": "^1.6.3",
|
|
322
332
|
"winston": "^3.19.0"
|
|
323
333
|
},
|
|
324
334
|
"peerDependencies": {
|
|
325
335
|
"@nuxt/kit": "^4.4.2",
|
|
326
|
-
"h3": "^1.15.
|
|
327
|
-
"nitropack": "^2.13.
|
|
336
|
+
"h3": "^1.15.11",
|
|
337
|
+
"nitropack": "^2.13.3",
|
|
328
338
|
"ofetch": "^1.5.1",
|
|
329
339
|
"nitro": "^3.0.260311-beta",
|
|
330
|
-
"next": ">=16.2.
|
|
331
|
-
"react": ">=19.2.
|
|
340
|
+
"next": ">=16.2.3",
|
|
341
|
+
"react": ">=19.2.5",
|
|
332
342
|
"hono": "",
|
|
333
343
|
"express": ">=5.2.1",
|
|
334
344
|
"elysia": ">=1.4.28",
|
|
335
345
|
"fastify": ">=5.8.4",
|
|
336
|
-
"@nestjs/common": ">=11.1.
|
|
337
|
-
"react-router": ">=7.
|
|
346
|
+
"@nestjs/common": ">=11.1.18",
|
|
347
|
+
"react-router": ">=7.14.0",
|
|
338
348
|
"vite": "^7.0.0 || ^8.0.0",
|
|
339
|
-
"ai": ">=6.0.
|
|
349
|
+
"ai": ">=6.0.154",
|
|
350
|
+
"@tanstack/start-client-core": "^1.167.9"
|
|
340
351
|
},
|
|
341
352
|
"peerDependenciesMeta": {
|
|
342
353
|
"@nuxt/kit": {
|
|
@@ -383,6 +394,9 @@
|
|
|
383
394
|
},
|
|
384
395
|
"ai": {
|
|
385
396
|
"optional": true
|
|
397
|
+
},
|
|
398
|
+
"@tanstack/start-client-core": {
|
|
399
|
+
"optional": true
|
|
386
400
|
}
|
|
387
401
|
}
|
|
388
402
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_http-rRIz2Q0L.mjs","names":[],"sources":["../src/adapters/_config.ts","../src/adapters/_http.ts"],"sourcesContent":["/**\n * Nitro runtime modules resolved via dynamic `import()` (Workers-safe: avoids a bundler-injected\n * `createRequire` polyfill from sync `require()`). Module namespaces are cached after first\n * successful load; `useRuntimeConfig()` is still invoked on each call so config stays current.\n *\n * Drain handlers remain non-blocking for the HTTP response when the host provides `waitUntil`\n * (see Nitro plugin); the extra `await` here only sequences work inside that background drain.\n */\nlet nitropackRuntime: typeof import('nitropack/runtime') | null | undefined\nlet nitroV3Runtime: typeof import('nitro/runtime-config') | null | undefined\n\nexport async function getRuntimeConfig(): Promise<Record<string, any> | undefined> {\n if (nitropackRuntime === undefined) {\n try {\n nitropackRuntime = await import('nitropack/runtime')\n } catch {\n nitropackRuntime = null\n }\n }\n if (nitropackRuntime) {\n return nitropackRuntime.useRuntimeConfig()\n }\n\n if (nitroV3Runtime === undefined) {\n try {\n nitroV3Runtime = await import('nitro/runtime-config')\n } catch {\n nitroV3Runtime = null\n }\n }\n if (nitroV3Runtime) {\n return nitroV3Runtime.useRuntimeConfig()\n }\n return undefined\n}\n\nexport interface ConfigField<T> {\n key: keyof T & string\n env?: string[]\n}\n\nexport async function resolveAdapterConfig<T>(\n namespace: string,\n fields: ConfigField<T>[],\n overrides?: Partial<T>,\n): Promise<Partial<T>> {\n const runtimeConfig = await getRuntimeConfig()\n const evlogNs = runtimeConfig?.evlog?.[namespace]\n const rootNs = runtimeConfig?.[namespace]\n\n const config: Record<string, unknown> = {}\n\n for (const { key, env } of fields) {\n config[key] =\n overrides?.[key]\n ?? evlogNs?.[key]\n ?? rootNs?.[key]\n ?? resolveEnv(env)\n }\n\n return config as Partial<T>\n}\n\nfunction resolveEnv(envKeys?: string[]): string | undefined {\n if (!envKeys) return undefined\n for (const key of envKeys) {\n const val = process.env[key]\n if (val) return val\n }\n return undefined\n}\n","export interface HttpPostOptions {\n url: string\n headers: Record<string, string>\n body: string\n timeout: number\n label: string\n retries?: number\n}\n\nfunction isRetryable(error: unknown): boolean {\n if (error instanceof DOMException && error.name === 'AbortError') return true\n if (error instanceof TypeError) return true\n if (error instanceof Error) {\n const match = error.message.match(/API error: (\\d+)/)\n if (match) return Number.parseInt(match[1]) >= 500\n }\n return false\n}\n\nexport async function httpPost({ url, headers, body, timeout, label, retries = 2 }: HttpPostOptions): Promise<void> {\n const normalizedRetries = Number.isFinite(retries) && retries >= 0 ? Math.floor(retries) : 2\n\n let lastError: Error | undefined\n\n for (let attempt = 0; attempt <= normalizedRetries; attempt++) {\n const controller = new AbortController()\n const timeoutId = setTimeout(() => controller.abort(), timeout)\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers,\n body,\n signal: controller.signal,\n })\n\n if (!response.ok) {\n const text = await response.text().catch(() => 'Unknown error')\n const safeText = text.length > 200 ? `${text.slice(0, 200)}...[truncated]` : text\n throw new Error(`${label} API error: ${response.status} ${response.statusText} - ${safeText}`)\n }\n\n clearTimeout(timeoutId)\n return\n } catch (error) {\n clearTimeout(timeoutId)\n\n if (error instanceof DOMException && error.name === 'AbortError') {\n lastError = new Error(`${label} request timed out after ${timeout}ms`)\n } else {\n lastError = error as Error\n }\n\n if (!isRetryable(error) || attempt === normalizedRetries) {\n throw lastError\n }\n\n await new Promise<void>(r => setTimeout(r, 200 * 2 ** attempt))\n }\n }\n\n throw lastError!\n}\n"],"mappings":";;;;;;;;;AAQA,IAAI;AACJ,IAAI;AAEJ,eAAsB,mBAA6D;AACjF,KAAI,qBAAqB,KAAA,EACvB,KAAI;AACF,qBAAmB,MAAM,OAAO;SAC1B;AACN,qBAAmB;;AAGvB,KAAI,iBACF,QAAO,iBAAiB,kBAAkB;AAG5C,KAAI,mBAAmB,KAAA,EACrB,KAAI;AACF,mBAAiB,MAAM,OAAO;SACxB;AACN,mBAAiB;;AAGrB,KAAI,eACF,QAAO,eAAe,kBAAkB;;AAU5C,eAAsB,qBACpB,WACA,QACA,WACqB;CACrB,MAAM,gBAAgB,MAAM,kBAAkB;CAC9C,MAAM,UAAU,eAAe,QAAQ;CACvC,MAAM,SAAS,gBAAgB;CAE/B,MAAM,SAAkC,EAAE;AAE1C,MAAK,MAAM,EAAE,KAAK,SAAS,OACzB,QAAO,OACL,YAAY,QACT,UAAU,QACV,SAAS,QACT,WAAW,IAAI;AAGtB,QAAO;;AAGT,SAAS,WAAW,SAAwC;AAC1D,KAAI,CAAC,QAAS,QAAO,KAAA;AACrB,MAAK,MAAM,OAAO,SAAS;EACzB,MAAM,MAAM,QAAQ,IAAI;AACxB,MAAI,IAAK,QAAO;;;;;AC1DpB,SAAS,YAAY,OAAyB;AAC5C,KAAI,iBAAiB,gBAAgB,MAAM,SAAS,aAAc,QAAO;AACzE,KAAI,iBAAiB,UAAW,QAAO;AACvC,KAAI,iBAAiB,OAAO;EAC1B,MAAM,QAAQ,MAAM,QAAQ,MAAM,mBAAmB;AACrD,MAAI,MAAO,QAAO,OAAO,SAAS,MAAM,GAAG,IAAI;;AAEjD,QAAO;;AAGT,eAAsB,SAAS,EAAE,KAAK,SAAS,MAAM,SAAS,OAAO,UAAU,KAAqC;CAClH,MAAM,oBAAoB,OAAO,SAAS,QAAQ,IAAI,WAAW,IAAI,KAAK,MAAM,QAAQ,GAAG;CAE3F,IAAI;AAEJ,MAAK,IAAI,UAAU,GAAG,WAAW,mBAAmB,WAAW;EAC7D,MAAM,aAAa,IAAI,iBAAiB;EACxC,MAAM,YAAY,iBAAiB,WAAW,OAAO,EAAE,QAAQ;AAE/D,MAAI;GACF,MAAM,WAAW,MAAM,MAAM,KAAK;IAChC,QAAQ;IACR;IACA;IACA,QAAQ,WAAW;IACpB,CAAC;AAEF,OAAI,CAAC,SAAS,IAAI;IAChB,MAAM,OAAO,MAAM,SAAS,MAAM,CAAC,YAAY,gBAAgB;IAC/D,MAAM,WAAW,KAAK,SAAS,MAAM,GAAG,KAAK,MAAM,GAAG,IAAI,CAAC,kBAAkB;AAC7E,UAAM,IAAI,MAAM,GAAG,MAAM,cAAc,SAAS,OAAO,GAAG,SAAS,WAAW,KAAK,WAAW;;AAGhG,gBAAa,UAAU;AACvB;WACO,OAAO;AACd,gBAAa,UAAU;AAEvB,OAAI,iBAAiB,gBAAgB,MAAM,SAAS,aAClD,6BAAY,IAAI,MAAM,GAAG,MAAM,2BAA2B,QAAQ,IAAI;OAEtE,aAAY;AAGd,OAAI,CAAC,YAAY,MAAM,IAAI,YAAY,kBACrC,OAAM;AAGR,SAAM,IAAI,SAAc,MAAK,WAAW,GAAG,MAAM,KAAK,QAAQ,CAAC;;;AAInE,OAAM"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error-BJ-I4sim.d.mts","names":[],"sources":["../src/error.ts"],"mappings":";;;;;AAkBA;;;;;;;;;;;;;cAAa,UAAA,SAAmB,KAAA;EAQT;EAAA,SALZ,MAAA;EAAA,SACA,GAAA;EAAA,SACA,GAAA;EAAA,SACA,IAAA;cAEG,OAAA,EAAS,YAAA;EAiCP;EAAA,IAfV,UAAA,CAAA;EAesC;EAAA,IAVtC,UAAA,CAAA;EAkDJ;EAAA,IA7CI,aAAA,CAAA;EA6CY;EAAA,IAxCZ,IAAA,CAAA;IAAU,GAAA;IAAc,GAAA;IAAc,IAAA;EAAA;EAOjC,QAAA,CAAA;EAiCT,MAAA,CAAA,GAAU,MAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;iBAoCI,WAAA,CAAY,OAAA,EAAS,YAAA,YAAwB,UAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nitro-BXmkH7BD.d.mts","names":[],"sources":["../src/nitro.ts"],"mappings":";;;UAKiB,kBAAA;EAAA;;;;EAKf,OAAA;EAuCwB;;;EAlCxB,GAAA,GAAM,OAAA,CAAQ,kBAAA;EAuCW;;;;EAjCzB,MAAA;EAAA;;;;;;;EASA,MAAA;EAwBW;;;;;EAjBX,OAAA;;;;;;EAOA,OAAA;;;;EAKA,MAAA,GAAS,MAAA,SAAe,WAAA;;;;EAKxB,QAAA,GAAW,cAAA;AAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parseError-CcvBYsbl.d.mts","names":[],"sources":["../src/runtime/utils/parseError.ts"],"mappings":";;;iBAMgB,UAAA,CAAW,KAAA,YAAiB,WAAA"}
|