diff options
Diffstat (limited to 'src/util')
| -rw-r--r-- | src/util/logger.test.ts | 24 | ||||
| -rw-r--r-- | src/util/logger.ts | 19 |
2 files changed, 33 insertions, 10 deletions
diff --git a/src/util/logger.test.ts b/src/util/logger.test.ts new file mode 100644 index 0000000..ca181c4 --- /dev/null +++ b/src/util/logger.test.ts @@ -0,0 +1,24 @@ +import configureLogger from "./logger"; + +describe("Logger configurer", () => { + it("should set passed clazz as label", () => { + // Arrange + const clazz = "important-clazz-name"; + + // Act + const result = configureLogger(clazz); + + // Assert + const adapter = { + level: "info", + message: "test/10" + }; + const actual = result.format.transform(Object.assign({}, adapter)); + expect(typeof actual).not.toEqual("boolean"); + if (typeof actual !== "boolean") { + expect(actual.level).toEqual(adapter.level); + expect(actual.message).toEqual(adapter.message); + expect(actual.label).toEqual(clazz); + } + }); +}); diff --git a/src/util/logger.ts b/src/util/logger.ts index d108ae0..27eeefe 100644 --- a/src/util/logger.ts +++ b/src/util/logger.ts @@ -6,6 +6,13 @@ const { Console } = winston.transports; const LOG_LEVEL = process.env.LOG_LEVEL || "info"; +const consoleFormat = combine( + colorize(), + printf(({ level, message, label, timestamp }) => { + return `${timestamp} [${label}] ${level}: ${message}`; + }) +); + /** * Provides standard logging format and output for the server. */ @@ -16,14 +23,6 @@ export default ( format: Format; transports: Transport[]; } => ({ - format: combine( - splat(), - timestamp(), - label({ label: clazz }), - colorize(), - printf(({ level, message, label, timestamp }) => { - return `${timestamp} [${label}] ${level}: ${message}`; - }) - ), - transports: [new Console({ level: level })] + format: combine(splat(), timestamp(), label({ label: clazz })), + transports: [new Console({ level: level, format: consoleFormat })] }); |
