@loggerjs/node 0.5.0 → 0.5.2

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.
Files changed (102) hide show
  1. package/README.md +5 -1
  2. package/dist/bullmq-integration.cjs +169 -0
  3. package/dist/bullmq-integration.cjs.map +1 -0
  4. package/dist/bullmq-integration.js +168 -0
  5. package/dist/bullmq-integration.js.map +1 -0
  6. package/dist/cli-integration.cjs +116 -0
  7. package/dist/cli-integration.cjs.map +1 -0
  8. package/dist/cli-integration.js +115 -0
  9. package/dist/cli-integration.js.map +1 -0
  10. package/dist/context.cjs +37 -0
  11. package/dist/context.cjs.map +1 -0
  12. package/dist/context.js +35 -0
  13. package/dist/context.js.map +1 -0
  14. package/dist/database-integration.cjs +128 -0
  15. package/dist/database-integration.cjs.map +1 -0
  16. package/dist/database-integration.js +127 -0
  17. package/dist/database-integration.js.map +1 -0
  18. package/dist/diagnostics-channel-integration.cjs +66 -0
  19. package/dist/diagnostics-channel-integration.cjs.map +1 -0
  20. package/dist/diagnostics-channel-integration.js +65 -0
  21. package/dist/diagnostics-channel-integration.js.map +1 -0
  22. package/dist/express-integration.cjs +130 -0
  23. package/dist/express-integration.cjs.map +1 -0
  24. package/dist/express-integration.js +129 -0
  25. package/dist/express-integration.js.map +1 -0
  26. package/dist/fastify-integration.cjs +120 -0
  27. package/dist/fastify-integration.cjs.map +1 -0
  28. package/dist/fastify-integration.js +119 -0
  29. package/dist/fastify-integration.js.map +1 -0
  30. package/dist/file-transport.cjs +260 -0
  31. package/dist/file-transport.cjs.map +1 -0
  32. package/dist/file-transport.js +259 -0
  33. package/dist/file-transport.js.map +1 -0
  34. package/dist/hapi-integration.cjs +61 -0
  35. package/dist/hapi-integration.cjs.map +1 -0
  36. package/dist/hapi-integration.js +60 -0
  37. package/dist/hapi-integration.js.map +1 -0
  38. package/dist/http-transport.cjs +55 -0
  39. package/dist/http-transport.cjs.map +1 -0
  40. package/dist/http-transport.js +54 -0
  41. package/dist/http-transport.js.map +1 -0
  42. package/dist/koa-integration.cjs +57 -0
  43. package/dist/koa-integration.cjs.map +1 -0
  44. package/dist/koa-integration.js +56 -0
  45. package/dist/koa-integration.js.map +1 -0
  46. package/dist/logger-diagnostics.cjs +46 -0
  47. package/dist/logger-diagnostics.cjs.map +1 -0
  48. package/dist/logger-diagnostics.js +45 -0
  49. package/dist/logger-diagnostics.js.map +1 -0
  50. package/dist/nest-integration.cjs +138 -0
  51. package/dist/nest-integration.cjs.map +1 -0
  52. package/dist/nest-integration.js +137 -0
  53. package/dist/nest-integration.js.map +1 -0
  54. package/dist/node-fetch-integration.cjs +113 -0
  55. package/dist/node-fetch-integration.cjs.map +1 -0
  56. package/dist/node-fetch-integration.js +112 -0
  57. package/dist/node-fetch-integration.js.map +1 -0
  58. package/dist/node-http-client-integration.cjs +192 -0
  59. package/dist/node-http-client-integration.cjs.map +1 -0
  60. package/dist/node-http-client-integration.js +192 -0
  61. package/dist/node-http-client-integration.js.map +1 -0
  62. package/dist/payload-transforms.cjs +29 -0
  63. package/dist/payload-transforms.cjs.map +1 -0
  64. package/dist/payload-transforms.js +28 -0
  65. package/dist/payload-transforms.js.map +1 -0
  66. package/dist/prisma-integration.cjs +150 -0
  67. package/dist/prisma-integration.cjs.map +1 -0
  68. package/dist/prisma-integration.js +149 -0
  69. package/dist/prisma-integration.js.map +1 -0
  70. package/dist/process-integration.cjs +134 -0
  71. package/dist/process-integration.cjs.map +1 -0
  72. package/dist/process-integration.js +133 -0
  73. package/dist/process-integration.js.map +1 -0
  74. package/dist/queue-integration.cjs +148 -0
  75. package/dist/queue-integration.cjs.map +1 -0
  76. package/dist/queue-integration.js +147 -0
  77. package/dist/queue-integration.js.map +1 -0
  78. package/dist/redis-integration.cjs +154 -0
  79. package/dist/redis-integration.cjs.map +1 -0
  80. package/dist/redis-integration.js +153 -0
  81. package/dist/redis-integration.js.map +1 -0
  82. package/dist/rotating-file-transport.cjs +318 -0
  83. package/dist/rotating-file-transport.cjs.map +1 -0
  84. package/dist/rotating-file-transport.js +317 -0
  85. package/dist/rotating-file-transport.js.map +1 -0
  86. package/dist/serverless-integration.cjs +104 -0
  87. package/dist/serverless-integration.cjs.map +1 -0
  88. package/dist/serverless-integration.js +103 -0
  89. package/dist/serverless-integration.js.map +1 -0
  90. package/dist/stdout-transport.cjs +197 -0
  91. package/dist/stdout-transport.cjs.map +1 -0
  92. package/dist/stdout-transport.js +195 -0
  93. package/dist/stdout-transport.js.map +1 -0
  94. package/dist/syslog-transport.cjs +135 -0
  95. package/dist/syslog-transport.cjs.map +1 -0
  96. package/dist/syslog-transport.js +133 -0
  97. package/dist/syslog-transport.js.map +1 -0
  98. package/dist/worker-transport.cjs +285 -0
  99. package/dist/worker-transport.cjs.map +1 -0
  100. package/dist/worker-transport.js +284 -0
  101. package/dist/worker-transport.js.map +1 -0
  102. package/package.json +104 -77
