Node.js 控制台日志和错误是否在pm2中被垃圾收集?
据我所知,日志不会在node.js中被垃圾收集,因此一个执行大量日志记录的应用程序可能会导致内存耗尽 pm2的记录设施是否改变了这一点?Node.js 控制台日志和错误是否在pm2中被垃圾收集?,node.js,pm2,Node.js,Pm2,据我所知,日志不会在node.js中被垃圾收集,因此一个执行大量日志记录的应用程序可能会导致内存耗尽 pm2的记录设施是否改变了这一点? 也就是说,如果我在pm2下运行一个node.js脚本,抛出大量的console.log(消息),pm2是否会“拦截”它们,大概是将其从内存中释放并写入文件,还是只是观察stdout和stderr并将新行复制到各自的out/error.pm2/logs文件中?是,您就在pm2点,只需将stdout和stderr捕获到日志文件中。 但它也有一些控制日志的选项。 您
也就是说,如果我在pm2下运行一个node.js脚本,抛出大量的console.log(消息),pm2是否会“拦截”它们,大概是将其从内存中释放并写入文件,还是只是观察stdout和stderr并将新行复制到各自的out/error.pm2/logs文件中?是,您就在pm2点,只需将stdout和stderr捕获到日志文件中。 但它也有一些控制日志的选项。 您可以通过ecosystem.config.json禁用编写公共日志,如下所示:
/path/to/.pm2/logs/*.log {
rotate 10
weekly
missingok
notifempty
compress
delaycompress
copytruncate
create 0640 group user
}
{
“输出文件”:“/dev/null”,
“错误文件”:“/dev/null”
}
但不推荐这样做。
PM2还提供了通过该模块旋转日志的工具
另一种方法是将system logrotate与以下配置文件结合使用:
/path/to/.pm2/logs/*.log {
rotate 10
weekly
missingok
notifempty
compress
delaycompress
copytruncate
create 0640 group user
}
有关更多信息,请查看官方文件: