Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js WinstonJS自定义级别_Node.js_Winston - Fatal编程技术网

Node.js WinstonJS自定义级别

Node.js WinstonJS自定义级别,node.js,winston,Node.js,Winston,所以我想给我的记录器添加两个级别。但这不是日志,我不知道为什么。。这是我的设置。有什么想法吗 // setup var logLevels = { levels: { trace: 0, debug: 1, info: 2, warn: 3, error: 4, critical: 5 } }; var logger = new (winston.Logger)({ leve

所以我想给我的记录器添加两个级别。但这不是日志,我不知道为什么。。这是我的设置。有什么想法吗

// setup
var logLevels = {
    levels: {
        trace: 0,
        debug: 1,
        info: 2,
        warn: 3,
        error: 4,
        critical: 5
    }
};

var logger = new (winston.Logger)({
    levels: logLevels.levels,
    transports: [
        new winston.transports.Console()
    ]
});

// test
console.info('----------------------');
logger.trace('trace');
logger.debug('debug');
logger.info('info');
logger.warn('warn');
logger.error('error');
logger.critical('critical');
console.info('----------------------');
输出:

----------------------
debug: debug
trace: trace
info: info
----------------------

这里的第一个问题是,每个级别都有一个特定的整数优先级。默认情况下,其

{ error: 0, warn: 1, info: 2, verbose: 3, debug: 4, silly: 5 }
所以越少越重要

其次,您必须为每个传输指定
级别
。在您的情况下,必须将“级别”设置为“关键”才能显示所有消息

winston允许您在每个传输上定义一个级别属性,该属性指定传输应记录的最大消息级别


同样奇怪的是,
debug
行是在
跟踪之前打印的line@yarons有时它会在第二个
-------------------------
var logger = new (winston.Logger)({
    levels: logLevels.levels,
    transports: [
        new winston.transports.Console({level: 'critical'})
    ]
});