UNPKG

nestjs-context-winston

Version:

Contextual Logger for nestjs apps using AsyncLocalStorage and winston

25 lines 1.3 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.loggerFactory = loggerFactory; const winston_1 = __importDefault(require("winston")); const internal_1 = require("./internal"); function loggerFactory({ logClass, logLevel, logEnricher, }) { const timestamp = winston_1.default.format.timestamp({ format: 'YYYY-MM-DD HH:mm:ss' }); const customEnricher = logEnricher ? [logEnricher()] : []; const format = process.env.VSCODE_INJECTION === '1' ? winston_1.default.format.combine(winston_1.default.format.colorize(), timestamp, winston_1.default.format.errors({ stack: true }), ...customEnricher, winston_1.default.format.printf(internal_1.printColoredMeta)) : winston_1.default.format.combine(timestamp, ...customEnricher, winston_1.default.format.json()); const baseLogger = winston_1.default.createLogger({ transports: [ new winston_1.default.transports.Console({ format, level: logLevel || process.env.LOG_LEVEL || 'info', }), ], }); return new logClass(baseLogger); } //# sourceMappingURL=logger-factory.js.map