@@ -0,0 +1,284 @@
1
+ import { Worker } from "node:worker_threads";
2
+ import { emitLoggerDiagnostic, incrementLoggerMetaCounter, safeJsonCodec, setLoggerMetaGauge, toLevelValue } from "@loggerjs/core";
3
+ //#region src/worker-transport.ts
4
+ function createDefaultWorker(options) {
5
+ if (!options.workerScript) throw new Error("workerTransport requires worker, workerFactory, or workerScript.");
6
+ return new Worker(options.workerScript, options.workerOptions);
7
+ }
8
+ function payloadToBytes(payload) {
9
+ if (typeof payload !== "string") return payload;
10
+ return new TextEncoder().encode(payload);
11
+ }
12
+ function transferablePayload(payload) {
13
+ const copy = Uint8Array.from(payload);
14
+ return {
15
+ payload: copy,
16
+ transferList: [copy.buffer]
17
+ };
18
+ }
19
+ function normalizePositiveTimeout(value) {
20
+ if (value === void 0 || !Number.isFinite(value) || value <= 0) return 0;
21
+ return Math.floor(value);
22
+ }
23
+ function protocolMessage(value) {
24
+ if (!value || typeof value !== "object") return void 0;
25
+ const message = value;
26
+ if (message.type === "loggerjs:ready") return { type: "loggerjs:ready" };
27
+ if (message.type === "loggerjs:batch:ack") {
28
+ const id = value.id;
29
+ if (typeof id === "number") return {
30
+ type: "loggerjs:batch:ack",
31
+ id
32
+ };
33
+ }
34
+ if (message.type === "loggerjs:error") {
35
+ const item = value;
36
+ return {
37
+ type: "loggerjs:error",
38
+ error: item.error,
39
+ message: typeof item.message === "string" ? item.message : void 0
40
+ };
41
+ }
42
+ }
43
+ function dropBatch(events, reason) {
44
+ incrementLoggerMetaCounter("transport.dropped", events.length);
45
+ incrementLoggerMetaCounter(`transport.dropped.${reason}`, events.length);
46
+ }
47
+ function workerTransport(options = {}) {
48
+ const codec = options.codec ?? safeJsonCodec();
49
+ const transportName = options.name ?? "worker";
50
+ const fallback = options.fallback;
51
+ const readyTimeoutMs = normalizePositiveTimeout(options.readyTimeoutMs);
52
+ const ackTimeoutMs = normalizePositiveTimeout(options.ackTimeoutMs);
53
+ const autoEnd = options.autoEnd ?? true;
54
+ let worker;
55
+ let failed = false;
56
+ let failedError;
57
+ let lastContext;
58
+ let ready = readyTimeoutMs === 0;
59
+ let readyPromise;
60
+ let readyTimer;
61
+ let readyResolve;
62
+ let readyReject;
63
+ let nextBatchId = 1;
64
+ const pendingBatches = /* @__PURE__ */ new Map();
65
+ const setPendingGauge = () => {
66
+ setLoggerMetaGauge(`transport.queue.depth.${transportName}`, pendingBatches.size);
67
+ };
68
+ const setReadyGauge = (value) => {
69
+ setLoggerMetaGauge(`transport.ready.${transportName}`, value);
70
+ };
71
+ const reportInternalError = (error, operation) => {
72
+ lastContext?.reportInternalError(error, {
73
+ phase: "transport",
74
+ transport: transportName,
75
+ operation
76
+ });
77
+ };
78
+ const markFailed = (error, operation) => {
79
+ if (failed) return;
80
+ failed = true;
81
+ failedError = error instanceof Error ? error : new Error(String(error));
82
+ setReadyGauge(0);
83
+ incrementLoggerMetaCounter("transport.worker.failed");
84
+ emitLoggerDiagnostic({
85
+ stage: "worker",
86
+ phase: "error",
87
+ transport: transportName,
88
+ operation,
89
+ error
90
+ });
91
+ reportInternalError(error, operation);
92
+ readyReject?.(failedError);
93
+ failPendingBatches(operation);
94
+ };
95
+ const onWorkerError = (error) => markFailed(error, "worker-error");
96
+ const onWorkerExit = (code) => {
97
+ if (typeof code === "number" && code !== 0) markFailed(code, "worker-exit");
98
+ };
99
+ const onWorkerMessage = (value) => {
100
+ const message = protocolMessage(value);
101
+ if (!message) return;
102
+ if (message.type === "loggerjs:ready") {
103
+ ready = true;
104
+ setReadyGauge(1);
105
+ emitLoggerDiagnostic({
106
+ stage: "worker",
107
+ phase: "end",
108
+ transport: transportName,
109
+ operation: "ready"
110
+ });
111
+ if (readyTimer) clearTimeout(readyTimer);
112
+ readyResolve?.();
113
+ return;
114
+ }
115
+ if (message.type === "loggerjs:batch:ack") {
116
+ const pending = pendingBatches.get(message.id);
117
+ if (!pending) return;
118
+ pendingBatches.delete(message.id);
119
+ setPendingGauge();
120
+ if (pending.timer) clearTimeout(pending.timer);
121
+ pending.resolve();
122
+ incrementLoggerMetaCounter("transport.worker.ack");
123
+ return;
124
+ }
125
+ markFailed(message.error ?? new Error(message.message ?? "Worker reported an error"), "worker-message");
126
+ };
127
+ const fallbackOrDropBatch = async (events, context, reason) => {
128
+ if (fallback) {
129
+ await fallbackBatch(events, context);
130
+ return;
131
+ }
132
+ dropBatch(events, reason);
133
+ };
134
+ const failPendingBatch = (pending, reason) => {
135
+ pendingBatches.delete(pending.id);
136
+ setPendingGauge();
137
+ if (pending.timer) clearTimeout(pending.timer);
138
+ incrementLoggerMetaCounter("transport.worker.pending-dropped", pending.events.length);
139
+ fallbackOrDropBatch(pending.events, pending.context, reason).finally(pending.resolve);
140
+ };
141
+ function failPendingBatches(reason) {
142
+ for (const pending of Array.from(pendingBatches.values())) failPendingBatch(pending, reason);
143
+ }
144
+ const waitForReady = async () => {
145
+ if (ready) return;
146
+ readyPromise ??= new Promise((resolve, reject) => {
147
+ readyResolve = resolve;
148
+ readyReject = reject;
149
+ readyTimer = setTimeout(() => {
150
+ reject(/* @__PURE__ */ new Error(`workerTransport ready timeout after ${readyTimeoutMs}ms`));
151
+ }, readyTimeoutMs);
152
+ });
153
+ await readyPromise;
154
+ };
155
+ const getWorker = () => {
156
+ if (failed) return void 0;
157
+ if (worker) return worker;
158
+ try {
159
+ worker = options.worker ?? options.workerFactory?.() ?? createDefaultWorker(options);
160
+ worker.on?.("error", onWorkerError);
161
+ worker.on?.("exit", onWorkerExit);
162
+ worker.on?.("message", onWorkerMessage);
163
+ if (ready) setReadyGauge(1);
164
+ return worker;
165
+ } catch (error) {
166
+ markFailed(error, "create-worker");
167
+ return;
168
+ }
169
+ };
170
+ const fallbackBatch = async (events, context) => {
171
+ if (fallback?.logBatch) {
172
+ await fallback.logBatch(events, context);
173
+ return;
174
+ }
175
+ if (fallback?.log) for (const event of events) await fallback.log(event, context);
176
+ };
177
+ const postBatch = async (events, context) => {
178
+ lastContext = context;
179
+ const currentWorker = getWorker();
180
+ if (!currentWorker) {
181
+ await fallbackOrDropBatch(events, context, "worker-unavailable");
182
+ return;
183
+ }
184
+ try {
185
+ await waitForReady();
186
+ } catch (error) {
187
+ markFailed(error, "worker-ready-timeout");
188
+ await fallbackOrDropBatch(events, context, "worker-ready-timeout");
189
+ return;
190
+ }
191
+ const encoded = payloadToBytes(codec.encode(events));
192
+ const transferable = options.transferBuffers === false ? {
193
+ payload: encoded,
194
+ transferList: void 0
195
+ } : transferablePayload(encoded);
196
+ const message = {
197
+ type: "loggerjs:batch",
198
+ codec: codec.name,
199
+ contentType: codec.contentType,
200
+ count: events.length,
201
+ payload: transferable.payload
202
+ };
203
+ let pending;
204
+ if (ackTimeoutMs > 0) {
205
+ const id = nextBatchId;
206
+ nextBatchId += 1;
207
+ message.id = id;
208
+ pending = {
209
+ id,
210
+ events,
211
+ context,
212
+ resolve: () => {}
213
+ };
214
+ pending.timer = setTimeout(() => {
215
+ if (!pending) return;
216
+ markFailed(/* @__PURE__ */ new Error(`workerTransport ack timeout after ${ackTimeoutMs}ms`), "worker-ack-timeout");
217
+ }, ackTimeoutMs);
218
+ pendingBatches.set(id, pending);
219
+ setPendingGauge();
220
+ }
221
+ try {
222
+ currentWorker.postMessage(message, transferable.transferList);
223
+ } catch (error) {
224
+ markFailed(error, "post-message");
225
+ if (!pending) await fallbackOrDropBatch(events, context, "worker-post-message");
226
+ }
227
+ };
228
+ const transport = {
229
+ name: transportName,
230
+ minLevel: options.minLevel,
231
+ async ready() {
232
+ if (!getWorker()) {
233
+ if (fallback) {
234
+ await fallback.ready?.();
235
+ return;
236
+ }
237
+ throw failedError ?? /* @__PURE__ */ new Error("workerTransport is unavailable");
238
+ }
239
+ try {
240
+ await waitForReady();
241
+ } catch (error) {
242
+ markFailed(error, "worker-ready-timeout");
243
+ if (fallback) {
244
+ await fallback.ready?.();
245
+ return;
246
+ }
247
+ throw error;
248
+ }
249
+ },
250
+ log(event, context) {
251
+ if (options.minLevel !== void 0 && event.level < toLevelValue(options.minLevel)) return;
252
+ return postBatch([event], context);
253
+ },
254
+ logBatch(events, context) {
255
+ return postBatch(events, context);
256
+ },
257
+ async flush() {
258
+ await Promise.all(Array.from(pendingBatches.values(), (pending) => new Promise((resolve) => {
259
+ const originalResolve = pending.resolve;
260
+ pending.resolve = () => {
261
+ originalResolve();
262
+ resolve();
263
+ };
264
+ })));
265
+ await fallback?.flush?.();
266
+ },
267
+ async close() {
268
+ await transport.flush?.();
269
+ worker?.off?.("error", onWorkerError);
270
+ worker?.off?.("exit", onWorkerExit);
271
+ worker?.off?.("message", onWorkerMessage);
272
+ await fallback?.close?.();
273
+ if (autoEnd) await worker?.terminate?.();
274
+ if (readyTimer) clearTimeout(readyTimer);
275
+ readyReject = void 0;
276
+ readyResolve = void 0;
277
+ }
278
+ };
279
+ return transport;
280
+ }
281
+ //#endregion
282
+ export { workerTransport };
283
+
284
+ //# sourceMappingURL=worker-transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-transport.js","names":[],"sources":["../src/worker-transport.ts"],"sourcesContent":["import { Worker } from \"node:worker_threads\";\nimport {\n emitLoggerDiagnostic,\n incrementLoggerMetaCounter,\n safeJsonCodec,\n setLoggerMetaGauge,\n toLevelValue,\n type Codec,\n type LogEvent,\n type LoggerLevel,\n type Transport,\n type TransportContext,\n} from \"@loggerjs/core\";\n\nexport interface WorkerLike {\n postMessage: (value: unknown, transferList?: ArrayBuffer[]) => void;\n terminate?: () => void | number | Promise<number>;\n on?: (event: \"error\" | \"exit\" | \"message\", listener: (...args: unknown[]) => void) => unknown;\n off?: (event: \"error\" | \"exit\" | \"message\", listener: (...args: unknown[]) => void) => unknown;\n}\n\nexport interface WorkerTransportMessage {\n type: \"loggerjs:batch\";\n id?: number;\n codec: string;\n contentType: string;\n count: number;\n payload: Uint8Array;\n}\n\nexport type WorkerTransportProtocolMessage =\n | { type: \"loggerjs:ready\" }\n | { type: \"loggerjs:batch:ack\"; id: number }\n | { type: \"loggerjs:error\"; error?: unknown; message?: string };\n\nexport interface WorkerTransportOptions {\n name?: string;\n worker?: WorkerLike;\n workerFactory?: () => WorkerLike;\n workerScript?: string | URL;\n workerOptions?: object;\n fallback?: Transport;\n codec?: Codec<string | Uint8Array>;\n minLevel?: LoggerLevel;\n transferBuffers?: boolean;\n readyTimeoutMs?: number;\n ackTimeoutMs?: number;\n autoEnd?: boolean;\n}\n\ninterface PendingBatch {\n id: number;\n events: LogEvent[];\n context: TransportContext;\n timer?: ReturnType<typeof setTimeout>;\n resolve: () => void;\n}\n\nfunction createDefaultWorker(options: WorkerTransportOptions): WorkerLike {\n if (!options.workerScript) {\n throw new Error(\"workerTransport requires worker, workerFactory, or workerScript.\");\n }\n return new Worker(options.workerScript, options.workerOptions);\n}\n\nfunction payloadToBytes(payload: string | Uint8Array): Uint8Array {\n if (typeof payload !== \"string\") return payload;\n return new TextEncoder().encode(payload);\n}\n\nfunction transferablePayload(payload: Uint8Array): {\n payload: Uint8Array;\n transferList?: ArrayBuffer[];\n} {\n const copy = Uint8Array.from(payload);\n return {\n payload: copy,\n transferList: [copy.buffer],\n };\n}\n\nfunction normalizePositiveTimeout(value: number | undefined): number {\n if (value === undefined || !Number.isFinite(value) || value <= 0) return 0;\n return Math.floor(value);\n}\n\nfunction protocolMessage(value: unknown): WorkerTransportProtocolMessage | undefined {\n if (!value || typeof value !== \"object\") return undefined;\n const message = value as { type?: unknown };\n if (message.type === \"loggerjs:ready\") return { type: \"loggerjs:ready\" };\n if (message.type === \"loggerjs:batch:ack\") {\n const id = (value as { id?: unknown }).id;\n if (typeof id === \"number\") return { type: \"loggerjs:batch:ack\", id };\n }\n if (message.type === \"loggerjs:error\") {\n const item = value as { error?: unknown; message?: unknown };\n return {\n type: \"loggerjs:error\",\n error: item.error,\n message: typeof item.message === \"string\" ? item.message : undefined,\n };\n }\n return undefined;\n}\n\nfunction dropBatch(events: LogEvent[], reason: string) {\n incrementLoggerMetaCounter(\"transport.dropped\", events.length);\n incrementLoggerMetaCounter(`transport.dropped.${reason}`, events.length);\n}\n\nexport function workerTransport(options: WorkerTransportOptions = {}): Transport {\n const codec = options.codec ?? safeJsonCodec();\n const transportName = options.name ?? \"worker\";\n const fallback = options.fallback;\n const readyTimeoutMs = normalizePositiveTimeout(options.readyTimeoutMs);\n const ackTimeoutMs = normalizePositiveTimeout(options.ackTimeoutMs);\n const autoEnd = options.autoEnd ?? true;\n let worker: WorkerLike | undefined;\n let failed = false;\n let failedError: Error | undefined;\n let lastContext: TransportContext | undefined;\n let ready = readyTimeoutMs === 0;\n let readyPromise: Promise<void> | undefined;\n let readyTimer: ReturnType<typeof setTimeout> | undefined;\n let readyResolve: (() => void) | undefined;\n let readyReject: ((error: Error) => void) | undefined;\n let nextBatchId = 1;\n const pendingBatches = new Map<number, PendingBatch>();\n\n const setPendingGauge = () => {\n setLoggerMetaGauge(`transport.queue.depth.${transportName}`, pendingBatches.size);\n };\n\n const setReadyGauge = (value: number) => {\n setLoggerMetaGauge(`transport.ready.${transportName}`, value);\n };\n\n const reportInternalError = (error: unknown, operation: string) => {\n lastContext?.reportInternalError(error, {\n phase: \"transport\",\n transport: transportName,\n operation,\n });\n };\n\n const markFailed = (error: unknown, operation: string) => {\n if (failed) return;\n failed = true;\n failedError = error instanceof Error ? error : new Error(String(error));\n setReadyGauge(0);\n incrementLoggerMetaCounter(\"transport.worker.failed\");\n emitLoggerDiagnostic({\n stage: \"worker\",\n phase: \"error\",\n transport: transportName,\n operation,\n error,\n });\n reportInternalError(error, operation);\n readyReject?.(failedError);\n failPendingBatches(operation);\n };\n\n const onWorkerError = (error: unknown) => markFailed(error, \"worker-error\");\n const onWorkerExit = (code: unknown) => {\n if (typeof code === \"number\" && code !== 0) markFailed(code, \"worker-exit\");\n };\n const onWorkerMessage = (value: unknown) => {\n const message = protocolMessage(value);\n if (!message) return;\n if (message.type === \"loggerjs:ready\") {\n ready = true;\n setReadyGauge(1);\n emitLoggerDiagnostic({\n stage: \"worker\",\n phase: \"end\",\n transport: transportName,\n operation: \"ready\",\n });\n if (readyTimer) clearTimeout(readyTimer);\n readyResolve?.();\n return;\n }\n if (message.type === \"loggerjs:batch:ack\") {\n const pending = pendingBatches.get(message.id);\n if (!pending) return;\n pendingBatches.delete(message.id);\n setPendingGauge();\n if (pending.timer) clearTimeout(pending.timer);\n pending.resolve();\n incrementLoggerMetaCounter(\"transport.worker.ack\");\n return;\n }\n markFailed(\n message.error ?? new Error(message.message ?? \"Worker reported an error\"),\n \"worker-message\",\n );\n };\n\n const fallbackOrDropBatch = async (\n events: LogEvent[],\n context: TransportContext,\n reason: string,\n ) => {\n if (fallback) {\n await fallbackBatch(events, context);\n return;\n }\n dropBatch(events, reason);\n };\n\n const failPendingBatch = (pending: PendingBatch, reason: string) => {\n pendingBatches.delete(pending.id);\n setPendingGauge();\n if (pending.timer) clearTimeout(pending.timer);\n incrementLoggerMetaCounter(\"transport.worker.pending-dropped\", pending.events.length);\n void fallbackOrDropBatch(pending.events, pending.context, reason).finally(pending.resolve);\n };\n\n function failPendingBatches(reason: string) {\n for (const pending of Array.from(pendingBatches.values())) failPendingBatch(pending, reason);\n }\n\n const waitForReady = async () => {\n if (ready) return;\n readyPromise ??= new Promise<void>((resolve, reject) => {\n readyResolve = resolve;\n readyReject = reject;\n readyTimer = setTimeout(() => {\n reject(new Error(`workerTransport ready timeout after ${readyTimeoutMs}ms`));\n }, readyTimeoutMs);\n });\n await readyPromise;\n };\n\n const getWorker = (): WorkerLike | undefined => {\n if (failed) return undefined;\n if (worker) return worker;\n try {\n worker = options.worker ?? options.workerFactory?.() ?? createDefaultWorker(options);\n worker.on?.(\"error\", onWorkerError);\n worker.on?.(\"exit\", onWorkerExit);\n worker.on?.(\"message\", onWorkerMessage);\n if (ready) setReadyGauge(1);\n return worker;\n } catch (error) {\n markFailed(error, \"create-worker\");\n return undefined;\n }\n };\n\n const fallbackBatch = async (events: LogEvent[], context: TransportContext) => {\n if (fallback?.logBatch) {\n await fallback.logBatch(events, context);\n return;\n }\n if (fallback?.log) {\n for (const event of events) {\n // oxlint-disable-next-line no-await-in-loop -- Fallback should preserve log order.\n await fallback.log(event, context);\n }\n }\n };\n\n const postBatch = async (events: LogEvent[], context: TransportContext) => {\n lastContext = context;\n const currentWorker = getWorker();\n if (!currentWorker) {\n await fallbackOrDropBatch(events, context, \"worker-unavailable\");\n return;\n }\n try {\n await waitForReady();\n } catch (error) {\n markFailed(error, \"worker-ready-timeout\");\n await fallbackOrDropBatch(events, context, \"worker-ready-timeout\");\n return;\n }\n\n const encoded = payloadToBytes(codec.encode(events));\n const transferable =\n options.transferBuffers === false\n ? { payload: encoded, transferList: undefined }\n : transferablePayload(encoded);\n const message: WorkerTransportMessage = {\n type: \"loggerjs:batch\",\n codec: codec.name,\n contentType: codec.contentType,\n count: events.length,\n payload: transferable.payload,\n };\n let pending: PendingBatch | undefined;\n if (ackTimeoutMs > 0) {\n const id = nextBatchId;\n nextBatchId += 1;\n message.id = id;\n pending = { id, events, context, resolve: () => {} };\n pending.timer = setTimeout(() => {\n if (!pending) return;\n markFailed(\n new Error(`workerTransport ack timeout after ${ackTimeoutMs}ms`),\n \"worker-ack-timeout\",\n );\n }, ackTimeoutMs);\n pendingBatches.set(id, pending);\n setPendingGauge();\n }\n\n try {\n currentWorker.postMessage(message, transferable.transferList);\n } catch (error) {\n markFailed(error, \"post-message\");\n if (!pending) await fallbackOrDropBatch(events, context, \"worker-post-message\");\n }\n };\n\n const transport: Transport = {\n name: transportName,\n minLevel: options.minLevel,\n async ready() {\n const currentWorker = getWorker();\n if (!currentWorker) {\n if (fallback) {\n await fallback.ready?.();\n return;\n }\n throw failedError ?? new Error(\"workerTransport is unavailable\");\n }\n try {\n await waitForReady();\n } catch (error) {\n markFailed(error, \"worker-ready-timeout\");\n if (fallback) {\n await fallback.ready?.();\n return;\n }\n throw error;\n }\n },\n log(event, context) {\n if (options.minLevel !== undefined && event.level < toLevelValue(options.minLevel)) return;\n return postBatch([event], context);\n },\n logBatch(events, context) {\n return postBatch(events, context);\n },\n async flush() {\n await Promise.all(\n Array.from(\n pendingBatches.values(),\n (pending) =>\n new Promise<void>((resolve) => {\n const originalResolve = pending.resolve;\n pending.resolve = () => {\n originalResolve();\n resolve();\n };\n }),\n ),\n );\n await fallback?.flush?.();\n },\n async close() {\n await transport.flush?.();\n worker?.off?.(\"error\", onWorkerError);\n worker?.off?.(\"exit\", onWorkerExit);\n worker?.off?.(\"message\", onWorkerMessage);\n await fallback?.close?.();\n if (autoEnd) await worker?.terminate?.();\n if (readyTimer) clearTimeout(readyTimer);\n readyReject = undefined;\n readyResolve = undefined;\n },\n };\n return transport;\n}\n"],"mappings":";;;AA0DA,SAAS,oBAAoB,SAA6C;CACxE,IAAI,CAAC,QAAQ,cACX,MAAM,IAAI,MAAM,kEAAkE;CAEpF,OAAO,IAAI,OAAO,QAAQ,cAAc,QAAQ,aAAa;AAC/D;AAEA,SAAS,eAAe,SAA0C;CAChE,IAAI,OAAO,YAAY,UAAU,OAAO;CACxC,OAAO,IAAI,YAAY,CAAC,CAAC,OAAO,OAAO;AACzC;AAEA,SAAS,oBAAoB,SAG3B;CACA,MAAM,OAAO,WAAW,KAAK,OAAO;CACpC,OAAO;EACL,SAAS;EACT,cAAc,CAAC,KAAK,MAAM;CAC5B;AACF;AAEA,SAAS,yBAAyB,OAAmC;CACnE,IAAI,UAAU,KAAA,KAAa,CAAC,OAAO,SAAS,KAAK,KAAK,SAAS,GAAG,OAAO;CACzE,OAAO,KAAK,MAAM,KAAK;AACzB;AAEA,SAAS,gBAAgB,OAA4D;CACnF,IAAI,CAAC,SAAS,OAAO,UAAU,UAAU,OAAO,KAAA;CAChD,MAAM,UAAU;CAChB,IAAI,QAAQ,SAAS,kBAAkB,OAAO,EAAE,MAAM,iBAAiB;CACvE,IAAI,QAAQ,SAAS,sBAAsB;EACzC,MAAM,KAAM,MAA2B;EACvC,IAAI,OAAO,OAAO,UAAU,OAAO;GAAE,MAAM;GAAsB;EAAG;CACtE;CACA,IAAI,QAAQ,SAAS,kBAAkB;EACrC,MAAM,OAAO;EACb,OAAO;GACL,MAAM;GACN,OAAO,KAAK;GACZ,SAAS,OAAO,KAAK,YAAY,WAAW,KAAK,UAAU,KAAA;EAC7D;CACF;AAEF;AAEA,SAAS,UAAU,QAAoB,QAAgB;CACrD,2BAA2B,qBAAqB,OAAO,MAAM;CAC7D,2BAA2B,qBAAqB,UAAU,OAAO,MAAM;AACzE;AAEA,SAAgB,gBAAgB,UAAkC,CAAC,GAAc;CAC/E,MAAM,QAAQ,QAAQ,SAAS,cAAc;CAC7C,MAAM,gBAAgB,QAAQ,QAAQ;CACtC,MAAM,WAAW,QAAQ;CACzB,MAAM,iBAAiB,yBAAyB,QAAQ,cAAc;CACtE,MAAM,eAAe,yBAAyB,QAAQ,YAAY;CAClE,MAAM,UAAU,QAAQ,WAAW;CACnC,IAAI;CACJ,IAAI,SAAS;CACb,IAAI;CACJ,IAAI;CACJ,IAAI,QAAQ,mBAAmB;CAC/B,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI,cAAc;CAClB,MAAM,iCAAiB,IAAI,IAA0B;CAErD,MAAM,wBAAwB;EAC5B,mBAAmB,yBAAyB,iBAAiB,eAAe,IAAI;CAClF;CAEA,MAAM,iBAAiB,UAAkB;EACvC,mBAAmB,mBAAmB,iBAAiB,KAAK;CAC9D;CAEA,MAAM,uBAAuB,OAAgB,cAAsB;EACjE,aAAa,oBAAoB,OAAO;GACtC,OAAO;GACP,WAAW;GACX;EACF,CAAC;CACH;CAEA,MAAM,cAAc,OAAgB,cAAsB;EACxD,IAAI,QAAQ;EACZ,SAAS;EACT,cAAc,iBAAiB,QAAQ,QAAQ,IAAI,MAAM,OAAO,KAAK,CAAC;EACtE,cAAc,CAAC;EACf,2BAA2B,yBAAyB;EACpD,qBAAqB;GACnB,OAAO;GACP,OAAO;GACP,WAAW;GACX;GACA;EACF,CAAC;EACD,oBAAoB,OAAO,SAAS;EACpC,cAAc,WAAW;EACzB,mBAAmB,SAAS;CAC9B;CAEA,MAAM,iBAAiB,UAAmB,WAAW,OAAO,cAAc;CAC1E,MAAM,gBAAgB,SAAkB;EACtC,IAAI,OAAO,SAAS,YAAY,SAAS,GAAG,WAAW,MAAM,aAAa;CAC5E;CACA,MAAM,mBAAmB,UAAmB;EAC1C,MAAM,UAAU,gBAAgB,KAAK;EACrC,IAAI,CAAC,SAAS;EACd,IAAI,QAAQ,SAAS,kBAAkB;GACrC,QAAQ;GACR,cAAc,CAAC;GACf,qBAAqB;IACnB,OAAO;IACP,OAAO;IACP,WAAW;IACX,WAAW;GACb,CAAC;GACD,IAAI,YAAY,aAAa,UAAU;GACvC,eAAe;GACf;EACF;EACA,IAAI,QAAQ,SAAS,sBAAsB;GACzC,MAAM,UAAU,eAAe,IAAI,QAAQ,EAAE;GAC7C,IAAI,CAAC,SAAS;GACd,eAAe,OAAO,QAAQ,EAAE;GAChC,gBAAgB;GAChB,IAAI,QAAQ,OAAO,aAAa,QAAQ,KAAK;GAC7C,QAAQ,QAAQ;GAChB,2BAA2B,sBAAsB;GACjD;EACF;EACA,WACE,QAAQ,SAAS,IAAI,MAAM,QAAQ,WAAW,0BAA0B,GACxE,gBACF;CACF;CAEA,MAAM,sBAAsB,OAC1B,QACA,SACA,WACG;EACH,IAAI,UAAU;GACZ,MAAM,cAAc,QAAQ,OAAO;GACnC;EACF;EACA,UAAU,QAAQ,MAAM;CAC1B;CAEA,MAAM,oBAAoB,SAAuB,WAAmB;EAClE,eAAe,OAAO,QAAQ,EAAE;EAChC,gBAAgB;EAChB,IAAI,QAAQ,OAAO,aAAa,QAAQ,KAAK;EAC7C,2BAA2B,oCAAoC,QAAQ,OAAO,MAAM;EACpF,oBAAyB,QAAQ,QAAQ,QAAQ,SAAS,MAAM,CAAC,CAAC,QAAQ,QAAQ,OAAO;CAC3F;CAEA,SAAS,mBAAmB,QAAgB;EAC1C,KAAK,MAAM,WAAW,MAAM,KAAK,eAAe,OAAO,CAAC,GAAG,iBAAiB,SAAS,MAAM;CAC7F;CAEA,MAAM,eAAe,YAAY;EAC/B,IAAI,OAAO;EACX,iBAAiB,IAAI,SAAe,SAAS,WAAW;GACtD,eAAe;GACf,cAAc;GACd,aAAa,iBAAiB;IAC5B,uBAAO,IAAI,MAAM,uCAAuC,eAAe,GAAG,CAAC;GAC7E,GAAG,cAAc;EACnB,CAAC;EACD,MAAM;CACR;CAEA,MAAM,kBAA0C;EAC9C,IAAI,QAAQ,OAAO,KAAA;EACnB,IAAI,QAAQ,OAAO;EACnB,IAAI;GACF,SAAS,QAAQ,UAAU,QAAQ,gBAAgB,KAAK,oBAAoB,OAAO;GACnF,OAAO,KAAK,SAAS,aAAa;GAClC,OAAO,KAAK,QAAQ,YAAY;GAChC,OAAO,KAAK,WAAW,eAAe;GACtC,IAAI,OAAO,cAAc,CAAC;GAC1B,OAAO;EACT,SAAS,OAAO;GACd,WAAW,OAAO,eAAe;GACjC;EACF;CACF;CAEA,MAAM,gBAAgB,OAAO,QAAoB,YAA8B;EAC7E,IAAI,UAAU,UAAU;GACtB,MAAM,SAAS,SAAS,QAAQ,OAAO;GACvC;EACF;EACA,IAAI,UAAU,KACZ,KAAK,MAAM,SAAS,QAElB,MAAM,SAAS,IAAI,OAAO,OAAO;CAGvC;CAEA,MAAM,YAAY,OAAO,QAAoB,YAA8B;EACzE,cAAc;EACd,MAAM,gBAAgB,UAAU;EAChC,IAAI,CAAC,eAAe;GAClB,MAAM,oBAAoB,QAAQ,SAAS,oBAAoB;GAC/D;EACF;EACA,IAAI;GACF,MAAM,aAAa;EACrB,SAAS,OAAO;GACd,WAAW,OAAO,sBAAsB;GACxC,MAAM,oBAAoB,QAAQ,SAAS,sBAAsB;GACjE;EACF;EAEA,MAAM,UAAU,eAAe,MAAM,OAAO,MAAM,CAAC;EACnD,MAAM,eACJ,QAAQ,oBAAoB,QACxB;GAAE,SAAS;GAAS,cAAc,KAAA;EAAU,IAC5C,oBAAoB,OAAO;EACjC,MAAM,UAAkC;GACtC,MAAM;GACN,OAAO,MAAM;GACb,aAAa,MAAM;GACnB,OAAO,OAAO;GACd,SAAS,aAAa;EACxB;EACA,IAAI;EACJ,IAAI,eAAe,GAAG;GACpB,MAAM,KAAK;GACX,eAAe;GACf,QAAQ,KAAK;GACb,UAAU;IAAE;IAAI;IAAQ;IAAS,eAAe,CAAC;GAAE;GACnD,QAAQ,QAAQ,iBAAiB;IAC/B,IAAI,CAAC,SAAS;IACd,2BACE,IAAI,MAAM,qCAAqC,aAAa,GAAG,GAC/D,oBACF;GACF,GAAG,YAAY;GACf,eAAe,IAAI,IAAI,OAAO;GAC9B,gBAAgB;EAClB;EAEA,IAAI;GACF,cAAc,YAAY,SAAS,aAAa,YAAY;EAC9D,SAAS,OAAO;GACd,WAAW,OAAO,cAAc;GAChC,IAAI,CAAC,SAAS,MAAM,oBAAoB,QAAQ,SAAS,qBAAqB;EAChF;CACF;CAEA,MAAM,YAAuB;EAC3B,MAAM;EACN,UAAU,QAAQ;EAClB,MAAM,QAAQ;GAEZ,IAAI,CADkB,UACL,GAAG;IAClB,IAAI,UAAU;KACZ,MAAM,SAAS,QAAQ;KACvB;IACF;IACA,MAAM,+BAAe,IAAI,MAAM,gCAAgC;GACjE;GACA,IAAI;IACF,MAAM,aAAa;GACrB,SAAS,OAAO;IACd,WAAW,OAAO,sBAAsB;IACxC,IAAI,UAAU;KACZ,MAAM,SAAS,QAAQ;KACvB;IACF;IACA,MAAM;GACR;EACF;EACA,IAAI,OAAO,SAAS;GAClB,IAAI,QAAQ,aAAa,KAAA,KAAa,MAAM,QAAQ,aAAa,QAAQ,QAAQ,GAAG;GACpF,OAAO,UAAU,CAAC,KAAK,GAAG,OAAO;EACnC;EACA,SAAS,QAAQ,SAAS;GACxB,OAAO,UAAU,QAAQ,OAAO;EAClC;EACA,MAAM,QAAQ;GACZ,MAAM,QAAQ,IACZ,MAAM,KACJ,eAAe,OAAO,IACrB,YACC,IAAI,SAAe,YAAY;IAC7B,MAAM,kBAAkB,QAAQ;IAChC,QAAQ,gBAAgB;KACtB,gBAAgB;KAChB,QAAQ;IACV;GACF,CAAC,CACL,CACF;GACA,MAAM,UAAU,QAAQ;EAC1B;EACA,MAAM,QAAQ;GACZ,MAAM,UAAU,QAAQ;GACxB,QAAQ,MAAM,SAAS,aAAa;GACpC,QAAQ,MAAM,QAAQ,YAAY;GAClC,QAAQ,MAAM,WAAW,eAAe;GACxC,MAAM,UAAU,QAAQ;GACxB,IAAI,SAAS,MAAM,QAAQ,YAAY;GACvC,IAAI,YAAY,aAAa,UAAU;GACvC,cAAc,KAAA;GACd,eAAe,KAAA;EACjB;CACF;CACA,OAAO;AACT"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loggerjs/node",
3
- "version": "0.5.0",
3
+ "version": "0.5.2",
4
4
  "description": "Node.js transports and integrations for loggerjs.",
