Oli*_* D. 5 logging node.js pinojs
我正在分享这个,因为我努力让 pino 记录器写入 STDOUT 和日志文件:
const dest = new stream.PassThrough();
dest.pipe(process.stdout);
dest.pipe(fs.createWriteStream('/logs/file.log', { flags: 'a' }));
const logger = pino({ level: 'info' }, dest);
Run Code Online (Sandbox Code Playgroud)
由于这看起来非常低,我想知道这是否是正确的方法。
Or *_*cov 12
如果您使用 pino 7+,您可以使用以下命令:
const transport = pino.transport({
targets: [
{
level: 'trace',
target: 'pino/file',
options: {
destination: logPath,
},
},
{
level: 'trace',
target: 'pino-pretty',
options: {},
},
],
});
export const log = pino(options, transport);
Run Code Online (Sandbox Code Playgroud)
wtw*_*twt 11
有点晚了,但pino-multi-stream可能就是你想要的。我在这里遵循了本节,它在 TypeScript 中适合我的目的。你可以尝试这样的事情:
const fs = require('fs');
const pinoms = require('pino-multi-stream')
const streams = [
{ stream: process.stdout },
{ stream: fs.createWriteStream('/logs/file.log', { flags: 'a' }) },
]
const logger = pino({ level: 'info' }, pinoms.multistream(streams));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
973 次 |
| 最近记录: |