logs-gateway 2.2.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/types.d.ts CHANGED
@@ -50,6 +50,12 @@ export interface LoggingConfig {
50
50
  logLevel?: LogLevel;
51
51
  /** Output format: 'text' or 'json' (default: 'text') */
52
52
  logFormat?: LogFormat;
53
+ /** Show full ISO timestamp in console logs (default: false) */
54
+ showFullTimestamp?: boolean;
55
+ /** Console package filtering: only show logs from these packages (comma-separated, console only) */
56
+ consolePackagesShow?: string[];
57
+ /** Console package filtering: hide logs from these packages (comma-separated, console only) */
58
+ consolePackagesHide?: string[];
53
59
  /** Custom logger implementation (advanced use) */
54
60
  customLogger?: CustomLogger;
55
61
  /** Enable unified-logger output (default: false) */
@@ -72,6 +78,42 @@ export interface LoggingConfig {
72
78
  };
73
79
  /** Shadow logging configuration */
74
80
  shadow?: ShadowConfig;
81
+ /** Debug scoping configuration (from logger-debug.json) */
82
+ debugScoping?: DebugScopingConfig;
83
+ }
84
+ /**
85
+ * Log frame rule for stateful range-based filtering and log level control
86
+ */
87
+ export interface LogFrameRule {
88
+ /** Action to take when frame is active */
89
+ action: 'include' | 'exclude' | 'setLevel';
90
+ /** Log level to use when action is 'setLevel'. Required when action is 'setLevel'. */
91
+ level?: LogLevel;
92
+ /** If true: exact match (case sensitive), if false: partial match (case insensitive). Default: false */
93
+ exactMatch?: boolean;
94
+ /** If true: search entire log (message, identity, all meta fields), if false: only identity. Default: false */
95
+ searchLog?: boolean;
96
+ /** Identity patterns that start the frame. Empty array means frame starts from beginning. */
97
+ startIdentities: string[];
98
+ /** Identity patterns that end the frame. Empty array means frame never ends. */
99
+ endIdentities: string[];
100
+ }
101
+ /**
102
+ * Debug scoping configuration loaded from logger-debug.json
103
+ */
104
+ export interface DebugScopingConfig {
105
+ scoping: {
106
+ /** Enable or disable runtime filtering */
107
+ status: 'enabled' | 'disabled';
108
+ /** Filter logs by identity (file:function format) */
109
+ filterIdentities?: string[];
110
+ /** Filter logs by application name */
111
+ filteredApplications?: string[];
112
+ /** Stateful range-based filtering and log level control rules (Logs Frames) */
113
+ logFrames?: LogFrameRule[];
114
+ /** Alias for logFrames - stateful range-based filtering rules */
115
+ between?: LogFrameRule[];
116
+ };
75
117
  }
76
118
  /**
77
119
  * Custom logger interface for injecting external loggers (Winston, Pino, etc.)
@@ -130,6 +172,8 @@ export interface LogMeta {
130
172
  [key: string]: any;
131
173
  /** Source identifier for the log entry */
132
174
  source?: string;
175
+ /** Identity identifier for the log entry (unique based on code location, auto-generated if not provided) */
176
+ identity?: string;
133
177
  /** Correlation ID for tracing related log entries */
134
178
  correlationId?: string;
135
179
  /** Routing metadata for controlling output destinations */
