gpt4 book ai didi

javascript - Winston 添加自定义日志级别

转载 作者:搜寻专家 更新时间:2023-11-01 00:36:16 28 4
gpt4 key购买 nike

我尝试向 winston 添加自定义日志级别。这是记录器的代码:

const write = new (winston.Logger)({
transports: [
new (winston.transports.DailyRotateFile)({
filename: `${logDir}/%DATE%-log`,
timestamp: tsFormat,
datePattern: 'D-M-YYYY',
prepend: true,
zippedArchive:true,
}),
]
});

我已尝试添加自定义日志级别,但我继续在我的日志文件中看到所有日志。

这是我的自定义日志级别代码:

var levels = {
levels: {
info: 0,
debug: 1,
warning: 2,
error: 3
}
};

然后我为传输添加了这行代码:

levels: levels.levels

在我的交通工具中:

 level: "error"

但我也不断看到信息日志。任何人都可以帮我解决这个问题吗?谢谢

最佳答案

winston 中的日志级别基于优先级(从高到低)。日志的严重性在数字上从最重要到最不重要。

{ 
emerg: 0,
alert: 1,
crit: 2,
error: 3,
warning: 4,
notice: 5,
info: 6,
debug: 7
}

在这里,当您记录错误级别 3 (logger.error) 时,crit、alert 和 emerg 下的日志也将包含在您的日志中。

同样在您的自定义日志级别中,level:error 的严重性非常低,它还会记录所有 级别 <= 3,包括日志、调试和警告。

如果您只想记录level:error,请修改您的自定义日志级别严重性,如下所示

var levels = {
levels: {
error: 0
info: 1,
debug: 2,
warning: 3
}
};

有关更多信息,请查看 winston logging levels

关于javascript - Winston 添加自定义日志级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50813078/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com