我运行一个Ubuntu服务器,因为pm2日志占用了16GB,服务器突然满了。我尝试了pm2 flush。但这只清除了占用4GB的文件夹。
pm2 flush
作为root用户,“IdePM2”文件夹被清除,但日志文件夹没有清除。作为我自己的用户,文件夹被清除,但用户名错误。这里显示了以root和admin用户身份运行pm2 flush。
我该如何清除它?
kgsdhlau1#
您应该尝试pm2 flush <app_name>,它将从.pm2/logs中删除默认输出和错误日志上述命令不会刷新指定app_name的合并日志
pm2 flush <app_name>
vuv7lop32#
希望我还不算太晚。好吧,长话短说。问题出在代码内部,传递的参数没有正确实现,无法处理它们想要的任何逻辑比较或验证,因此,日志没有被刷新。我创建了一个PR,你可以访问here,我认为维护人员需要一些时间来审查拉,它甚至可能根本没有得到合并。无论如何,如果你想在你的系统中应用和测试更新后的代码,你需要找到你的PM2包文件的位置。为此,只需根据安装pm2时使用的包管理器运行命令。
sudo
Yarn=〉yarn global dir净每分钟=〉npm root -g然后,将cd添加到命令返回的目录路径中。然后cd到<..PATH..>/node_modules/pm2/lib/API。你应该看到一个名为LogManagement.js的文件。使用sudo cp复制该文件。这样如果有任何问题,你仍然可以返回。接下来,转到这个github link,用复制的代码替换整个LogManagement.js。完成!您应该能够像往常一样运行pm2 flush "My App"或类似pm2 flush 1的东西。
yarn global dir
npm root -g
cd
<..PATH..>/node_modules/pm2/lib/API
LogManagement.js
sudo cp
pm2 flush "My App"
pm2 flush 1
2条答案
按热度按时间kgsdhlau1#
您应该尝试
pm2 flush <app_name>
,它将从.pm2/logs中删除默认输出和错误日志上述命令不会刷新指定app_name的合并日志vuv7lop32#
希望我还不算太晚。好吧,长话短说。
问题出在代码内部,传递的参数没有正确实现,无法处理它们想要的任何逻辑比较或验证,因此,日志没有被刷新。
我创建了一个PR,你可以访问here,我认为维护人员需要一些时间来审查拉,它甚至可能根本没有得到合并。
无论如何,如果你想在你的系统中应用和测试更新后的代码,你需要找到你的PM2包文件的位置。
为此,只需根据安装pm2时使用的包管理器运行命令。
sudo
安装pm2,您也必须使用sudo
运行这些命令。*Yarn=〉
yarn global dir
净每分钟=〉
npm root -g
然后,将
cd
添加到命令返回的目录路径中。然后
cd
到<..PATH..>/node_modules/pm2/lib/API
。你应该看到一个名为LogManagement.js
的文件。使用sudo cp
复制该文件。这样如果有任何问题,你仍然可以返回。接下来,转到这个github link,用复制的代码替换整个
LogManagement.js
。完成!您应该能够像往常一样运行
pm2 flush "My App"
或类似pm2 flush 1
的东西。