UNPKG

jsev

Version:

Environment for building Web API's.

38 lines 1.26 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const bunyan_1 = __importDefault(require("bunyan")); const ConsoleStream_1 = __importDefault(require("./ConsoleStream")); class Logger extends bunyan_1.default { } exports.Logger = Logger; function createLogger(env) { const { name, logger: cfg } = env.cfg; const consoleCfg = cfg ? cfg.console : undefined; const streams = [ { stream: new ConsoleStream_1.default(consoleCfg), type: "raw", }, ]; const bunyanCfg = { level: bunyan_1.default.INFO, name, serializers: bunyan_1.default.stdSerializers, streams, ...cfg, }; // Delete so they are not logged delete bunyanCfg.console; const log = bunyan_1.default.createLogger(bunyanCfg); // Global unhandled error logging process.on("uncaughtException", (err) => { log.fatal(err, `Unrecoverable error from ${origin}, terminating`); process.exit(process.exitCode || 1); }); return log; } exports.createLogger = createLogger; //# sourceMappingURL=Logger.js.map