gpt4 book ai didi

javascript - 如何在 pino.js 记录器中旋转日志文件

转载 作者:行者123 更新时间:2023-12-05 01:09:36 31 4
gpt4 key购买 nike

我正在尝试使用 pino 登录到我的 Node 应用程序服务器,并且确实有一些大型日志即将到来,因此每天轮换文件对于之后阅读日志会更有用。

我可以使用 morgan 做到这一点,但使用 pino 我找不到方法。我尝试根据当前日期动态分配文件夹,但在主 app.js 文件中这样做意味着它只会运行一次,而循环日期意味着停止并重新运行服务器。

这是我的代码:

var date = d.getFullYear()+'-'+(d.getMonth()+1)+'-'+d.getDate();
const fileLogger = pino(
pino.destination({
dest: './log/userLog '+date, sync: false
})
);

最佳答案

pino documentation 中所述您需要使用单独的工具进行日志轮换。

使用 logrotate你可以轻松做到。

node myapp.js > /var/log/myapp.log

在您的服务器上安装 logrotate 并使用 logrotation 配置创建一个 /etc/logrotate.d/myapp 文件,例如:

/var/log/myapp.log {
su root
daily
rotate 7
delaycompress
compress
notifempty
missingok
copytruncate
}

请务必阅读 its configuration documentation以实现您的正确旋转。显然,探索 many other questions关于 logrotate 如果你有问题。

关于javascript - 如何在 pino.js 记录器中旋转日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65035838/

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