5
5
  "homepage": "https://github.com/jskits/loggerjs/tree/main/packages/node#readme",
6
6
  "bugs": {
@@ -29,129 +29,129 @@
29
29
  "require": "./dist/index.cjs"
30
30
  },
31
31
  "./transport-http": {
32
- "types": "./dist/index.d.ts",
33
- "import": "./dist/index.js",
34
- "require": "./dist/index.cjs"
32
+ "types": "./dist/http-transport.d.ts",
33
+ "import": "./dist/http-transport.js",
34
+ "require": "./dist/http-transport.cjs"
35
35
  },
36
36
  "./payload-transforms": {
37
- "types": "./dist/index.d.ts",
38
- "import": "./dist/index.js",
39
- "require": "./dist/index.cjs"
37
+ "types": "./dist/payload-transforms.d.ts",
38
+ "import": "./dist/payload-transforms.js",
39
+ "require": "./dist/payload-transforms.cjs"
40
40
  },
41
41
  "./transport-file": {
42
- "types": "./dist/index.d.ts",
43
- "import": "./dist/index.js",
44
- "require": "./dist/index.cjs"
42
+ "types": "./dist/file-transport.d.ts",
43
+ "import": "./dist/file-transport.js",
44
+ "require": "./dist/file-transport.cjs"
45
45
  },