@@ -170,7 +214,7 @@ export interface UnifiedLoggerConfig {
170
214
  /**
171
215
  * Internal configuration type with all required fields
172
216
  */
173
- export type InternalLoggingConfig = Required<Omit<LoggingConfig, 'customLogger' | 'unifiedLogger' | 'transports' | 'tracing' | 'trails' | 'schemaCheck' | 'shadow'>> & {
217
+ export type InternalLoggingConfig = Required<Omit<LoggingConfig, 'customLogger' | 'unifiedLogger' | 'transports' | 'tracing' | 'trails' | 'schemaCheck' | 'shadow' | 'consolePackagesShow' | 'consolePackagesHide' | 'debugScoping'>> & {
174
218
  customLogger?: CustomLogger;
175
219
  unifiedLogger?: UnifiedLoggerConfig;
176
220
  packageName: string;
@@ -181,6 +225,9 @@ export type InternalLoggingConfig = Required<Omit<LoggingConfig, 'customLogger'
181
225
  enabled?: boolean;
182
226
  };
183
227
  shadow?: ShadowConfig;
228
+ consolePackagesShow?: string[] | undefined;
229
+ consolePackagesHide?: string[] | undefined;
230
+ debugScoping?: DebugScopingConfig;
184
231
  };
185
232
  /**
186
233
  * Trails configuration for operation and thread tracking
@@ -356,6 +403,8 @@ export interface LogEnvelope {
356
403
  traceId?: string;
357
404
  /** Span identifier */
358
405
  spanId?: string;
406
+ /** Identity identifier for the log entry (unique based on code location) */
407
+ identity?: string;
359
408
  /** Routing metadata */
360
409
  _routing?: RoutingMeta;
361
410
  /** Free-form tags */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,uDAAuD;IACvD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB,wDAAwD;IACxD,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,kDAAkD;IAClD,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,oDAAoD;IACpD,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B,mCAAmC;IACnC,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAEpC,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,iDAAiD;IACjD,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC,8BAA8B;IAC9B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B,4BAA4B;IAC5B,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,sCAAsC;IACtC,WAAW,CAAC,EAAE;QACZ,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;IAEF,mCAAmC;IACnC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/C,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7C,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAC;IAEpB,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAElB,uEAAuE;IACvE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,wDAAwD;IACxD,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,uCAAuC;IACvC,OAAO,CAAC,EAAE;QACR,wCAAwC;QACxC,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kDAAkD;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,YAAY,CAAC,EAAE,GAAG,CAAC;IAEnB,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACxD,UAAU,CAAC,EAAE,uBAAuB,CAAC;IAErC,4CAA4C;IAC5C,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,GAAG,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC,CAAC,GAAG;IACrK,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,WAAW,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACpC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gDAAgD;IAChD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kDAAkD;IAClD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gDAAgD;IAChD,aAAa,CAAC,EAAE;QACd,kEAAkE;QAClE,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oEAAoE;QACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;IAC1D,kDAAkD;IAClD,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,qDAAqD;IACrD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,sCAAsC;IACtC,UAAU,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1E,+CAA+C;IAC/C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,iDAAiD;IACjD,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,4EAA4E;IAC5E,YAAY,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;IAC1C,0CAA0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,2FAA2F;IAC3F,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IAC5C,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,oBAAoB;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,6BAA6B;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAChC,sBAAsB;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Debug Configuration Loader
3
+ *
4
+ * Loads logger-debug.json configuration file from project root
5
+ * for runtime log filtering based on identity and application name.
6
+ */
7
+ import type { DebugScopingConfig } from '../types';
8
+ /**
9
+ * Load logger-debug.json configuration from project root
10
+ * Searches up the directory tree from process.cwd() to find the file
11
+ *
12
+ * @returns DebugScopingConfig if found and valid, null otherwise
13
+ */
14
+ export declare function loadDebugConfig(): DebugScopingConfig | null;
15
+ /**
16
+ * Reset the cached debug config (useful for testing)
17
+ */
18
+ export declare function resetDebugConfigCache(): void;
19
+ //# sourceMappingURL=debug-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug-config.d.ts","sourceRoot":"","sources":["../../src/utils/debug-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,kBAAkB,GAAG,IAAI,CA+L3D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+ /**
3
+ * Debug Configuration Loader
4
+ *
5
+ * Loads logger-debug.json configuration file from project root
6
+ * for runtime log filtering based on identity and application name.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.loadDebugConfig = loadDebugConfig;
43
+ exports.resetDebugConfigCache = resetDebugConfigCache;
44
+ const fs = __importStar(require("fs"));
45
+ const path = __importStar(require("path"));
46
+ let cachedConfig = undefined;
47
+ /**
48
+ * Load logger-debug.json configuration from project root
49
+ * Searches up the directory tree from process.cwd() to find the file
50
+ *
51
+ * @returns DebugScopingConfig if found and valid, null otherwise
52
+ */
53
+ function loadDebugConfig() {
54
+ // Return cached result if available
55
+ if (cachedConfig !== undefined) {
56
+ return cachedConfig;
57
+ }
58
+ try {
59
+ // Start from process.cwd() and search up for logger-debug.json
60
+ let currentDir = process.cwd();
61
+ const rootPath = path.parse(currentDir).root;
62
+ while (currentDir !== rootPath) {
63
+ const configPath = path.join(currentDir, 'logger-debug.json');
64
+ if (fs.existsSync(configPath)) {
65
+ try {
66
+ const content = fs.readFileSync(configPath, 'utf8');
67
+ const config = JSON.parse(content);
68
+ // Validate structure
69
+ if (config && config.scoping) {
70
+ // Validate status
71
+ if (config.scoping.status !== 'enabled' && config.scoping.status !== 'disabled') {
72
+ console.warn('[logs-gateway] Invalid logger-debug.json: scoping.status must be "enabled" or "disabled"');
73
+ cachedConfig = null;
74
+ return null;
75
+ }
76
+ // Ensure arrays are arrays
77
+ if (config.scoping.filterIdentities && !Array.isArray(config.scoping.filterIdentities)) {
78
+ console.warn('[logs-gateway] Invalid logger-debug.json: filterIdentities must be an array');
79
+ cachedConfig = null;
80
+ return null;
81
+ }
82
+ if (config.scoping.filteredApplications && !Array.isArray(config.scoping.filteredApplications)) {
83
+ console.warn('[logs-gateway] Invalid logger-debug.json: filteredApplications must be an array');
84
+ cachedConfig = null;
85
+ return null;
86
+ }
87
+ // Validate between array if present (alias for logFrames)
88
+ if (config.scoping.between !== undefined) {
89
+ if (!Array.isArray(config.scoping.between)) {
90
+ console.warn('[logs-gateway] Invalid logger-debug.json: between must be an array');
91
+ cachedConfig = null;
92
+ return null;
93
+ }
94
+ // Validate each between rule
95
+ for (let i = 0; i < config.scoping.between.length; i++) {
96
+ const rule = config.scoping.between[i];
97
+ if (!rule || typeof rule !== 'object') {
98
+ console.warn(`[logs-gateway] Invalid logger-debug.json: between[${i}] must be an object`);
99
+ cachedConfig = null;
100
+ return null;
101
+ }
102
+ // Validate action
103
+ if (rule.action !== 'include' && rule.action !== 'exclude') {
104
+ console.warn(`[logs-gateway] Invalid logger-debug.json: between[${i}].action must be "include" or "exclude"`);
105
+ cachedConfig = null;
106
+ return null;
107
+ }
108
+ // Validate optional boolean fields
109
+ if (rule.exactMatch !== undefined && typeof rule.exactMatch !== 'boolean') {
110
+ console.warn(`[logs-gateway] Invalid logger-debug.json: between[${i}].exactMatch must be a boolean`);
111
+ cachedConfig = null;
112
+ return null;
113
+ }
114
+ if (rule.searchLog !== undefined && typeof rule.searchLog !== 'boolean') {
115
+ console.warn(`[logs-gateway] Invalid logger-debug.json: between[${i}].searchLog must be a boolean`);
116
+ cachedConfig = null;
117
+ return null;
118
+ }
119
+ // Validate startIdentities and endIdentities are arrays (required)
120
+ if (!rule.startIdentities || !Array.isArray(rule.startIdentities)) {
121
+ console.warn(`[logs-gateway] Invalid logger-debug.json: between[${i}].startIdentities must be an array`);
122
+ cachedConfig = null;
123
+ return null;
124
+ }
125
+ if (!rule.endIdentities || !Array.isArray(rule.endIdentities)) {
126
+ console.warn(`[logs-gateway] Invalid logger-debug.json: between[${i}].endIdentities must be an array`);
127
+ cachedConfig = null;
128
+ return null;
129
+ }
130
+ }
131
+ // Normalize between to logFrames if logFrames is not already set
132
+ if (!config.scoping.logFrames) {
133
+ config.scoping.logFrames = config.scoping.between;
134
+ }
135
+ }
136
+ // Validate logFrames array if present
137
+ if (config.scoping.logFrames !== undefined) {
138
+ if (!Array.isArray(config.scoping.logFrames)) {
139
+ console.warn('[logs-gateway] Invalid logger-debug.json: logFrames must be an array');
140
+ cachedConfig = null;
141
+ return null;
142
+ }
143
+ // Validate each log frame rule
144
+ for (let i = 0; i < config.scoping.logFrames.length; i++) {
145
+ const rule = config.scoping.logFrames[i];
146
+ if (!rule || typeof rule !== 'object') {
147
+ console.warn(`[logs-gateway] Invalid logger-debug.json: logFrames[${i}] must be an object`);
148
+ cachedConfig = null;
149
+ return null;
150
+ }
151
+ // Validate action
152
+ if (rule.action !== 'include' && rule.action !== 'exclude' && rule.action !== 'setLevel') {
153
+ console.warn(`[logs-gateway] Invalid logger-debug.json: logFrames[${i}].action must be "include", "exclude", or "setLevel"`);
154
+ cachedConfig = null;
155
+ return null;
156
+ }
157
+ // Validate level is required when action is setLevel
158
+ if (rule.action === 'setLevel') {
159
+ if (!rule.level || !['verbose', 'debug', 'info', 'warn', 'error'].includes(rule.level)) {
160
+ console.warn(`[logs-gateway] Invalid logger-debug.json: logFrames[${i}].level must be a valid LogLevel when action is "setLevel"`);
161
+ cachedConfig = null;
162
+ return null;
163
+ }
164
+ }
165
+ // Validate optional boolean fields
166
+ if (rule.exactMatch !== undefined && typeof rule.exactMatch !== 'boolean') {
167
+ console.warn(`[logs-gateway] Invalid logger-debug.json: logFrames[${i}].exactMatch must be a boolean`);
168
+ cachedConfig = null;
169
+ return null;
170
+ }
171
+ if (rule.searchLog !== undefined && typeof rule.searchLog !== 'boolean') {
172
+ console.warn(`[logs-gateway] Invalid logger-debug.json: logFrames[${i}].searchLog must be a boolean`);
173
+ cachedConfig = null;
174
+ return null;
175
+ }
176
+ // Validate startIdentities and endIdentities are arrays
177
+ if (!Array.isArray(rule.startIdentities)) {
178
+ console.warn(`[logs-gateway] Invalid logger-debug.json: logFrames[${i}].startIdentities must be an array`);
179
+ cachedConfig = null;
180
+ return null;
181
+ }
182
+ if (!Array.isArray(rule.endIdentities)) {
183
+ console.warn(`[logs-gateway] Invalid logger-debug.json: logFrames[${i}].endIdentities must be an array`);
184
+ cachedConfig = null;
185
+ return null;
186
+ }
187
+ }
188
+ }
189
+ // Cache and return valid config
190
+ cachedConfig = config;
191
+ return config;
192
+ }
193
+ else {
194
+ console.warn('[logs-gateway] Invalid logger-debug.json: missing "scoping" field');
195
+ cachedConfig = null;
196
+ return null;
197
+ }
198
+ }
199
+ catch (parseError) {
200
+ console.warn('[logs-gateway] Failed to parse logger-debug.json:', parseError);
201
+ cachedConfig = null;
202
+ return null;
203
+ }
204
+ }
205
+ // Move up one directory
206
+ const parentDir = path.dirname(currentDir);
207
+ if (parentDir === currentDir) {
208
+ // Reached root, stop searching
209
+ break;
210
+ }
211
+ currentDir = parentDir;
212
+ }
213
+ // File not found - cache null result
214
+ cachedConfig = null;
215
+ return null;
216
+ }
217
+ catch (error) {
218
+ // If any error occurs, return null and cache it
219
+ cachedConfig = null;
220
+ return null;
221
+ }
222
+ }
223
+ /**
224
+ * Reset the cached debug config (useful for testing)
225
+ */
226
+ function resetDebugConfigCache() {
227
+ cachedConfig = undefined;
228
+ }
229
+ //# sourceMappingURL=debug-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug-config.js","sourceRoot":"","sources":["../../src/utils/debug-config.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcH,0CA+LC;AAKD,sDAEC;AAlND,uCAAyB;AACzB,2CAA6B;AAG7B,IAAI,YAAY,GAA0C,SAAS,CAAC;AAEpE;;;;;GAKG;AACH,SAAgB,eAAe;IAC7B,oCAAoC;IACpC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,IAAI,CAAC;QACH,+DAA+D;QAC/D,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;QAE7C,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;YAE9D,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;oBACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAuB,CAAC;oBAEzD,qBAAqB;oBACrB,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC7B,kBAAkB;wBAClB,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;4BAChF,OAAO,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;4BACzG,YAAY,GAAG,IAAI,CAAC;4BACpB,OAAO,IAAI,CAAC;wBACd,CAAC;wBAED,2BAA2B;wBAC3B,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;4BACvF,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;4BAC5F,YAAY,GAAG,IAAI,CAAC;4BACpB,OAAO,IAAI,CAAC;wBACd,CAAC;wBAED,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;4BAC/F,OAAO,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC;4BAChG,YAAY,GAAG,IAAI,CAAC;4BACpB,OAAO,IAAI,CAAC;wBACd,CAAC;wBAED,0DAA0D;wBAC1D,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;4BACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gCAC3C,OAAO,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;gCACnF,YAAY,GAAG,IAAI,CAAC;gCACpB,OAAO,IAAI,CAAC;4BACd,CAAC;4BAED,6BAA6B;4BAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gCACvD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gCACvC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oCACtC,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,qBAAqB,CAAC,CAAC;oCAC1F,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,kBAAkB;gCAClB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oCAC3D,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,yCAAyC,CAAC,CAAC;oCAC9G,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,mCAAmC;gCACnC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oCAC1E,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,gCAAgC,CAAC,CAAC;oCACrG,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oCACxE,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,+BAA+B,CAAC,CAAC;oCACpG,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,mEAAmE;gCACnE,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;oCAClE,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,oCAAoC,CAAC,CAAC;oCACzG,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;oCAC9D,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,kCAAkC,CAAC,CAAC;oCACvG,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;4BACH,CAAC;4BAED,iEAAiE;4BACjE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gCAC9B,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;4BACpD,CAAC;wBACH,CAAC;wBAED,sCAAsC;wBACtC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;4BAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gCAC7C,OAAO,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;gCACrF,YAAY,GAAG,IAAI,CAAC;gCACpB,OAAO,IAAI,CAAC;4BACd,CAAC;4BAED,+BAA+B;4BAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gCACzD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCACzC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oCACtC,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,qBAAqB,CAAC,CAAC;oCAC5F,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,kBAAkB;gCAClB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oCACzF,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,sDAAsD,CAAC,CAAC;oCAC7H,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,qDAAqD;gCACrD,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oCAC/B,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;wCACvF,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,4DAA4D,CAAC,CAAC;wCACnI,YAAY,GAAG,IAAI,CAAC;wCACpB,OAAO,IAAI,CAAC;oCACd,CAAC;gCACH,CAAC;gCAED,mCAAmC;gCACnC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oCAC1E,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,gCAAgC,CAAC,CAAC;oCACvG,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oCACxE,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,+BAA+B,CAAC,CAAC;oCACtG,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,wDAAwD;gCACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;oCACzC,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,oCAAoC,CAAC,CAAC;oCAC3G,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;oCACvC,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,kCAAkC,CAAC,CAAC;oCACzG,YAAY,GAAG,IAAI,CAAC;oCACpB,OAAO,IAAI,CAAC;gCACd,CAAC;4BACH,CAAC;wBACH,CAAC;wBAED,gCAAgC;wBAChC,YAAY,GAAG,MAAM,CAAC;wBACtB,OAAO,MAAM,CAAC;oBAChB,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;wBAClF,YAAY,GAAG,IAAI,CAAC;wBACpB,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,OAAO,CAAC,IAAI,CAAC,mDAAmD,EAAE,UAAU,CAAC,CAAC;oBAC9E,YAAY,GAAG,IAAI,CAAC;oBACpB,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YAED,wBAAwB;YACxB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,+BAA+B;gBAC/B,MAAM;YACR,CAAC;YACD,UAAU,GAAG,SAAS,CAAC;QACzB,CAAC;QAED,qCAAqC;QACrC,YAAY,GAAG,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gDAAgD;QAChD,YAAY,GAAG,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB;IACnC,YAAY,GAAG,SAAS,CAAC;AAC3B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "logs-gateway",
3
- "version": "2.2.1",
3
+ "version": "3.0.0",
4
4
  "description": "Standardized logging gateway for Node.js with PII sanitization, correlation trails, Shadow Logging for test/debug capture, scoping with text filters, story output, troubleshooting integration, and multi-format output (JSON/YAML/text)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",