logs-gateway 1.5.0 → 2.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/README.md CHANGED
@@ -2,6 +2,70 @@
2
2
 
3
3
  A standardized logging gateway for Node.js applications. Flexible multi-transport logging with **console**, **file**, and **unified-logger** outputs; **ENV-first** configuration; **PII/credentials sanitization**; **dual correlation trails** (operation & thread); **OpenTelemetry** context; **YAML/JSON/text** formats; **per-run "Shadow Logging"** for test/debug capture; **scoping** with text filters; **story output** powered by `scopeRecord`; and **troubleshooting integration** with `nx-troubleshooting`.
4
4
 
5
+ ## 🚀 Env-Ready Component (ERC 2.0)
6
+
7
+ This component supports **zero-config initialization** via environment variables and is compliant with the [Env-Ready Component Standard (ERC 2.0)](https://github.com/xeonox/erc-standard).
8
+
9
+ ### ERC 2.0 Compliance
10
+
11
+ - ✅ **Auto-Discovery**: Zero-config initialization from environment variables
12
+ - ✅ **Complete Documentation**: All environment variables documented (including dependencies)
13
+ - ✅ **Type Safety**: Automatic type coercion and validation
14
+ - ✅ **Manifest**: Auto-generated `erc-manifest.json` with all requirements
15
+ - ✅ **Example File**: Auto-generated `.env.example` with all transitive requirements
16
+ - ✅ **Dependency Tracking**: Documents both ERC and non-ERC dependencies
17
+
18
+ ### Quick Start (Zero-Config Mode)
19
+
20
+ ```bash
21
+ # 1. Install the package
22
+ npm install logs-gateway
23
+
24
+ # 2. Set environment variables (replace MY_APP with your prefix)
25
+ export MY_APP_LOG_TO_CONSOLE=true
26
+ export MY_APP_LOG_LEVEL=info
27
+ export MY_APP_LOG_FORMAT=json
28
+
29
+ # 3. Use with zero config!
30
+ import { createLogger } from 'logs-gateway';
31
+ const logger = createLogger(
32
+ { packageName: 'MY_APP', envPrefix: 'MY_APP' }
33
+ ); // Auto-discovers from process.env
34
+ ```
35
+
36
+ ### Advanced Mode (Programmatic Configuration)
37
+
38
+ ```typescript
39
+ import { createLogger } from 'logs-gateway';
40
+
41
+ const logger = createLogger(
42
+ { packageName: 'MY_APP', envPrefix: 'MY_APP' },
43
+ {
44
+ logToFile: true,
45
+ logFilePath: '/var/log/myapp.log',
46
+ logLevel: 'info'
47
+ }
48
+ );
49
+ ```
50
+
51
+ ### Environment Variables
52
+
53
+ **Note**: This component uses **dynamic environment variable prefixes** based on `packageConfig.envPrefix`. Replace `{PREFIX}` with your actual prefix (e.g., `MY_APP`, `API_SERVICE`).
54
+
55
+ See `.env.example` for the complete list of required and optional variables with descriptions. Generate it by running:
56
+
57
+ ```bash
58
+ npm run generate-erc
59
+ ```
60
+
61
+ ### Dependencies
62
+
63
+ - ✅ **nx-config2** (ERC 2.0) - Configuration engine
64
+ - â„šī¸ **@x-developer/unified-logger** (non-ERC) - Requirements manually documented
65
+ - â„šī¸ **nx-troubleshooting** (non-ERC, optional) - Requirements manually documented
66
+
67
+ ---
68
+
5
69
  ## Features
6
70
 
7
71
  * ✅ Console output (default)
@@ -260,62 +324,75 @@ const logger = createLogger(
260
324
 
261
325
  ### Via Environment Variables
262
326
 
327
+ **Note**: Environment variable names use a **dynamic prefix** based on `packageConfig.envPrefix`. Replace `{PREFIX}` in the examples below with your actual prefix (e.g., `MY_APP`, `API_SERVICE`).
328
+
263
329
  ```bash
264
330
  # Console & file
265
- MY_APP_LOG_TO_CONSOLE=true|false
266
- MY_APP_LOG_TO_FILE=true|false
267
- MY_APP_LOG_FILE=/path/to/log
331
+ {PREFIX}_LOG_TO_CONSOLE=true|false
332
+ {PREFIX}_LOG_TO_FILE=true|false
333
+ {PREFIX}_LOG_FILE=/path/to/log
268
334
 
269
335
  # Unified-logger
270
- MY_APP_LOG_TO_UNIFIED=true|false
336
+ {PREFIX}_LOG_TO_UNIFIED=true|false
271
337
 
272
338
  # Level & format
273
- MY_APP_LOG_LEVEL=verbose|debug|info|warn|error
274
- MY_APP_LOG_FORMAT=text|json|yaml
339
+ {PREFIX}_LOG_LEVEL=verbose|debug|info|warn|error
340
+ {PREFIX}_LOG_FORMAT=text|json|yaml
275
341
 
276
342
  # Debug namespace → enables verbose+debug for that namespace
277
343
  DEBUG=my-pkg,other-*
278
344
 
279
345
  # Sanitization (subset shown)
280
- MY_APP_SANITIZE_ENABLED=true|false
281
- MY_APP_SANITIZE_KEYS_DENYLIST=authorization,token,secret,api_key,password
346
+ {PREFIX}_SANITIZE_ENABLED=true|false
347
+ {PREFIX}_SANITIZE_KEYS_DENYLIST=authorization,token,secret,api_key,password
282
348
 
283
349
  # Trails/tracing
284
- MY_APP_TRACE_OTEL=true|false
285
- MY_APP_TRAILS_DEPTH=true|false
286
- MY_APP_TRAILS_THREAD=true|false
287
- MY_APP_TRAILS_INJECT=true|false
288
- MY_APP_TRAILS_EXTRACT=true|false
350
+ {PREFIX}_TRACE_OTEL=true|false
351
+ {PREFIX}_TRAILS_DEPTH=true|false
352
+ {PREFIX}_TRAILS_THREAD=true|false
353
+ {PREFIX}_TRAILS_INJECT=true|false
354
+ {PREFIX}_TRAILS_EXTRACT=true|false
289
355
 
290
356
  # Shadow Logging
291
- MY_APP_SHADOW_ENABLED=true|false
292
- MY_APP_SHADOW_FORMAT=json|yaml
293
- MY_APP_SHADOW_DIR=/var/log/myapp/shadow
294
- MY_APP_SHADOW_TTL_MS=86400000
295
- MY_APP_SHADOW_FORCE_VERBOSE=true|false
296
- MY_APP_SHADOW_RESPECT_ROUTING=true|false
297
- MY_APP_SHADOW_INCLUDE_RAW=false
298
- MY_APP_SHADOW_BUFFER_ENTRIES=0
299
- MY_APP_SHADOW_BUFFER_AGE_MS=0
357
+ {PREFIX}_SHADOW_ENABLED=true|false
358
+ {PREFIX}_SHADOW_FORMAT=json|yaml
359
+ {PREFIX}_SHADOW_DIR=/var/log/myapp/shadow
360
+ {PREFIX}_SHADOW_TTL_MS=86400000
361
+ {PREFIX}_SHADOW_FORCE_VERBOSE=true|false
362
+ {PREFIX}_SHADOW_RESPECT_ROUTING=true|false
363
+ {PREFIX}_SHADOW_INCLUDE_RAW=false
364
+ {PREFIX}_SHADOW_BUFFER_ENTRIES=0
365
+ {PREFIX}_SHADOW_BUFFER_AGE_MS=0
300
366
 
301
367
  # Scoping
302
- MY_APP_SCOPING_ENABLED=true|false
303
- MY_APP_SCOPING_ERROR_ENABLED=true|false
304
- MY_APP_SCOPING_ERROR_WINDOW_MS_BEFORE=30000
305
- MY_APP_SCOPING_ERROR_WINDOW_MS_AFTER=30000
306
- MY_APP_SCOPING_BUFFER_ENTRIES=5000
307
- MY_APP_SCOPING_BUFFER_AGE_MS=300000
308
- MY_APP_SCOPING_BUFFER_PREFER_SHADOW=true|false
368
+ {PREFIX}_SCOPING_ENABLED=true|false
369
+ {PREFIX}_SCOPING_ERROR_ENABLED=true|false
370
+ {PREFIX}_SCOPING_ERROR_WINDOW_MS_BEFORE=30000
371
+ {PREFIX}_SCOPING_ERROR_WINDOW_MS_AFTER=30000
372
+ {PREFIX}_SCOPING_BUFFER_ENTRIES=5000
373
+ {PREFIX}_SCOPING_BUFFER_AGE_MS=300000
374
+ {PREFIX}_SCOPING_BUFFER_PREFER_SHADOW=true|false
309
375
 
310
376
  # Troubleshooting
311
- MY_APP_TROUBLESHOOTING_ENABLED=true|false
312
- MY_APP_TROUBLESHOOTING_NARRATIVES_PATH=./metadata/troubleshooting.json
313
- MY_APP_TROUBLESHOOTING_OUTPUT_FORMATS=markdown,json
314
- MY_APP_TROUBLESHOOTING_OUTPUT_EMIT_AS_LOG_ENTRY=true|false
377
+ {PREFIX}_TROUBLESHOOTING_ENABLED=true|false
378
+ {PREFIX}_TROUBLESHOOTING_NARRATIVES_PATH=./metadata/troubleshooting.json
379
+ {PREFIX}_TROUBLESHOOTING_OUTPUT_FORMATS=markdown,json
380
+ {PREFIX}_TROUBLESHOOTING_OUTPUT_EMIT_AS_LOG_ENTRY=true|false
381
+
382
+ # Unified-logger dependencies (non-ERC, manually documented)
383
+ # Required when unified-logger papertrail transport is enabled:
384
+ PAPERTRAIL_HOST=logs.papertrailapp.com
385
+ PAPERTRAIL_PORT=12345
386
+
387
+ # Required when unified-logger udpRelay transport is enabled:
388
+ UDP_RELAY_HOST=127.0.0.1
389
+ UDP_RELAY_PORT=514
315
390
  ```
316
391
 
317
392
  > **Default min level:** `info`.
318
393
  > **`DEBUG=`**: enables **both** `verbose` and `debug` for matching namespaces.
394
+ >
395
+ > **ERC 2.0 Note**: Generate a complete `.env.example` file with all variables by running `npm run generate-erc`.
319
396
 
320
397
  ---
321
398
 
package/dist/index.d.ts CHANGED
@@ -18,6 +18,12 @@ import type { LoggerPackageConfig, LoggingConfig } from './types';
18
18
  * ```typescript
19
19
  * import { createLogger } from 'logs-gateway';
20
20
  *
21
+ * // Zero-config mode (ERC 2.0): Auto-discovers from environment variables
22
+ * const logger = createLogger(
23
+ * { packageName: 'MY_APP', envPrefix: 'MY_APP', debugNamespace: 'my-app' }
24
+ * );
25
+ *
26
+ * // Advanced mode: Explicit configuration
21
27
  * const logger = createLogger(
22
28
  * { packageName: 'MY_APP', envPrefix: 'MY_APP', debugNamespace: 'my-app' },
23
29
  * { logToFile: true, logFilePath: '/var/log/myapp.log' }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,QAAQ,EACR,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,mBAAmB,EACnB,QAAQ,EACR,qBAAqB,EACrB,OAAO,EACP,WAAW,EACX,mBAAmB,EACnB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAIvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAoE,MAAM,SAAS,CAAC;AAEpI;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAC1B,aAAa,EAAE,mBAAmB,EAClC,UAAU,CAAC,EAAE,aAAa,GACzB,WAAW,CAgIb;;;;;AAGD,wBAGE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,QAAQ,EACR,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,mBAAmB,EACnB,QAAQ,EACR,qBAAqB,EACrB,OAAO,EACP,WAAW,EACX,mBAAmB,EACnB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAIvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAoE,MAAM,SAAS,CAAC;AAEpI;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,YAAY,CAC1B,aAAa,EAAE,mBAAmB,EAClC,UAAU,CAAC,EAAE,aAAa,GACzB,WAAW,CAgIb;;;;;AAGD,wBAGE"}
package/dist/index.js CHANGED
@@ -26,6 +26,12 @@ const app_info_1 = require("./app-info");
26
26
  * ```typescript
27
27
  * import { createLogger } from 'logs-gateway';
28
28
  *
29
+ * // Zero-config mode (ERC 2.0): Auto-discovers from environment variables
30
+ * const logger = createLogger(
31
+ * { packageName: 'MY_APP', envPrefix: 'MY_APP', debugNamespace: 'my-app' }
32
+ * );
33
+ *
34
+ * // Advanced mode: Explicit configuration
29
35
  * const logger = createLogger(
30
36
  * { packageName: 'MY_APP', envPrefix: 'MY_APP', debugNamespace: 'my-app' },
31
37
  * { logToFile: true, logFilePath: '/var/log/myapp.log' }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "logs-gateway",
3
- "version": "1.5.0",
3
+ "version": "2.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",
@@ -9,7 +9,8 @@
9
9
  "dev": "tsc --watch",
10
10
  "clean": "rimraf dist",
11
11
  "test": "vitest",
12
- "prepublishOnly": "npm run clean && npm run build"
12
+ "prepublishOnly": "npm run clean && npm run build",
13
+ "generate-erc": "tsx scripts/generate-erc-manifest.ts"
13
14
  },
14
15
  "keywords": [
15
16
  "logging",
@@ -57,7 +58,9 @@
57
58
  "consola": "^3.4.2",
58
59
  "fast-redact": "^3.5.0",
59
60
  "js-yaml": "^4.1.0",
61
+ "micro-logs": "^1.0.0",
60
62
  "nanoid": "^5.1.6",
63
+ "nx-config2": "^3.5.0",
61
64
  "pino": "^10.1.0",
62
65
  "pino-http": "^11.0.0",
63
66
  "pino-pretty": "^13.1.2",
@@ -74,6 +77,7 @@
74
77
  "@types/pino": "^7.0.4",
75
78
  "@types/validator": "^13.15.3",
76
79
  "rimraf": "^6.0.1",
80
+ "tsx": "^4.7.0",
77
81
  "typescript": "^5.0.0",
78
82
  "vitest": "^4.0.3"
79
83
  },