UNPKG

traceability

Version:

Traceability tools - middleware and winston logger

55 lines 2.08 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.LoggerTraceability = void 0; var index_1 = require("./index"); var LoggerTraceability = /** @class */ (function () { function LoggerTraceability() { this.logger = index_1.createLogger(LoggerTraceability.getLoggerOptions()); } LoggerTraceability.getInstance = function () { if (!LoggerTraceability.instance) { LoggerTraceability.instance = new LoggerTraceability(); } return LoggerTraceability.instance; }; LoggerTraceability.configure = function (options) { var logger = LoggerTraceability.getInstance().getLogger(); var newOptions = __assign({}, options); if (newOptions.transports === undefined) { newOptions.transports = logger.transports; } logger.configure(newOptions); }; LoggerTraceability.getLoggerOptions = function () { var traceFormat = index_1.format(function (info) { var requestInfo = index_1.ContextAsyncHooks.getContext(); if (requestInfo && requestInfo.cid) { info.cid = requestInfo.cid; } return info; }); return { level: 'info', silent: false, format: index_1.format.combine(traceFormat(), index_1.format.timestamp(), index_1.format.json()), transports: [new index_1.transports.Console()], }; }; LoggerTraceability.prototype.getLogger = function () { return this.logger; }; return LoggerTraceability; }()); exports.LoggerTraceability = LoggerTraceability; //# sourceMappingURL=LoggerTraceability.js.map