UNPKG

1.29 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const log4js = require("log4js");
4const cls_service_1 = require("./services/cls_service");
5exports.DEFAULT_LOG_LEVEL = 'TRACE';
6function getLogger(config) {
7 const logLevel = config.logLevel || exports.DEFAULT_LOG_LEVEL;
8 log4js.addLayout('json', (config) => {
9 return (logEvent) => {
10 logEvent.context = {
11 service: process.env.service_name,
12 mdc: cls_service_1.ClsService.getTrace()
13 };
14 return JSON.stringify(logEvent);
15 };
16 });
17 log4js.configure({
18 appenders: {
19 out: {
20 type: 'stdout',
21 layout: {
22 type: 'json'
23 }
24 }
25 },
26 categories: {
27 default: { appenders: ['out'], level: logLevel }
28 }
29 });
30 return log4js.getLogger();
31}
32exports.getLogger = getLogger;
33function replaceConsoleWithLogger(logger) {
34 console.log = logger.log.bind(logger);
35 console.trace = logger.trace.bind(logger);
36 console.debug = logger.debug.bind(logger);
37 console.warn = logger.warn.bind(logger);
38 console.error = logger.error.bind(logger);
39}
40exports.replaceConsoleWithLogger = replaceConsoleWithLogger;