向温斯顿传输添加不同的格式器
Adding different formatters to Winston transports
我需要为每次传输使用不同类型的格式化器。
的例子:
logger = new (winston.Logger)({
transports: [
new (winston.transports.LogstashUDP)({
// some config here. Do noting on formatting
}),
new (winston.transports.Mail)({
// do formatting one way
}),
new (winston.transports.File)({
// write to file as json (maybe format it here)
}),
new (winston.transports.Console)({
// do another formatting
})
]
});
正如我从温斯顿传输文档中看到的,只有控制台支持自定义格式化器。
我使用winston-mailer
模块的邮件和winston-logstash-upd
有办法和温斯顿解决这个问题吗?或者如何在这些模块周围创建包装器来支持格式化?
这是由dandv发布到GitHub的解决方案
const logger = winston.createLogger({
transports: [
new winston.transports.File({
filename: 'error.log', level: 'error',
format: winston.format.simple(),
}),
new winston.transports.File({
filename: 'combined.log', level: 'debug',
format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
}),
],
});
logger.error('prefixed by the timestamp only in `combined.log`');
相关文章:
- 如何为我的分页添加格式
- TinyMCE:添加复杂格式
- 如何使用yyyymmdd格式在日期中添加n天,但排除周日
- 如何在jQuery日期时间选择器中添加12小时格式
- jquery DataTable 数据格式和警告 - 添加的数据与已知列数不匹配
- 将Curreny格式添加到NoUISlider中
- javascript(angularJS):添加当前时间到日期和格式
- 如何将照片和视频添加到JSON测试格式
- 我想在日期中添加月份,并采用mm/dd/yy格式
- 如何在不强制的情况下添加条件文本?[101,pdf格式]
- 如何为全球 javascript 的数字显示添加格式
- 将自定义格式添加到 joomla 中的 Tinymce 编辑器中
- jQuery:以 dd-mm-yyyy 格式添加 4 周至今
- 将颜色格式添加到 IF ELSE 结果
- 全日历轴格式添加 2 分钟
- MySQL 查询中的日期格式添加额外的小时数
- 向数据选取器的格式添加天数日期
- 将日期选取器日期格式添加到动态生成的文本框,其中日期格式设置为属性
- 将时间戳格式添加到折线图x轴
- 将新格式添加到角度日期过滤器