2015-09-21 33 views
1

我使用PM2来管理节点进程,我尝试在重新启动之前删除每个节点的pid文件,但似乎每次都不行。节点在重启之前如何删除pid文件?

这是我的代码:

process.on('SIGTERM', function() { 
    fs.unlink('./log/' + process.pid); 
}); 

有时它的工作原理确定,有时一些老pid文件依然存在。

回答

1

SIGTERM可能不是终止您的应用程序的唯一信号。你可以尝试这样的事情:

var signals = ['SIGHUP', 'SIGINT', 'SIGQUIT', 'SIGABRT', 'SIGTERM']; 

signals.forEach(function (signal) { 
    process.on(signal, function() { 
    fs.unlink('./log/' + process.pid); 
    }); 
});