node.js - 禁用 PM2 日志记录(.pm2/pm2.log NOT .pm2/logs)

标签 node.js logging pm2

我必须在磁盘空间非常有限的设备上运行 PM2 进程,因此我需要禁用所有日志记录,否则设备将在几天后耗尽空间。

我正在使用:

"out_file": "/dev/null",
"error_file": "/dev/null"

它阻止 PM2 为进程创建日志。然而,PM2 仍然在 .pm2/pm2.log 中创建了另一个日志文件

pm2.log 的大小可以增长到 9Mb,这对于设备来说很大。 有什么办法可以阻止 PM2 创建 pm2.log 吗?或者至少可以通过某种方式自动清理日志文件。

最佳答案

我在 https://github.com/Unitech/pm2/issues/2921 打开一个问题

事实证明,pm2.log在当前版本的PM2(2.4.6)中无法禁用,但PM2的维护者表示将在未来的更新中添加此功能。

现在,我使用以下代码来清理日志文件:

var cmd_flush ='pm2 flush';
var exec = require('child_process').exec;
exec(cmd_flush ,function(error){
        debugLog('error: ' + error);
});

它很慢,但至少它有效。

关于node.js - 禁用 PM2 日志记录(.pm2/pm2.log NOT .pm2/logs),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44323820/

相关文章:

xml - 如何使用 Node.js 从 XML 字符串中获取值

javascript - 切换到基于 promise 的数据库,现在我的登录完全损坏了

node.js - SlimerJS extensions.getAddons.cache.enabled

node.js - 使用 Node v6.x 和 pm2 导致 koa-ejs 错误

javascript - 执行配置文件 app.json/process.yml 时找不到 Pm2 脚本

javascript - 是否可以在子模块的全局命名空间中保存要求(fs/http/等)?

node.js - 使用 Node.js 作为简单的 Web 服务器

java - log4j 在哪里/如何查找 log4j.properties 文件?

go - 高并发下Go `net/http`的一些困惑

.net - 如何通过 clickonce 使用 SQLITE 正确部署应用程序