46
46
  "./transport-rotating-file": {
47
- "types": "./dist/index.d.ts",
48
- "import": "./dist/index.js",
49
- "require": "./dist/index.cjs"
47
+ "types": "./dist/rotating-file-transport.d.ts",
48
+ "import": "./dist/rotating-file-transport.js",
49
+ "require": "./dist/rotating-file-transport.cjs"
50
50
  },
51
51
  "./transport-stdout": {
52
- "types": "./dist/index.d.ts",
53
- "import": "./dist/index.js",
54
- "require": "./dist/index.cjs"
52
+ "types": "./dist/stdout-transport.d.ts",
53
+ "import": "./dist/stdout-transport.js",
54
+ "require": "./dist/stdout-transport.cjs"
55
55
  },
56
56
  "./transport-syslog": {
57
- "types": "./dist/index.d.ts",
58
- "import": "./dist/index.js",
59
- "require": "./dist/index.cjs"
57
+ "types": "./dist/syslog-transport.d.ts",
58
+ "import": "./dist/syslog-transport.js",
59
+ "require": "./dist/syslog-transport.cjs"
60
60
  },
61
61
  "./transport-worker": {
62
- "types": "./dist/index.d.ts",
63
- "import": "./dist/index.js",
64
- "require": "./dist/index.cjs"
62
+ "types": "./dist/worker-transport.d.ts",
63
+ "import": "./dist/worker-transport.js",
64
+ "require": "./dist/worker-transport.cjs"
65
65
  },
