Javascript 退出时node.js pm2

Javascript 退出时node.js pm2,javascript,node.js,pm2,Javascript,Node.js,Pm2,我正在使用pm2运行节点应用程序。我必须在关闭应用程序之前保存数据。此代码在shell中运行良好: process.on('exit', function(){ log.debug('exit'); }); process.on('SIGINT', function(){ log.debug('SIGINT'); }); process.on('uncaughtException', function(){ log.debug('uncaughtException')

我正在使用pm2运行节点应用程序。我必须在关闭应用程序之前保存数据。此代码在shell中运行良好:

process.on('exit', function(){
    log.debug('exit');
});

process.on('SIGINT', function(){
    log.debug('SIGINT');
});

process.on('uncaughtException', function(){
    log.debug('uncaughtException');
});

当我使用“pm2停止”停止应用程序时,代码不起作用。我认为pm2杀死了这个过程

SIGINT
通常在用户调用关机后触发(例如Ctrl+C)。假设
pm2
触发突然停机,则不会触发
SIGINT

相反,您应该监听终止信号
SIGTERM
,它应该涵盖这两种情况

process.on('SIGTERM', function() {
    // clean up
});