首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pm2-logrotate的超大Pm2日志

使用pm2-logrotate的超大Pm2日志
EN

Stack Overflow用户
提问于 2018-01-02 17:28:23
回答 1查看 1.3K关注 0票数 6

我和pm2有点麻烦。

我使用的是一个名为pm2-logrotate的模块,但是日志有一个很大的gize,比如1.7G,并且不考虑我的配置,它是

代码语言:javascript
复制
== pm2-logrotate ==
┌────────────────┬───────────────┐
│ key            │ value         │
├────────────────┼───────────────┤
│ compress       │ true          │
│ rotateInterval │ * * */1 * * * │
│ max_size       │ 10M           │
│ retain         │ 1             │
│ rotateModule   │ true          │
│ workerInterval │ 30            │
└────────────────┴───────────────┘

那么我能对pm2做些什么呢?可以删除旧的日志,而不是开始用大量的数据压垮我的机器吗?

EN

回答 1

Stack Overflow用户

发布于 2021-04-08 01:47:15

我也有这个问题。我认为目前pm2-logrotate中有一个bug,workerInterval选项被忽略,它只根据rotateInterval选项旋转(即默认情况下每天一次)。这意味着文件可能会比您使用max_size选项指定的大小大得多。请参见options here

我通过将rotateInterval选项设置为每30分钟一次来“解决”它,而不是默认的每天一次。下面是命令:

代码语言:javascript
复制
pm2 set pm2-logrotate:rotateInterval '*/30 * * * *'

这样做的问题是,无论日志大小如何,它都意味着日志将每30分钟轮换一次。另一个临时解决方案是使用pm2 flush运行crontab (删除所有日志)。首先在终端中运行crontab -e,然后将以下行添加到文件中:

代码语言:javascript
复制
*/30 * * * * pm2 flush

如果你有一个生成大量日志的特定应用,你也可以用pm2 flush your_app_name刷新一个特定的应用。如果您不擅长记住cron计时语法是如何工作的(像我一样),您可以使用this site

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48058442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档