@polygonlabs/logger 1.0.1 → 1.0.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.
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +43 -13
- package/dist/logger.js.map +1 -1
- package/package.json +1 -1
package/dist/logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAMrE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,mBAAmB;IAClC,uFAAuF;IACvF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAMD,wBAAsB,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAMrE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,mBAAmB;IAClC,uFAAuF;IACvF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAMD,wBAAsB,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4IjF"}
|
package/dist/logger.js
CHANGED
|
@@ -26,20 +26,50 @@ export async function createLogger(options) {
|
|
|
26
26
|
},
|
|
27
27
|
log(object) {
|
|
28
28
|
let out = object;
|
|
29
|
-
//
|
|
30
|
-
//
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
29
|
+
// Reserved keys — values that the logger or Datadog agent writes
|
|
30
|
+
// authoritatively. If a caller includes one of these in a merge object it
|
|
31
|
+
// either silently overrides the authoritative value or is silently dropped.
|
|
32
|
+
//
|
|
33
|
+
// Strategy: collect all caller-supplied reserved values into a single
|
|
34
|
+
// nested `_logger` object. Using a namespace rather than flat renamed keys
|
|
35
|
+
// (e.g. `callerTimestamp`) avoids a second collision surface — `_logger`
|
|
36
|
+
// is far less likely to be used by application code than `callerFoo`.
|
|
37
|
+
//
|
|
38
|
+
// If `_logger` itself is in the merge object we merge into it (preserving
|
|
39
|
+
// whatever the caller put there) and emit a warn, rather than clobbering.
|
|
40
|
+
//
|
|
41
|
+
// Reserved keys and why:
|
|
42
|
+
// timestamp — written by the pino timestamp function; caller value
|
|
43
|
+
// would shadow the authoritative ISO 8601 string
|
|
44
|
+
// message — written by pino as messageKey; caller value in the merge
|
|
45
|
+
// object races with the string argument
|
|
46
|
+
// error_info — written by formatters.log from VError.info(); caller
|
|
47
|
+
// value would be overwritten without warning
|
|
48
|
+
// service — set by the Datadog agent from the container name; a
|
|
49
|
+
// caller value silently breaks log attribution
|
|
50
|
+
// host — set by the Datadog agent from the container hostname; a
|
|
51
|
+
// caller value silently overrides infrastructure routing
|
|
52
|
+
const RESERVED = ['timestamp', 'message', 'error_info', 'service', 'host'];
|
|
53
|
+
const shadowed = {};
|
|
54
|
+
for (const key of RESERVED) {
|
|
55
|
+
if (key in out) {
|
|
56
|
+
shadowed[key] = out[key];
|
|
57
|
+
const { [key]: _dropped, ...rest } = out;
|
|
58
|
+
out = rest;
|
|
59
|
+
}
|
|
35
60
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
61
|
+
if (Object.keys(shadowed).length > 0) {
|
|
62
|
+
// Merge into any existing _logger value rather than clobber it.
|
|
63
|
+
const existing = typeof out['_logger'] === 'object' && out['_logger'] !== null
|
|
64
|
+
? out['_logger']
|
|
65
|
+
: {};
|
|
66
|
+
if ('_logger' in out && (typeof out['_logger'] !== 'object' || out['_logger'] === null)) {
|
|
67
|
+
// _logger exists but is a primitive — warn separately so it isn't lost.
|
|
68
|
+
ref.self?.warn({ _logger: out['_logger'] }, 'Log call included "_logger" as a non-object — overwritten by logger internals. Fix the call site.');
|
|
69
|
+
}
|
|
70
|
+
out = { ...out, _logger: { ...existing, ...shadowed } };
|
|
71
|
+
const keys = Object.keys(shadowed).join(', ');
|
|
72
|
+
ref.self?.warn({ _logger: shadowed }, `Log call included reserved key(s) [${keys}] in merge object — moved to _logger. Fix the call site.`);
|
|
43
73
|
}
|
|
44
74
|
// Emit merged VError info chain under error_info for structured querying.
|
|
45
75
|
// By this point hooks.logMethod has already unwrapped any WError, so err
|
package/dist/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AA4BrD,iFAAiF;AACjF,0BAA0B;AAC1B,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAE5B,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA6B;IAC9D,4EAA4E;IAC5E,+EAA+E;IAC/E,kEAAkE;IAClE,MAAM,GAAG,GAAiC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAE9D,MAAM,WAAW,GAAkB;QACjC,KAAK,EAAE,OAAO;QACd,sEAAsE;QACtE,UAAU,EAAE,SAAS;QACrB,mDAAmD;QACnD,IAAI,EAAE,SAAS;QACf,iEAAiE;QACjE,2EAA2E;QAC3E,6EAA6E;QAC7E,eAAe;QACf,SAAS,EAAE,GAAG,EAAE,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG;QAC7D,UAAU,EAAE;YACV,oEAAoE;YACpE,KAAK,CAAC,KAAa;gBACjB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YAC1B,CAAC;YACD,GAAG,CAAC,MAA+B;gBACjC,IAAI,GAAG,GAAG,MAAM,CAAC;gBAEjB,sEAAsE;gBACtE,wEAAwE;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED