@c9up/spectrum 0.1.5 → 0.1.6
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 +21 -1
- package/dist/Logger.js.map +1 -1
- package/dist/services/main.d.ts +1 -1
- package/dist/services/main.js +1 -1
- package/package.json +1 -1
- package/src/Logger.ts +23 -1
- package/src/services/main.ts +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;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAY,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGhE,YAAY,EAAE,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAY,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGhE,YAAY,EAAE,QAAQ,EAAE,CAAC;AAwBzB,qBAAa,MAAM;IAClB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAC,CAAS;gBAEnB,MAAM,EAAE,SAAS,EAAE,MAAM,SAAQ,EAAE,aAAa,CAAC,EAAE,MAAM;IAMrE;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAQnE;;;OAGG;IACH,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAIlC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI5D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI5D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI3D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI5D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI5D,OAAO,CAAC,GAAG;CAgCX"}
|
package/dist/Logger.js
CHANGED
|
@@ -4,6 +4,26 @@
|
|
|
4
4
|
* @implements FR54, FR55, FR56, FR58
|
|
5
5
|
*/
|
|
6
6
|
import { LOG_LEVEL_ORDER } from "./types.js";
|
|
7
|
+
/**
|
|
8
|
+
* Serialize an `err`/`error` Error in the log data into a plain `{ name, message,
|
|
9
|
+
* stack }` (AdonisJS/pino `err` serializer parity) — Errors don't JSON-stringify
|
|
10
|
+
* usefully otherwise. Other data passes through untouched. Returns a new object;
|
|
11
|
+
* the caller's data is not mutated.
|
|
12
|
+
*/
|
|
13
|
+
function serializeErr(data) {
|
|
14
|
+
if (!data)
|
|
15
|
+
return data;
|
|
16
|
+
for (const key of ["err", "error"]) {
|
|
17
|
+
const v = data[key];
|
|
18
|
+
if (v instanceof Error) {
|
|
19
|
+
return {
|
|
20
|
+
...data,
|
|
21
|
+
[key]: { name: v.name, message: v.message, stack: v.stack },
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return data;
|
|
26
|
+
}
|
|
7
27
|
export class Logger {
|
|
8
28
|
config;
|
|
9
29
|
module;
|
|
@@ -57,7 +77,7 @@ export class Logger {
|
|
|
57
77
|
module: this.module,
|
|
58
78
|
correlationId: this.correlationId,
|
|
59
79
|
timestamp: new Date().toISOString(),
|
|
60
|
-
data,
|
|
80
|
+
data: serializeErr(data),
|
|
61
81
|
};
|
|
62
82
|
for (const channel of this.config.channels) {
|
|
63
83
|
try {
|
package/dist/Logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAI7C,MAAM,OAAO,MAAM;IACV,MAAM,CAAY;IAClB,MAAM,CAAS;IACf,aAAa,CAAU;IAE/B,YAAY,MAAiB,EAAE,MAAM,GAAG,KAAK,EAAE,aAAsB;QACpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAoD;QACzD,OAAO,IAAI,MAAM,CAChB,IAAI,CAAC,MAAM,EACX,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAC7B,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAC3C,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,EAAU;QAC1B,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,IAA8B;QACpD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,IAA8B;QACpD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,IAA8B;QACnD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,IAA8B;QACnD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,IAA8B;QACpD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,IAA8B;QACpD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAEO,GAAG,CACV,KAAe,EACf,OAAe,EACf,IAA8B;QAE9B,MAAM,YAAY,GACjB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QACzD,MAAM,cAAc,GACnB,eAAe,CAAC,YAAY,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC;QACrE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,eAAe,CAAC,cAAc,CAAC,EAAE,CAAC;YACrE,OAAO;QACR,CAAC;QAED,MAAM,KAAK,GAAa;YACvB,KAAK;YACL,OAAO;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,IAAI;
|
|
1
|
+
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"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"}
|
package/dist/services/main.d.ts
CHANGED
package/dist/services/main.js
CHANGED
package/package.json
CHANGED
package/src/Logger.ts
CHANGED
|
@@ -9,6 +9,28 @@ import { LOG_LEVEL_ORDER } from "./types.js";
|
|
|
9
9
|
|
|
10
10
|
export type { LogLevel };
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Serialize an `err`/`error` Error in the log data into a plain `{ name, message,
|
|
14
|
+
* stack }` (AdonisJS/pino `err` serializer parity) — Errors don't JSON-stringify
|
|
15
|
+
* usefully otherwise. Other data passes through untouched. Returns a new object;
|
|
16
|
+
* the caller's data is not mutated.
|
|
17
|
+
*/
|
|
18
|
+
function serializeErr(
|
|
19
|
+
data?: Record<string, unknown>,
|
|
20
|
+
): Record<string, unknown> | undefined {
|
|
21
|
+
if (!data) return data;
|
|
22
|
+
for (const key of ["err", "error"]) {
|
|
23
|
+
const v = data[key];
|
|
24
|
+
if (v instanceof Error) {
|
|
25
|
+
return {
|
|
26
|
+
...data,
|
|
27
|
+
[key]: { name: v.name, message: v.message, stack: v.stack },
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return data;
|
|
32
|
+
}
|
|
33
|
+
|
|
12
34
|
export class Logger {
|
|
13
35
|
private config: LogConfig;
|
|
14
36
|
private module: string;
|
|
@@ -83,7 +105,7 @@ export class Logger {
|
|
|
83
105
|
module: this.module,
|
|
84
106
|
correlationId: this.correlationId,
|
|
85
107
|
timestamp: new Date().toISOString(),
|
|
86
|
-
data,
|
|
108
|
+
data: serializeErr(data),
|
|
87
109
|
};
|
|
88
110
|
|
|
89
111
|
for (const channel of this.config.channels) {
|
package/src/services/main.ts
CHANGED