66
66
  "./integration-process": {
67
- "types": "./dist/index.d.ts",
68
- "import": "./dist/index.js",
69
- "require": "./dist/index.cjs"
67
+ "types": "./dist/process-integration.d.ts",
68
+ "import": "./dist/process-integration.js",
69
+ "require": "./dist/process-integration.cjs"
70
70
  },
71
71
  "./integration-cli": {
72
- "types": "./dist/index.d.ts",
73
- "import": "./dist/index.js",
74
- "require": "./dist/index.cjs"
72
+ "types": "./dist/cli-integration.d.ts",
73
+ "import": "./dist/cli-integration.js",
74
+ "require": "./dist/cli-integration.cjs"
75
75
  },
76
76
  "./integration-koa": {
77
- "types": "./dist/index.d.ts",
78
- "import": "./dist/index.js",
79
- "require": "./dist/index.cjs"
77
+ "types": "./dist/koa-integration.d.ts",
78
+ "import": "./dist/koa-integration.js",
79
+ "require": "./dist/koa-integration.cjs"
80
80
  },
81
81
  "./integration-nest": {
82
- "types": "./dist/index.d.ts",
83
- "import": "./dist/index.js",
84
- "require": "./dist/index.cjs"
82
+ "types": "./dist/nest-integration.d.ts",
83
+ "import": "./dist/nest-integration.js",
84
+ "require": "./dist/nest-integration.cjs"
85
85
  },
