UNPKG

667 BJavaScriptView Raw
1/**
2 * @fileoverview configuration abstraction of the logger.
3 */
4
5const winston = require('winston');
6
7const options = {
8 colorize: true,
9 prettyPrint: true,
10 label: 'febs',
11};
12
13const logger = new (winston.Logger)({
14 transports: [
15 new (winston.transports.Console)(options),
16 ],
17});
18
19/**
20 * Allows the logLevel of the logger to be changed after construction.
21 *
22 * @param {String('warn','debug','info')} logLevel
23 */
24logger.setLogLevel = function setLogLevel(logLevel) {
25 Object.keys(logger.transports).forEach((transport) => {
26 logger.info(`Log Level: ${logLevel}`);
27 logger.transports[transport].level = logLevel;
28 });
29};
30
31module.exports = logger;