@loke/logger 3.4.0 → 3.5.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/index.d.ts +2 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/streams/console.d.ts +2 -1
- package/dist/lib/streams/console.js +7 -2
- package/dist/lib/streams/console.js.map +1 -1
- package/dist/lib/streams/console.test.js +8 -2
- package/dist/lib/streams/console.test.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -8,5 +8,6 @@ export interface CreateLoggerOptions {
|
|
|
8
8
|
metricsRegistry?: Registry;
|
|
9
9
|
showDebug?: boolean;
|
|
10
10
|
systemdPrefix?: boolean;
|
|
11
|
+
escapeNewlines?: boolean;
|
|
11
12
|
}
|
|
12
|
-
export declare function create({ syslog, metricsRegistry, showDebug, systemdPrefix, }?: CreateLoggerOptions): LokeLogger;
|
|
13
|
+
export declare function create({ syslog, metricsRegistry, showDebug, systemdPrefix, escapeNewlines, }?: CreateLoggerOptions): LokeLogger;
|
package/dist/index.js
CHANGED
|
@@ -13,9 +13,9 @@ Object.defineProperty(exports, "LokeLogger", { enumerable: true, get: function (
|
|
|
13
13
|
var null_1 = require("./lib/null");
|
|
14
14
|
Object.defineProperty(exports, "nullLogger", { enumerable: true, get: function () { return null_1.nullLogger; } });
|
|
15
15
|
const systemd = Boolean(process.env.JOURNAL_STREAM);
|
|
16
|
-
function create({ syslog = false, metricsRegistry, showDebug, systemdPrefix = systemd, } = {}) {
|
|
16
|
+
function create({ syslog = false, metricsRegistry, showDebug, systemdPrefix = systemd, escapeNewlines = systemd, } = {}) {
|
|
17
17
|
const streams = [
|
|
18
|
-
new streams_1.ConsoleStream(undefined, undefined, systemdPrefix),
|
|
18
|
+
new streams_1.ConsoleStream(undefined, undefined, systemdPrefix, escapeNewlines),
|
|
19
19
|
];
|
|
20
20
|
if (syslog) {
|
|
21
21
|
streams.push(new streams_1.SyslogStream());
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAmBA,wBAsBC;AAzCD,2CAA4D;AAC5D,yCAA0C;AAC1C,2CAAkD;AAGlD,yCAA4D;AAAnD,uGAAA,YAAY,OAAA;AAAE,wGAAA,aAAa,OAAA;AACpC,uCAAkD;AAAzC,oGAAA,UAAU,OAAA;AACnB,mCAAwC;AAA/B,kGAAA,UAAU,OAAA;AAUnB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AAEpD,SAAgB,MAAM,CAAC,EACrB,MAAM,GAAG,KAAK,EACd,eAAe,EACf,SAAS,EACT,aAAa,GAAG,OAAO,EACvB,cAAc,GAAG,OAAO,MACD,EAAE;IACzB,MAAM,OAAO,GAA4B;QACvC,IAAI,uBAAa,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC;KACvE,CAAC;IAEF,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,IAAI,sBAAY,EAAE,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,MAAM,GAAG,IAAI,mBAAU,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAEpD,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,GAAG,IAAA,2BAAiB,EAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -4,6 +4,7 @@ export declare class ConsoleStream extends Writable {
|
|
|
4
4
|
stdout: NodeJS.WritableStream;
|
|
5
5
|
stderr: NodeJS.WritableStream;
|
|
6
6
|
systemdPrefix: boolean;
|
|
7
|
-
|
|
7
|
+
escapeNewlines: boolean;
|
|
8
|
+
constructor(stdout?: NodeJS.WritableStream, stderr?: NodeJS.WritableStream, systemdPrefix?: boolean, escapeNewlines?: boolean);
|
|
8
9
|
_write(log: Log, _: string, callback: () => void): void;
|
|
9
10
|
}
|
|
@@ -10,18 +10,23 @@ const SYSTEMD_PREFIX = {
|
|
|
10
10
|
[common_1.ERROR]: "<3>",
|
|
11
11
|
};
|
|
12
12
|
class ConsoleStream extends node_stream_1.Writable {
|
|
13
|
-
constructor(stdout = process.stdout, stderr = process.stderr, systemdPrefix = false) {
|
|
13
|
+
constructor(stdout = process.stdout, stderr = process.stderr, systemdPrefix = false, escapeNewlines = false) {
|
|
14
14
|
super({ objectMode: true });
|
|
15
15
|
this.stdout = stdout;
|
|
16
16
|
this.stderr = stderr;
|
|
17
17
|
this.systemdPrefix = systemdPrefix;
|
|
18
|
+
this.escapeNewlines = escapeNewlines;
|
|
18
19
|
}
|
|
19
20
|
_write(log, _, callback) {
|
|
20
|
-
const { level
|
|
21
|
+
const { level } = log;
|
|
22
|
+
let message = log.message;
|
|
21
23
|
let prefix = "";
|
|
22
24
|
if (this.systemdPrefix) {
|
|
23
25
|
prefix = SYSTEMD_PREFIX[level];
|
|
24
26
|
}
|
|
27
|
+
if (this.escapeNewlines) {
|
|
28
|
+
message = message.replace(/\n/g, "\\n");
|
|
29
|
+
}
|
|
25
30
|
switch (level) {
|
|
26
31
|
case common_1.ERROR:
|
|
27
32
|
case common_1.WARN:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../../lib/streams/console.ts"],"names":[],"mappings":";;;AAAA,6CAAuC;AAEvC,sCAA0D;AAE1D,MAAM,cAAc,GAAG;IACrB,CAAC,cAAK,CAAC,EAAE,KAAK;IACd,CAAC,aAAI,CAAC,EAAE,KAAK;IACb,CAAC,aAAI,CAAC,EAAE,KAAK;IACb,CAAC,cAAK,CAAC,EAAE,KAAK;CACf,CAAC;AAEF,MAAa,aAAc,SAAQ,sBAAQ;
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../../lib/streams/console.ts"],"names":[],"mappings":";;;AAAA,6CAAuC;AAEvC,sCAA0D;AAE1D,MAAM,cAAc,GAAG;IACrB,CAAC,cAAK,CAAC,EAAE,KAAK;IACd,CAAC,aAAI,CAAC,EAAE,KAAK;IACb,CAAC,aAAI,CAAC,EAAE,KAAK;IACb,CAAC,cAAK,CAAC,EAAE,KAAK;CACf,CAAC;AAEF,MAAa,aAAc,SAAQ,sBAAQ;IAMzC,YACE,SAAgC,OAAO,CAAC,MAAM,EAC9C,SAAgC,OAAO,CAAC,MAAM,EAC9C,aAAa,GAAG,KAAK,EACrB,cAAc,GAAG,KAAK;QAEtB,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,GAAQ,EAAE,CAAS,EAAE,QAAoB;QAC9C,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;QACtB,IAAI,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAE1B,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;QAED,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,cAAK,CAAC;YACX,KAAK,aAAI;gBACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;gBAC3C,MAAM;YACR;gBACE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;QAC/C,CAAC;QACD,QAAQ,EAAE,CAAC;IACb,CAAC;CACF;AA1CD,sCA0CC"}
|
|
@@ -45,6 +45,9 @@ const stderr = createTestWritable();
|
|
|
45
45
|
logger.error("error message");
|
|
46
46
|
t.is(stderr.data[0], `${common_1.ERROR} error message\n`);
|
|
47
47
|
stderr.clear();
|
|
48
|
+
logger.log("multiline\nmessage");
|
|
49
|
+
t.is(stdout.data[0], `${common_1.INFO} multiline\nmessage\n`);
|
|
50
|
+
stdout.clear();
|
|
48
51
|
});
|
|
49
52
|
(0, ava_1.default)("logger with debug false", (t) => {
|
|
50
53
|
const logger = new logger_1.LokeLogger({
|
|
@@ -84,9 +87,9 @@ const stderr = createTestWritable();
|
|
|
84
87
|
t.is(stdout.data[0], `${common_1.INFO} ${PREFIX}: prefixed message\n`);
|
|
85
88
|
stdout.clear();
|
|
86
89
|
});
|
|
87
|
-
(0, ava_1.default)("logger systemd prefix", (t) => {
|
|
90
|
+
(0, ava_1.default)("logger systemd prefix and newline escaping", (t) => {
|
|
88
91
|
const logger = new logger_1.LokeLogger({
|
|
89
|
-
streams: [new console_1.ConsoleStream(stdout.writable, stderr.writable, true)],
|
|
92
|
+
streams: [new console_1.ConsoleStream(stdout.writable, stderr.writable, true, true)],
|
|
90
93
|
});
|
|
91
94
|
logger.debug("debug message");
|
|
92
95
|
t.is(stdout.data[0], `<7>${common_1.DEBUG} debug message\n`);
|
|
@@ -103,5 +106,8 @@ const stderr = createTestWritable();
|
|
|
103
106
|
logger.error("error message");
|
|
104
107
|
t.is(stderr.data[0], `<3>${common_1.ERROR} error message\n`);
|
|
105
108
|
stderr.clear();
|
|
109
|
+
logger.log("multiline\nmessage");
|
|
110
|
+
t.is(stdout.data[0], `<6>${common_1.INFO} multiline\\nmessage\n`);
|
|
111
|
+
stdout.clear();
|
|
106
112
|
});
|
|
107
113
|
//# sourceMappingURL=console.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.test.js","sourceRoot":"","sources":["../../../lib/streams/console.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"console.test.js","sourceRoot":"","sources":["../../../lib/streams/console.test.ts"],"names":[],"mappings":"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"}
|