86
86
  "./integration-hapi": {
87
- "types": "./dist/index.d.ts",
88
- "import": "./dist/index.js",
89
- "require": "./dist/index.cjs"
87
+ "types": "./dist/hapi-integration.d.ts",
88
+ "import": "./dist/hapi-integration.js",
89
+ "require": "./dist/hapi-integration.cjs"
90
90
  },
91
91
  "./integration-prisma": {
92
- "types": "./dist/index.d.ts",
93
- "import": "./dist/index.js",
94
- "require": "./dist/index.cjs"
92
+ "types": "./dist/prisma-integration.d.ts",
93
+ "import": "./dist/prisma-integration.js",
94
+ "require": "./dist/prisma-integration.cjs"
95
95
  },
96
96
  "./integration-redis": {
97
- "types": "./dist/index.d.ts",
98
- "import": "./dist/index.js",
99
- "require": "./dist/index.cjs"
97
+ "types": "./dist/redis-integration.d.ts",
98
+ "import": "./dist/redis-integration.js",
99
+ "require": "./dist/redis-integration.cjs"
100
100
  },
101
101
  "./integration-queue": {
102
- "types": "./dist/index.d.ts",
103
- "import": "./dist/index.js",
104
- "require": "./dist/index.cjs"
102
+ "types": "./dist/queue-integration.d.ts",
103
+ "import": "./dist/queue-integration.js",
104
+ "require": "./dist/queue-integration.cjs"
105
105
  },
