node.js - Winston - 多控制台传输
问题描述
我正在尝试使用 winston 登录节点。
我想在控制台中production
记录模式的异常,同时记录模式的所有事件development
。
这是我的 logger.js 文件
const winston = require('winston');
const path = require('path');
//Get logging level
const level = process.env.log || 'debug';
process.env.NODE_ENV = process.env.NODE_ENV || 'development';
function printf (info) {
return `${info.timestamp} ${info.level} [${info.label}]: ${info.message}`
}
const logger = winston.createLogger({
exitOnError: false,
level: level,
format: winston.format.combine(
winston.format.label({ label: path.basename(process.mainModule.filename) }),
winston.format.timestamp({ format: 'YYYY-MM-DD HH:mm:ss' })
),
exceptionHandlers: [
new winston.transports.Console({
handleExceptions: true,
format: winston.format.combine(
winston.format.colorize(),
winston.format.printf(info => `${printf(info)}` )
)
}),
]
});
if(process.env.NODE_ENV === 'development')
logger.add(
new winston.transports.Console({
format: winston.format.combine(
winston.format.colorize(),
winston.format.printf(info => `${printf(info)}` )
)
})
);
module.exports = logger;
不幸的是,每当我尝试记录未处理的异常时,我所看到的只是undefined
在控制台中,没有任何错误详细信息。
有人可以帮忙吗?
解决方案
推荐阅读
- javascript - 使用 webpack 构建 index.html 以与开发服务器一起使用
- java - Opendaylight:在集成/分发代码中部署对 Netconf 源代码的更改
- java - 无法在课堂上画线
- python-3.x - 如何使用 BeautifulSoup 从特定站点提取信息
- go - 如何安装 golang-libguestfs 包?
- angular - 使用密钥访问时在控制台中获取 null
- python - 如何在 Python 中读取每行文本并将其转换为 ASCII 小数?
- java - Spring通过配置文件组合选择属性源
- jq - 尝试将键和值都传递给 jq 过滤器表达式时出错
- android - 取消 viewModelScope 并在以后重新使用它