lograil 0.1.0 → 0.1.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.
Files changed (68) hide show
  1. package/README.md +3 -1
  2. package/dist/cjs/core/logger.d.ts +18 -16
  3. package/dist/cjs/core/logger.d.ts.map +1 -1
  4. package/dist/cjs/core/logger.js +104 -47
  5. package/dist/cjs/core/logger.js.map +1 -1
  6. package/dist/cjs/pipeline/formatter.d.ts.map +1 -1
  7. package/dist/cjs/pipeline/formatter.js +27 -10
  8. package/dist/cjs/pipeline/formatter.js.map +1 -1
  9. package/dist/cjs/pipeline/processor.d.ts.map +1 -1
  10. package/dist/cjs/pipeline/processor.js +18 -6
  11. package/dist/cjs/pipeline/processor.js.map +1 -1
  12. package/dist/cjs/plugin/manager.d.ts.map +1 -1
  13. package/dist/cjs/plugin/manager.js +9 -1
  14. package/dist/cjs/plugin/manager.js.map +1 -1
  15. package/dist/cjs/transport/file.d.ts +7 -3
  16. package/dist/cjs/transport/file.d.ts.map +1 -1
  17. package/dist/cjs/transport/file.js +18 -4
  18. package/dist/cjs/transport/file.js.map +1 -1
  19. package/dist/cjs/transport/live.d.ts +2 -1
  20. package/dist/cjs/transport/live.d.ts.map +1 -1
  21. package/dist/cjs/transport/live.js +3 -0
  22. package/dist/cjs/transport/live.js.map +1 -1
  23. package/dist/cjs/transport/otlp.d.ts +1 -1
  24. package/dist/cjs/transport/otlp.d.ts.map +1 -1
  25. package/dist/cjs/transport/otlp.js +24 -21
  26. package/dist/cjs/transport/otlp.js.map +1 -1
  27. package/dist/cjs/transport/worker-ipc.d.ts +1 -0
  28. package/dist/cjs/transport/worker-ipc.d.ts.map +1 -1
  29. package/dist/cjs/transport/worker-ipc.js +12 -4
  30. package/dist/cjs/transport/worker-ipc.js.map +1 -1
  31. package/dist/cjs/types.d.ts +14 -5
  32. package/dist/cjs/types.d.ts.map +1 -1
  33. package/dist/cjs/types.js +5 -1
  34. package/dist/cjs/types.js.map +1 -1
  35. package/dist/esm/core/logger.d.ts +18 -16
  36. package/dist/esm/core/logger.d.ts.map +1 -1
  37. package/dist/esm/core/logger.js +104 -47
  38. package/dist/esm/core/logger.js.map +1 -1
  39. package/dist/esm/pipeline/formatter.d.ts.map +1 -1
  40. package/dist/esm/pipeline/formatter.js +27 -10
  41. package/dist/esm/pipeline/formatter.js.map +1 -1
  42. package/dist/esm/pipeline/processor.d.ts.map +1 -1
  43. package/dist/esm/pipeline/processor.js +18 -6
  44. package/dist/esm/pipeline/processor.js.map +1 -1
  45. package/dist/esm/plugin/manager.d.ts.map +1 -1
  46. package/dist/esm/plugin/manager.js +9 -1
  47. package/dist/esm/plugin/manager.js.map +1 -1
  48. package/dist/esm/transport/file.d.ts +7 -3
  49. package/dist/esm/transport/file.d.ts.map +1 -1
  50. package/dist/esm/transport/file.js +18 -4
  51. package/dist/esm/transport/file.js.map +1 -1
  52. package/dist/esm/transport/live.d.ts +2 -1
  53. package/dist/esm/transport/live.d.ts.map +1 -1
  54. package/dist/esm/transport/live.js +3 -0
  55. package/dist/esm/transport/live.js.map +1 -1
  56. package/dist/esm/transport/otlp.d.ts +1 -1
  57. package/dist/esm/transport/otlp.d.ts.map +1 -1
  58. package/dist/esm/transport/otlp.js +24 -21
  59. package/dist/esm/transport/otlp.js.map +1 -1
  60. package/dist/esm/transport/worker-ipc.d.ts +1 -0
  61. package/dist/esm/transport/worker-ipc.d.ts.map +1 -1
  62. package/dist/esm/transport/worker-ipc.js +12 -4
  63. package/dist/esm/transport/worker-ipc.js.map +1 -1
  64. package/dist/esm/types.d.ts +14 -5
  65. package/dist/esm/types.d.ts.map +1 -1
  66. package/dist/esm/types.js +5 -1
  67. package/dist/esm/types.js.map +1 -1
  68. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"worker-ipc.js","sourceRoot":"","sources":["../../../src/transport/worker-ipc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-ipc.js","sourceRoot":"","sources":["../../../src/transport/worker-ipc.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,12 @@ export type LogLevelName = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'fata
8
8
  export type LogLevelValue = number;
9
9
  /**
10
10
  * Ordered by severity. Higher value means more severe.
11
+ * @internal
11
12
  */
12
13
  export declare const LOG_LEVELS: Record<LogLevelName, LogLevelValue>;
14
+ /** @internal */
13
15
  export declare const LOG_LEVEL_NAMES: LogLevelName[];
16
+ /** @internal */
14
17
  export declare function isLogLevelName(value: unknown): value is LogLevelName;
15
18
  /**
16
19
  * A single structured log record produced by the Logger.
@@ -35,7 +38,10 @@ export interface LogEntry {
35
38
  message: string;
36
39
  /** Extra positional arguments passed to the log call. */
37
40
  args: unknown[];
38
- /** Epoch milliseconds when the entry was created. */
41
+ /**
42
+ * Epoch milliseconds when the entry was created. Internal — prefer `time`
43
+ * (ISO string) for display.
44
+ */
39
45
  timestamp: number;
40
46
  /** Coarse ISO timestamp for display / serialization. */
41
47
  time: string;
@@ -47,8 +53,10 @@ export interface LogEntry {
47
53
  context: Record<string, unknown>;
48
54
  /** One-off metadata attached to this entry only. */
49
55
  metadata: Record<string, unknown>;
50
- /** Error object when the entry was created from one. */
51
- error?: Error;
56
+ /** Error-like object when the entry was created from one. Supports both
57
+ * standard `Error` instances and arbitrary values (e.g. string messages) so
58
+ * callers can log non-Error exceptions without type casting. */
59
+ error?: unknown;
52
60
  }
53
61
  export type LogFn = (message: unknown, ...args: unknown[]) => void;
54
62
  export interface LoggerMethods {
@@ -60,13 +68,14 @@ export interface LoggerMethods {
60
68
  fatal: LogFn;
61
69
  }
62
70
  export type LogLevelInput = LogLevelName | LogLevelValue;
71
+ /** @internal */
63
72
  export declare function normalizeLevel(input: LogLevelInput): LogLevelValue;
64
- /** Cross-process command sent over IPC to change log level. */
73
+ /** @internal Cross-process command sent over IPC to change log level. */
65
74
  export interface LogLevelCommand {
66
75
  __lograilCmd: true;
67
76
  __lograilCmdType: 'setLevel';
68
77
  level: LogLevelName | LogLevelValue;
69
78
  }
70
- /** Returns true when the value is a {@link LogLevelCommand}. */
79
+ /** @internal Returns true when the value is a {@link LogLevelCommand}. */
71
80
  export declare function isLogLevelCommand(value: unknown): value is LogLevelCommand;
72
81
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAEnF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,aAAa,CAO1D,CAAC;AAEF,eAAO,MAAM,eAAe,EAA8B,YAAY,EAAE,CAAC;AAEzE,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAEpE;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,QAAQ;IACvB,gDAAgD;IAChD,KAAK,EAAE,aAAa,CAAC;IACrB,iCAAiC;IACjC,SAAS,EAAE,YAAY,CAAC;IACxB,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,wDAAwD;IACxD,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AAEnE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;CACd;AAED,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,aAAa,CAAC;AAEzD,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,CASlE;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,IAAI,CAAC;IACnB,gBAAgB,EAAE,UAAU,CAAC;IAC7B,KAAK,EAAE,YAAY,GAAG,aAAa,CAAC;CACrC;AAED,gEAAgE;AAChE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAO1E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAEnF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,aAAa,CAO1D,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,eAAe,EAA8B,YAAY,EAAE,CAAC;AAEzE,gBAAgB;AAChB,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAEpE;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,QAAQ;IACvB,gDAAgD;IAChD,KAAK,EAAE,aAAa,CAAC;IACrB,iCAAiC;IACjC,SAAS,EAAE,YAAY,CAAC;IACxB,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC;;oEAEgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AAEnE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;CACd;AAED,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,aAAa,CAAC;AAEzD,gBAAgB;AAChB,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,CASlE;AAED,yEAAyE;AACzE,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,IAAI,CAAC;IACnB,gBAAgB,EAAE,UAAU,CAAC;IAC7B,KAAK,EAAE,YAAY,GAAG,aAAa,CAAC;CACrC;AAED,0EAA0E;AAC1E,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAO1E"}
package/dist/cjs/types.js CHANGED
@@ -12,6 +12,7 @@ exports.normalizeLevel = normalizeLevel;
12
12
  exports.isLogLevelCommand = isLogLevelCommand;
13
13
  /**
14
14
  * Ordered by severity. Higher value means more severe.
15
+ * @internal
15
16
  */
16
17
  exports.LOG_LEVELS = {
17
18
  trace: 10,
@@ -21,10 +22,13 @@ exports.LOG_LEVELS = {
21
22
  error: 50,
22
23
  fatal: 60,
23
24
  };
25
+ /** @internal */
24
26
  exports.LOG_LEVEL_NAMES = Object.keys(exports.LOG_LEVELS);
27
+ /** @internal */
25
28
  function isLogLevelName(value) {
26
29
  return typeof value === 'string' && value in exports.LOG_LEVELS;
27
30
  }
31
+ /** @internal */
28
32
  function normalizeLevel(input) {
29
33
  if (typeof input === 'number') {
30
34
  return input;
@@ -35,7 +39,7 @@ function normalizeLevel(input) {
35
39
  }
36
40
  return value;
37
41
  }
38
- /** Returns true when the value is a {@link LogLevelCommand}. */
42
+ /** @internal Returns true when the value is a {@link LogLevelCommand}. */
39
43
  function isLogLevelCommand(value) {
40
44
  return (typeof value === 'object' &&
41
45
  value !== null &&
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAoBH,wCAEC;AAsDD,wCASC;AAUD,8CAOC;AAhGD;;GAEG;AACU,QAAA,UAAU,GAAwC;IAC7D,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;CACV,CAAC;AAEW,QAAA,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAU,CAAmB,CAAC;AAEzE,SAAgB,cAAc,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,kBAAU,CAAC;AAC1D,CAAC;AAsDD,SAAgB,cAAc,CAAC,KAAoB;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,KAAK,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AASD,gEAAgE;AAChE,SAAgB,iBAAiB,CAAC,KAAc;IAC9C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAiC,CAAC,YAAY,KAAK,IAAI;QACvD,KAAiC,CAAC,gBAAgB,KAAK,UAAU,CACnE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAuBH,wCAEC;AA4DD,wCASC;AAUD,8CAOC;AAzGD;;;GAGG;AACU,QAAA,UAAU,GAAwC;IAC7D,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,gBAAgB;AACH,QAAA,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAU,CAAmB,CAAC;AAEzE,gBAAgB;AAChB,SAAgB,cAAc,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,kBAAU,CAAC;AAC1D,CAAC;AA2DD,gBAAgB;AAChB,SAAgB,cAAc,CAAC,KAAoB;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,KAAK,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AASD,0EAA0E;AAC1E,SAAgB,iBAAiB,CAAC,KAAc;IAC9C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAiC,CAAC,YAAY,KAAK,IAAI;QACvD,KAAiC,CAAC,gBAAgB,KAAK,UAAU,CACnE,CAAC;AACJ,CAAC"}
@@ -42,9 +42,9 @@ export interface LoggerOptions {
42
42
  /**
43
43
  * Maximum time (ms) to spend flushing on process exit (`beforeExit`,
44
44
  * `SIGINT`, `SIGTERM`) before giving up and letting the process exit, so a
45
- * stalled transport flush can never hang shutdown. Default `2000`.
45
+ * stalled transport flush can never hang shutdown. Default `2000`.\
46
46
  */
47
- exitFlushTimeoutMs?: number;
47
+ flushTimeoutMs?: number;
48
48
  /** Optional scope / namespace for this logger. */
49
49
  scope?: string;
50
50
  /** Runtime adapter. Auto-detected when omitted. */
@@ -69,17 +69,17 @@ export interface LoggerOptions {
69
69
  */
70
70
  levelEnvVar?: string | null;
71
71
  /**
72
- * Scope/namespace filter. A comma- or space-separated list of glob patterns
72
+ * Scope filter. A comma- or space-separated list of glob patterns
73
73
  * (with `*` wildcards); a leading `-` excludes. Only entries whose `scope`
74
- * matches are emitted. Read automatically from `namespaceEnvVar` when omitted.
74
+ * matches are emitted. Read automatically from `scopeFilterEnvVar` when omitted.
75
75
  */
76
- namespaceFilter?: string | string[];
76
+ scopeFilter?: string | string[];
77
77
  /**
78
- * Environment variable whose value supplies the namespace filter when
79
- * `namespaceFilter` is not set. Defaults to `"LOGRAIL_DEBUG"`. Set to `null`
78
+ * Environment variable whose value supplies the scope filter when
79
+ * `scopeFilter` is not set. Defaults to `"LOGRAIL_DEBUG"`. Set to `null`
80
80
  * to disable.
81
81
  */
82
- namespaceEnvVar?: string | null;
82
+ scopeFilterEnvVar?: string | null;
83
83
  }
84
84
  /**
85
85
  * Internal options passed by `scope`/`child` to build a **lightweight** child
@@ -115,12 +115,14 @@ export declare class Logger implements LoggerMethods {
115
115
  private parent?;
116
116
  private levelOverride?;
117
117
  /**
118
- * Sequences the async plugin-interception step so entries are processed in
119
- * emit order. Transport writes fan out to their own per-transport queues
120
- * (see `transportQueues`), so a slow/blocked transport can never stall the
121
- * others or this front queue.
118
+ * Bounded async queue for plugin interception. Tracks in-flight entries so
119
+ * `flush()` and `destroy()` know when all interceptions are done without
120
+ * letting the dispatch chain grow unboundedly (each push would append a
121
+ * `.then()` to an ever-longer Promise chain).
122
122
  */
123
- private dispatchQueue;
123
+ private dispatchInflight;
124
+ private dispatchDrain;
125
+ private dispatchDrainResolve;
124
126
  /** Independent async-write queue per transport. */
125
127
  private transportQueues;
126
128
  private destroyed;
@@ -130,9 +132,9 @@ export declare class Logger implements LoggerMethods {
130
132
  private removeProcessHandlers?;
131
133
  private onLoggerError?;
132
134
  private writeTimeoutMs;
133
- private exitFlushTimeoutMs;
135
+ private flushTimeoutMs;
134
136
  private _exiting;
135
- private namespaceFilter?;
137
+ private scopeFilter?;
136
138
  /** True for loggers created via `scope`/`child` (share the parent's plumbing). */
137
139
  private isChild;
138
140
  /** Cached peer process level. When set, takes precedence over local `level` in `getLevel()`. */
@@ -241,7 +243,7 @@ export declare class Logger implements LoggerMethods {
241
243
  * exit the process) without risking a hang on a stalled transport.
242
244
  */
243
245
  private flushWithTimeout;
244
- /** Set the max time (ms) to flush on process exit before giving up. */
246
+ /** Set the max time (ms) to flush before process exit before giving up. */
245
247
  setExitFlushTimeout(ms: number): this;
246
248
  /** Get the current exit-flush timeout (ms). */
247
249
  getExitFlushTimeout(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/core/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAgB,MAAM,aAAa,CAAC;AAE/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAsCxD,0DAA0D;AAC1D,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC;AAE3F,8FAA8F;AAC9F,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,gBAAgB,CAAC;IACxB,uEAAuE;IACvE,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;AA8DjF,MAAM,WAAW,aAAa;IAC5B,6CAA6C;IAC7C,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;;OAIG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,gEAAgE;IAChE,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,QAAQ,GAAG,eAAe,CAAC;IACtC,8DAA8D;IAC9D,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACpC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED;;;;;;GAMG;AACH,UAAU,YAAY;IACpB,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAsBD;;;;;;;;GAQG;AACH,qBAAa,MAAO,YAAW,aAAa;IAC1C,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,UAAU,CAAe;IACjC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B;;;;;OAKG;IACH,OAAO,CAAC,aAAa,CAAoC;IACzD,mDAAmD;IACnD,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAC,CAAa;IACpC,OAAO,CAAC,uBAAuB,CAAS;IACxC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,qBAAqB,CAAC,CAAa;IAC3C,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC3C,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,kFAAkF;IAClF,OAAO,CAAC,OAAO,CAAS;IACxB,gGAAgG;IAChG,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,qFAAqF;IACrF,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,wEAAwE;IACxE,OAAO,CAAC,qBAAqB,CAAS;gBAE1B,OAAO,GAAE,aAAa,GAAG,YAAiB;IAuDtD;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAiBtB;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IASlC,QAAQ,IAAI,MAAM;IAUlB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAUpC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAMpD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI7C,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAMnD,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAKxC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMnC,8CAA8C;IAC9C,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIpC,oEAAoE;IACpE,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,4GAA4G;IAC5G,WAAW,IAAI,QAAQ;IAIvB,4FAA4F;IAC5F,OAAO,CAAC,kBAAkB;IAW1B,aAAa,IAAI,SAAS,SAAS,EAAE;IAMrC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlC;;;;;;;;;OASG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM;IAc/D;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,KAAK,CAAC,EAAE,aAAa,CAAA;KAAO,GAAG,MAAM;IAgBzF,KAAK,EAAE,KAAK,CAA2D;IACvE,KAAK,EAAE,KAAK,CAA2D;IACvE,IAAI,EAAE,KAAK,CAA0D;IACrE,IAAI,EAAE,KAAK,CAA0D;IACrE,KAAK,EAAE,KAAK,CAA2D;IACvE,KAAK,EAAE,KAAK,CAA2D;IAEvE,OAAO,CAAC,IAAI;IAaZ;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAahB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,UAAU;IAyElB,OAAO,CAAC,iBAAiB;IAmCzB,2EAA2E;IAC3E,OAAO,CAAC,UAAU;IAclB,0EAA0E;IAC1E,OAAO,CAAC,UAAU;IAOlB,qFAAqF;IACrF,OAAO,CAAC,oBAAoB;IAWtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAe5B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAexB,uEAAuE;IACvE,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAKrC,+CAA+C;IAC/C,mBAAmB,IAAI,MAAM;IAM7B;;;;OAIG;IACH,kBAAkB,IAAI,IAAI;IAyD1B;;;;OAIG;IACH,mBAAmB,IAAI,IAAI;IA2C3B;;;;;;OAMG;IACH,eAAe,IAAI,MAAM,IAAI;IAgCvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CA8B/B"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/core/logger.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,15 @@ function isoFromMs(ms) {
29
29
  TIME_DATE.setTime(ms);
30
30
  return `${pad(TIME_DATE.getUTCFullYear(), 4)}-${pad(TIME_DATE.getUTCMonth() + 1, 2)}-${pad(TIME_DATE.getUTCDate(), 2)}T${pad(TIME_DATE.getUTCHours(), 2)}:${pad(TIME_DATE.getUTCMinutes(), 2)}:${pad(TIME_DATE.getUTCSeconds(), 2)}.${pad(TIME_DATE.getUTCMilliseconds(), 3)}Z`;
31
31
  }
32
+ /** Cache compiled namespace filters by normalized input to avoid recompiling regexes on every call. */
33
+ const nsFilterCache = new Map();
34
+ function serializeNsInput(input) {
35
+ if (!input)
36
+ return '';
37
+ if (Array.isArray(input))
38
+ return input.join(',');
39
+ return input;
40
+ }
32
41
  function escapeRegex(s) {
33
42
  return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
34
43
  }
@@ -45,22 +54,34 @@ function toPattern(token) {
45
54
  * `undefined` (no filtering).
46
55
  */
47
56
  function compileNamespaceFilter(input) {
48
- if (!input || (Array.isArray(input) && input.length === 0))
49
- return undefined;
50
- const tokens = (Array.isArray(input) ? input : input.split(/[ ,]+/))
51
- .map((t) => t.trim())
52
- .filter(Boolean);
53
- if (tokens.length === 0)
54
- return undefined;
55
- const includes = [];
56
- const excludes = [];
57
- for (const token of tokens) {
58
- if (token.startsWith('-'))
59
- excludes.push(toPattern(token.slice(1)));
60
- else
61
- includes.push(toPattern(token));
57
+ const key = serializeNsInput(input);
58
+ if (nsFilterCache.has(key))
59
+ return nsFilterCache.get(key);
60
+ let result;
61
+ if (!input || (Array.isArray(input) && input.length === 0)) {
62
+ result = undefined;
63
+ }
64
+ else {
65
+ const tokens = (Array.isArray(input) ? input : input.split(/[ ,]+/))
66
+ .map((t) => t.trim())
67
+ .filter(Boolean);
68
+ if (tokens.length === 0) {
69
+ result = undefined;
70
+ }
71
+ else {
72
+ const includes = [];
73
+ const excludes = [];
74
+ for (const token of tokens) {
75
+ if (token.startsWith('-'))
76
+ excludes.push(toPattern(token.slice(1)));
77
+ else
78
+ includes.push(toPattern(token));
79
+ }
80
+ result = { includes, excludes };
81
+ }
62
82
  }
63
- return { includes, excludes };
83
+ nsFilterCache.set(key, result);
84
+ return result;
64
85
  }
65
86
  function matchesNamespace(scope, filter) {
66
87
  if (!filter)
@@ -103,12 +124,14 @@ function getNodeProcess() {
103
124
  export class Logger {
104
125
  constructor(options = {}) {
105
126
  /**
106
- * Sequences the async plugin-interception step so entries are processed in
107
- * emit order. Transport writes fan out to their own per-transport queues
108
- * (see `transportQueues`), so a slow/blocked transport can never stall the
109
- * others or this front queue.
127
+ * Bounded async queue for plugin interception. Tracks in-flight entries so
128
+ * `flush()` and `destroy()` know when all interceptions are done without
129
+ * letting the dispatch chain grow unboundedly (each push would append a
130
+ * `.then()` to an ever-longer Promise chain).
110
131
  */
111
- this.dispatchQueue = Promise.resolve();
132
+ this.dispatchInflight = 0;
133
+ this.dispatchDrain = null;
134
+ this.dispatchDrainResolve = undefined;
112
135
  /** Independent async-write queue per transport. */
113
136
  this.transportQueues = new Map();
114
137
  this.destroyed = false;
@@ -150,11 +173,11 @@ export class Logger {
150
173
  this.level = normalizeLevel(levelInput);
151
174
  this.originalLevel = this.level;
152
175
  this.scopeName = options.scope;
153
- const nsInput = options.namespaceFilter ??
154
- (options.namespaceEnvVar === null
176
+ const nsInput = options.scopeFilter ??
177
+ (options.scopeFilterEnvVar === null
155
178
  ? undefined
156
- : readEnvVar(options.namespaceEnvVar ?? 'LOGRAIL_DEBUG'));
157
- this.namespaceFilter = compileNamespaceFilter(nsInput);
179
+ : readEnvVar(options.scopeFilterEnvVar ?? 'LOGRAIL_DEBUG'));
180
+ this.scopeFilter = compileNamespaceFilter(nsInput);
158
181
  // On the Electron main process, receive renderer logs over IPC.
159
182
  if (this.runtime.attachReceiver) {
160
183
  this.detachReceiver = this.runtime.attachReceiver((entry) => this.ingestEntry(entry));
@@ -166,7 +189,7 @@ export class Logger {
166
189
  this.attachExitHandlers();
167
190
  this.onLoggerError = options.onError;
168
191
  this.writeTimeoutMs = options.writeTimeoutMs ?? 5000;
169
- this.exitFlushTimeoutMs = options.exitFlushTimeoutMs ?? 2000;
192
+ this.flushTimeoutMs = options.flushTimeoutMs ?? 2000;
170
193
  // Wire the pipeline/plugin error sinks into the unified handler.
171
194
  this.pipeline.onError = (err, info) => this.reportError(info.phase, err, info.entry);
172
195
  this.plugins.onError = (name, err, entry) => this.reportError('plugin', err, entry, name);
@@ -184,13 +207,13 @@ export class Logger {
184
207
  this.pipeline = parent.pipeline;
185
208
  this.plugins = parent.plugins;
186
209
  this.transports = parent.transports;
187
- this.namespaceFilter = parent.namespaceFilter;
210
+ this.scopeFilter = parent.scopeFilter;
188
211
  this.context = opts.context ?? createContextStore();
189
212
  this.scopeName = opts.scope;
190
213
  // Only a root logger owns the shared plugin error sink; children inherit it.
191
214
  this.onLoggerError = parent.onLoggerError;
192
215
  this.writeTimeoutMs = parent.writeTimeoutMs;
193
- this.exitFlushTimeoutMs = parent.exitFlushTimeoutMs;
216
+ this.flushTimeoutMs = parent.flushTimeoutMs;
194
217
  if (opts.levelOverride !== undefined)
195
218
  this.levelOverride = opts.levelOverride;
196
219
  }
@@ -204,7 +227,7 @@ export class Logger {
204
227
  return;
205
228
  if (entry.level < this.getLevel())
206
229
  return;
207
- if (!matchesNamespace(entry.scope, this.namespaceFilter))
230
+ if (!matchesNamespace(entry.scope, this.scopeFilter))
208
231
  return;
209
232
  this.dispatch(entry);
210
233
  }
@@ -255,9 +278,22 @@ export class Logger {
255
278
  }
256
279
  removeTransport(name) {
257
280
  const removed = this.transports.filter((t) => t.name === name);
258
- for (const t of removed)
259
- this.transportQueues.delete(t);
260
281
  this.transports = this.transports.filter((t) => t.name !== name);
282
+ for (const transport of removed) {
283
+ const prev = this.transportQueues.get(transport) ?? Promise.resolve();
284
+ const teardown = prev
285
+ .then(async () => {
286
+ if (transport.flush)
287
+ await this.guardFlush(transport.flush.bind(transport));
288
+ if (transport.close)
289
+ await Promise.resolve(transport.close());
290
+ })
291
+ .catch((err) => this.reportError('transport', err, undefined, transport.name))
292
+ .finally(() => {
293
+ this.transportQueues.delete(transport);
294
+ });
295
+ this.transportQueues.set(transport, teardown);
296
+ }
261
297
  }
262
298
  /** Unregister a plugin by name at runtime. */
263
299
  unregisterPlugin(name) {
@@ -345,7 +381,7 @@ export class Logger {
345
381
  const levelValue = LOG_LEVELS[levelName];
346
382
  if (levelValue < this.getLevel())
347
383
  return;
348
- if (!matchesNamespace(this.scopeName, this.namespaceFilter))
384
+ if (!matchesNamespace(this.scopeName, this.scopeFilter))
349
385
  return;
350
386
  const entry = this.buildEntry(levelName, levelValue, message, args);
351
387
  const processed = this.pipeline.process(entry);
@@ -361,13 +397,29 @@ export class Logger {
361
397
  */
362
398
  dispatch(entry) {
363
399
  if (this.plugins.hasEntryInterceptors()) {
364
- const p = this.plugins.intercept(entry).then((intercepted) => {
400
+ // Create or reset the drain promise eagerly so that `flush()` callers
401
+ // always have a non-null promise to await, even if they arrive before
402
+ // the current batch of in-flight interceptions completes.
403
+ this.dispatchDrain = new Promise((resolve) => {
404
+ this.dispatchDrainResolve = resolve;
405
+ });
406
+ this.dispatchInflight++;
407
+ this.plugins
408
+ .intercept(entry)
409
+ .then((intercepted) => {
365
410
  if (intercepted)
366
411
  this.writeToTransports(intercepted);
412
+ })
413
+ .catch((err) => this.reportError('plugin', err))
414
+ .finally(() => {
415
+ this.dispatchInflight--;
416
+ if (this.dispatchInflight === 0) {
417
+ const resolve = this.dispatchDrainResolve;
418
+ this.dispatchDrain = null;
419
+ this.dispatchDrainResolve = undefined;
420
+ resolve?.();
421
+ }
367
422
  });
368
- this.dispatchQueue = this.dispatchQueue
369
- .then(() => p)
370
- .catch((err) => this.reportError('plugin', err));
371
423
  return;
372
424
  }
373
425
  this.writeToTransports(entry);
@@ -413,7 +465,9 @@ export class Logger {
413
465
  rest = [message, ...args];
414
466
  }
415
467
  if (!error) {
416
- error = rest.find((a) => a instanceof Error);
468
+ error =
469
+ rest.find((a) => a instanceof Error) ??
470
+ rest.find((a) => typeof a === 'string' && a.length > 0);
417
471
  }
418
472
  const now = this.runtime.now();
419
473
  const ts = typeof now === 'number' ? now : new Date(now).getTime();
@@ -518,7 +572,8 @@ export class Logger {
518
572
  async flush() {
519
573
  // Let in-flight interception finish so every scheduled write has been
520
574
  // enqueued onto its transport's own queue.
521
- await this.dispatchQueue;
575
+ if (this.dispatchInflight > 0)
576
+ await this.dispatchDrain;
522
577
  // Aggregate all per-transport async-write queues. `allSettled` means a
523
578
  // rejected/errored transport queue never rejects flush; a stalled one is
524
579
  // bounded by `writeTimeoutMs` via `guardWrite`.
@@ -549,15 +604,15 @@ export class Logger {
549
604
  this.flush().then(done, done);
550
605
  });
551
606
  }
552
- /** Set the max time (ms) to flush on process exit before giving up. */
607
+ /** Set the max time (ms) to flush before process exit before giving up. */
553
608
  setExitFlushTimeout(ms) {
554
609
  if (Number.isFinite(ms) && ms >= 0)
555
- this.exitFlushTimeoutMs = ms;
610
+ this.flushTimeoutMs = ms;
556
611
  return this;
557
612
  }
558
613
  /** Get the current exit-flush timeout (ms). */
559
614
  getExitFlushTimeout() {
560
- return this.exitFlushTimeoutMs;
615
+ return this.flushTimeoutMs;
561
616
  }
562
617
  // ---- Process integration ----
563
618
  /**
@@ -574,7 +629,7 @@ export class Logger {
574
629
  // adapters that don't supply lifecycle hooks (e.g. custom test runtimes).
575
630
  const lc = this.runtime.lifecycle;
576
631
  if (lc) {
577
- const ms = this.exitFlushTimeoutMs;
632
+ const ms = this.flushTimeoutMs;
578
633
  const detach = lc.onFlushBeforeExit(() => {
579
634
  void this.flushWithTimeout(ms);
580
635
  });
@@ -589,7 +644,7 @@ export class Logger {
589
644
  const proc = getNodeProcess();
590
645
  if (!proc)
591
646
  return;
592
- const ms = this.exitFlushTimeoutMs;
647
+ const ms = this.flushTimeoutMs;
593
648
  // On normal exit the event loop is about to empty: flush pending writes.
594
649
  // `beforeExit` re-fires as long as async writes keep the loop alive, so the
595
650
  // queue keeps draining until empty (bounded by `ms` if a sink stalls).
@@ -640,7 +695,7 @@ export class Logger {
640
695
  // fall back to the direct `process` binding below, which is a no-op there.
641
696
  const lc = this.runtime.lifecycle;
642
697
  if (lc?.onUncaughtError) {
643
- const ms = this.exitFlushTimeoutMs;
698
+ const ms = this.flushTimeoutMs;
644
699
  const detach = lc.onUncaughtError((err) => {
645
700
  this.fatal(err);
646
701
  return this.flushWithTimeout(ms);
@@ -658,11 +713,11 @@ export class Logger {
658
713
  return;
659
714
  const onUncaught = (err) => {
660
715
  this.fatal(err);
661
- void this.flushWithTimeout(this.exitFlushTimeoutMs).finally(() => proc.exit(1));
716
+ void this.flushWithTimeout(this.flushTimeoutMs).finally(() => proc.exit(1));
662
717
  };
663
718
  const onRejection = (reason) => {
664
719
  this.fatal(reason);
665
- void this.flushWithTimeout(this.exitFlushTimeoutMs).finally(() => proc.exit(1));
720
+ void this.flushWithTimeout(this.flushTimeoutMs).finally(() => proc.exit(1));
666
721
  };
667
722
  proc.on('uncaughtException', onUncaught);
668
723
  proc.on('unhandledRejection', onRejection);
@@ -727,7 +782,7 @@ export class Logger {
727
782
  // Flush pending writes before tearing down transports, so buffered logs
728
783
  // are not lost. Bounded by the exit-flush timeout so a stalled sink can
729
784
  // never hang teardown.
730
- await this.flushWithTimeout(this.exitFlushTimeoutMs).catch(() => { });
785
+ await this.flushWithTimeout(this.flushTimeoutMs).catch(() => { });
731
786
  await this.plugins.destroy().catch(() => { });
732
787
  this.detachReceiver?.();
733
788
  this.peerLevel = undefined;
@@ -741,7 +796,9 @@ export class Logger {
741
796
  }
742
797
  }
743
798
  this.transportQueues.clear();
744
- this.dispatchQueue = Promise.resolve();
799
+ this.dispatchInflight = 0;
800
+ this.dispatchDrain = null;
801
+ this.dispatchDrainResolve = undefined;
745
802
  }
746
803
  }
747
804
  //# sourceMappingURL=logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/core/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/core/logger.ts"],"names":[],"mappings":"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"}