作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要将文件名添加到 pino-pretty 行输出中,
现在我正在使用:
const pino = require('pino');
const logger = pino({
prettyPrint: {
colorize: true,
translateTime: 'yyyy-mm-dd HH:MM:ss',
ignore: 'pid,hostname'
}
})
[2020-05-14 16:25:45] INFO : Network is private
[2020-05-14 16:25:45] INFO myFile.js: Network is private
customPrettifiers
选项,但不能得到希望的结果,
const pino = require('pino');
const path = require('path');
const logger = pino({
prettyPrint: {
colorize: true,
translateTime: 'yyyy-mm-dd HH:MM:ss',
ignore: 'pid,hostname',
customPrettifiers: {
filename: path.basename(__filename)
}
}
})
最佳答案
我认为你能得到的最接近的如下:
const path = require('path');
const pino = require('pino');
const logger = pino({
prettyPrint: {
// Adds the filename property to the message
messageFormat: '{filename}: {msg}',
// need to ignore 'filename' otherwise it appears beneath each log
ignore: 'pid,hostname,filename',
},
}).child({ filename: path.basename(__filename) });
请注意,您不能将文件名设置为与消息不同的样式,但希望这样就足够了。
logger.js
可能也更好传递默认 pino 选项的文件,例如:
// logger.js
const logger = require('pino')({
prettyPrint: {
messageFormat: '{filename}: {msg}',
ignore: 'pid,hostname,filename',
},
});
module.exports = logger;
// file_with_logging.js
const parentLogger = require('./logger.js');
const logger = parentLogger.child({ filename: path.basename(__filename) });
关于node.js - pino-pretty,如何将文件名添加到日志行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61803101/
我是一名优秀的程序员,十分优秀!