106
106
  "./integration-bullmq": {
107
- "types": "./dist/index.d.ts",
108
- "import": "./dist/index.js",
109
- "require": "./dist/index.cjs"
107
+ "types": "./dist/bullmq-integration.d.ts",
108
+ "import": "./dist/bullmq-integration.js",
109
+ "require": "./dist/bullmq-integration.cjs"
110
110
  },
111
111
  "./integration-serverless": {
112
- "types": "./dist/index.d.ts",
113
- "import": "./dist/index.js",
114
- "require": "./dist/index.cjs"
112
+ "types": "./dist/serverless-integration.d.ts",
113
+ "import": "./dist/serverless-integration.js",
114
+ "require": "./dist/serverless-integration.cjs"
115
115
  },
116
116
  "./integration-database": {
117
- "types": "./dist/index.d.ts",
118
- "import": "./dist/index.js",
119
- "require": "./dist/index.cjs"
117
+ "types": "./dist/database-integration.d.ts",
118
+ "import": "./dist/database-integration.js",
119
+ "require": "./dist/database-integration.cjs"
120
120
  },
121
121
  "./integration-express": {
122
- "types": "./dist/index.d.ts",
123
- "import": "./dist/index.js",
124
- "require": "./dist/index.cjs"
122
+ "types": "./dist/express-integration.d.ts",
123
+ "import": "./dist/express-integration.js",
124
+ "require": "./dist/express-integration.cjs"
125
125
  },
