首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >几个小时后pm2守护进程就死了

几个小时后pm2守护进程就死了
EN

Stack Overflow用户
提问于 2019-04-29 02:17:40
回答 1查看 1.7K关注 0票数 0

我有一个Node.js/Express应用程序,它实现了一组REST,我正在尝试使用pm2来管理它的部署。该应用程序启动良好(使用pm2 start ecosystem.config.js),并保持几个小时可用,但pm2守护进程最终总是在日志中没有任何错误。

几个注意事项:

  • 我运行在一个CentOS 7共享主机环境中。
  • /var/log目录为空,journalctl不返回任何条目。
  • 我已经证实系统没有重新启动。
  • 我安装的唯一pm2模块是pm2-logrotate
  • 我正在捕获和记录SIGINTSIGTERMSIGQUITSIGABRT信号,但是这个逻辑似乎从未被击中(如果我运行pm2 stop的话)。
  • 如果我运行pm2 list,它只会重新启动守护进程,并显示一个空的应用程序列表。

这是我的ecosystem.config.js

代码语言:javascript
复制
module.exports = {
  apps: [
    {
      kill_timeout: 60000,
      listen_timeout: 10000,
      log: 'logs/my-app.log',
      name: 'my-app',
      script: 'dist/index.js',
      wait_ready: true,

      instances: 1,
      autorestart: true,
      watch: false,
      max_memory_restart: '1G',
      env: {
        NODE_ENV: 'development'
      },
      env_production: {
        NODE_ENV: 'production'
      }
    }
  ]
};

这是pm2.log

代码语言:javascript
复制
2019-04-24T19:20:24: PM2 log: ===============================================================================
2019-04-24T19:20:24: PM2 log: --- New PM2 Daemon started ----------------------------------------------------
2019-04-24T19:20:24: PM2 log: Time                 : Wed Apr 24 2019 19:20:24 GMT-0700 (Mountain Standard Time)
2019-04-24T19:20:24: PM2 log: PM2 version          : 3.5.0
2019-04-24T19:20:24: PM2 log: Node.js version      : 10.5.0
2019-04-24T19:20:24: PM2 log: Current arch         : x64
2019-04-24T19:20:24: PM2 log: PM2 home             : /home/myuser/.pm2
2019-04-24T19:20:24: PM2 log: PM2 PID file         : /home/myuser/.pm2/pm2.pid
2019-04-24T19:20:24: PM2 log: RPC socket file      : /home/myuser/.pm2/rpc.sock
2019-04-24T19:20:24: PM2 log: BUS socket file      : /home/myuser/.pm2/pub.sock
2019-04-24T19:20:24: PM2 log: Application log path : /home/myuser/.pm2/logs
2019-04-24T19:20:24: PM2 log: Process dump file    : /home/myuser/.pm2/dump.pm2
2019-04-24T19:20:24: PM2 log: Concurrent actions   : 2
2019-04-24T19:20:24: PM2 log: SIGTERM timeout      : 1600
2019-04-24T19:20:24: PM2 log: ===============================================================================
2019-04-24T19:20:24: PM2 log: App [pm2-logrotate:0] starting in -fork mode-
2019-04-24T19:20:24: PM2 log: App [pm2-logrotate:0] online
2019-04-24T19:20:24: PM2 log: App [my-app:1] starting in -fork mode-
2019-04-24T19:20:28: PM2 log: App [my-app:1] online

这是pm2-logrotate-out.log

代码语言:javascript
复制
"/home/myuser/.pm2/logs/my-app-out-1__2019-04-25_00-00-00.log" has been created
"/home/myuser/my-app/logs/my-app-1__2019-04-25_00-00-00.log" has been created

知道是什么导致了这个问题吗?或者如何进一步调试它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-03 02:03:55

结果发现,这是由我的主机提供商施加的资源限制造成的。我仍然不明白为什么没有任何记录来表明发生了什么,但我标记这是答案,因为我已经找到了根本原因。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55896215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档