我有一个在 pm2 上运行的 nodejs 应用程序,我需要能够在发生崩溃/重启时发送电子邮件通知。我的想法是监控应用程序是否崩溃并从 pm2-health 触发邮件操作。pm2-health 模块的文档在这里,但我无法使用它来发送电子邮件警报。谁能解释如何为此目的使用它?
PS:另外,如果你能解释一下 gmail 的 SMTP 配置,那就太好了。(我已经根据这个将 postfix 配置为使用 gmail smtp ,它适用于测试 gmail,但不适用于 pm2-health)小智 6
这就是我如何让 pm2-health 与我的 Gmail 帐户一起工作:
pm2 install pm2-health
vim ~/.pm2/module_conf.json
{
"pm2-health": {
"smtp": {
"host": "smtp.gmail.com",
"port": 465,
"user": "EXAMPLE_sender@gmail.com",
"password": "PASSWORD",
"secure": true,
"disabled": false
},
"mailTo": "NOTIFICATION_RECIPIENT_EMAIL_ADDRESS",
"replyTo": "EXAMPLE_SENDER@gmail.com",
"events": [
"exit"
],
"exceptions": true,
"messages": true,
"messageExcludeExps": [],
"metric": {},
"metricIntervalS": 60,
"aliveTimeoutS": 300,
"addLogs": false,
"appsExcluded": [],
"snapshot": {
"url": "",
"token": "",
"auth": {
"user": "",
"password": ""
},
"disabled": false
}
},
"module-db-v2": {
"pm2-health": {}
}
}
Run Code Online (Sandbox Code Playgroud)
pm2 restart pm2-health
通过重新启动 PM2 管理的 Node 进程之一来测试它。您应该会收到一封关于该事件的电子邮件。