126
126
  "./integration-fastify": {
127
- "types": "./dist/index.d.ts",
128
- "import": "./dist/index.js",
129
- "require": "./dist/index.cjs"
127
+ "types": "./dist/fastify-integration.d.ts",
128
+ "import": "./dist/fastify-integration.js",
129
+ "require": "./dist/fastify-integration.cjs"
130
130
  },
131
131
  "./integration-fetch": {
132
- "types": "./dist/index.d.ts",
133
- "import": "./dist/index.js",
134
- "require": "./dist/index.cjs"
132
+ "types": "./dist/node-fetch-integration.d.ts",
133
+ "import": "./dist/node-fetch-integration.js",
134
+ "require": "./dist/node-fetch-integration.cjs"
135
135
  },
136
136
  "./integration-http-client": {
137
- "types": "./dist/index.d.ts",
138
- "import": "./dist/index.js",
139
- "require": "./dist/index.cjs"
137
+ "types": "./dist/node-http-client-integration.d.ts",
138
+ "import": "./dist/node-http-client-integration.js",
139
+ "require": "./dist/node-http-client-integration.cjs"
140
140
  },
141
141
  "./integration-diagnostics": {
142
- "types": "./dist/index.d.ts",
143
- "import": "./dist/index.js",
144
- "require": "./dist/index.cjs"
142
+ "types": "./dist/diagnostics-channel-integration.d.ts",
143
+ "import": "./dist/diagnostics-channel-integration.js",
144
+ "require": "./dist/diagnostics-channel-integration.cjs"
145
145
  },
146
146
  "./logger-diagnostics": {
147
- "types": "./dist/index.d.ts",
148
- "import": "./dist/index.js",
149
- "require": "./dist/index.cjs"
147
+ "types": "./dist/logger-diagnostics.d.ts",
148
+ "import": "./dist/logger-diagnostics.js",
149
+ "require": "./dist/logger-diagnostics.cjs"
150
150
  },
151
151
  "./context": {
152
- "types": "./dist/index.d.ts",
153
- "import": "./dist/index.js",
154
- "require": "./dist/index.cjs"
152
+ "types": "./dist/context.d.ts",
153
+ "import": "./dist/context.js",
154
+ "require": "./dist/context.cjs"
155
155
  }
156
156
  },
157
157
  "publishConfig": {
@@ -159,7 +159,34 @@
159
159
  "provenance": true
160
160
  },
161
161
  "dependencies": {
162
- "@loggerjs/core": "0.5.0"
162
+ "@loggerjs/core": "0.5.2"
163
+ },
164
+ "loggerjsSubpathEntries": {
165
+ "http-transport": "src/http-transport.ts",
166
+ "payload-transforms": "src/payload-transforms.ts",
167
+ "file-transport": "src/file-transport.ts",
168
+ "rotating-file-transport": "src/rotating-file-transport.ts",
169
+ "stdout-transport": "src/stdout-transport.ts",
170
+ "syslog-transport": "src/syslog-transport.ts",
171
+ "worker-transport": "src/worker-transport.ts",
172
+ "process-integration": "src/process-integration.ts",
173
+ "cli-integration": "src/cli-integration.ts",
174
+ "koa-integration": "src/koa-integration.ts",
175
+ "nest-integration": "src/nest-integration.ts",
176
+ "hapi-integration": "src/hapi-integration.ts",
177
+ "prisma-integration": "src/prisma-integration.ts",
178
+ "redis-integration": "src/redis-integration.ts",
179
+ "queue-integration": "src/queue-integration.ts",
180
+ "bullmq-integration": "src/bullmq-integration.ts",
181
+ "serverless-integration": "src/serverless-integration.ts",
182
+ "database-integration": "src/database-integration.ts",
183
+ "express-integration": "src/express-integration.ts",
184
+ "fastify-integration": "src/fastify-integration.ts",
185
+ "node-fetch-integration": "src/node-fetch-integration.ts",
186
+ "node-http-client-integration": "src/node-http-client-integration.ts",
187
+ "diagnostics-channel-integration": "src/diagnostics-channel-integration.ts",
188
+ "logger-diagnostics": "src/logger-diagnostics.ts",
189
+ "context": "src/context.ts"
163
190
  },
164
191
  "scripts": {
165
192
  "build": "pnpm run clean && pnpm run build:js && pnpm run build:types",