Node.js PM2重新启动不工作-dump.PM2被清空

Node.js PM2重新启动不工作-dump.PM2被清空,node.js,centos,pm2,Node.js,Centos,Pm2,我正在尝试将PM2配置为在centos上对简单的node.js服务器进行后台监控。init.d脚本执行,没有错误,但是pm2 list返回一个空列表,并且服务器没有启动 最初,我试图以另一个用户的身份启动该过程(对于那些感兴趣的用户,可以通过修改pm2 init.sh来完成)。但是由于复杂性,我决定首先尝试让它作为root运行 这个问题的奇怪症状是,dump.pm2文件被某个进程清空,因此pm2的复活与此无关。我将pm2设置为在重新启动时运行,如下所示 $ pm2 startup centos

我正在尝试将PM2配置为在centos上对简单的node.js服务器进行后台监控。init.d脚本执行,没有错误,但是
pm2 list
返回一个空列表,并且服务器没有启动

最初,我试图以另一个用户的身份启动该过程(对于那些感兴趣的用户,可以通过修改
pm2 init.sh
来完成)。但是由于复杂性,我决定首先尝试让它作为root运行

这个问题的奇怪症状是,
dump.pm2
文件被某个进程清空,因此pm2的复活与此无关。我将pm2设置为在重新启动时运行,如下所示

$ pm2 startup centos
$ pm2 start /path/to/my/server.js
$ pm2 save
此时,dump.pm2中有一个很大的JSON对象,服务器正在运行。然后,运行:

$ reboot
  ... wait and log back in
$ pm2 list
它又空了,垃圾场也空了。pm2


我不确定清除此文件的过程是什么。我尝试重新安装并重新运行启动脚本,但没有成功。非常感谢您的帮助。

作为临时解决方案,我将转储文件设置为不可变:

$ chattr +i /path/to/my/dump.pm2

这起作用了。虽然不理想,但在我确定dump.pm2文件被清空的原因之前,我将使用它

嘿@Jamie Counsell如果你在这方面有任何进展,请告诉我!我也在使用你的临时解决方案不幸的是,仍然没有进展。我在源代码中查找原因,但我不确定这是PM2、FS还是其他问题。也很难准确跟踪文件何时被触摸(尽管我相信有办法)。你也在Centos吗?也许值得在Github上发布一个问题。我正在使用Raspian(debian针对Raspberry Pi进行了优化)!我会再试一次,如果我找到了解决方案,我会让你知道,否则打开一个问题可能是合适的!这种方法用EACCESS错误填充了我的日志文件,所以我决定将monit和pm2一起使用。彼此彼此。有时我的
~/.pm2/dump.pm2
会突然变为空。已经发生过几次了