如何让pm2进程在停止/重新启动后观看?

Sam*_*rko 1 node.js pm2

我的 pm2 进程开始使用它们的默认生态系统文件结构:

ecosystem.config.js

module.exports = {
    apps: [{
        env: {
            NODE_ENV: "development"
        },
        error_file: "./logs/error.log",
        ignore_watch: ["logs", "node_modules"],
        log_date_format: "YYYY-MM-DD HH:mm:ss Z",
        name: "my-app",
        out_file: "./logs/output.log",
        script: "./server.js",
        watch: true
    }]
}
Run Code Online (Sandbox Code Playgroud)

我开始这个过程pm2 start ecosystem.config.js并且工作正常,应用程序在文件更改时重新加载。

但是当我用 停止进程pm2 stop ecosystem.config.js,然后用 再次启动它时pm2 start ecosystem.config.js,pm2 不会监视文件,尽管显示列watchingenabled.

再次启动进程并让 watch 工作的唯一方法是删除 pm2 进程,然后重新启动一个新进程。

我错过了制作手表stoprestart使用手表的东西吗?

谢谢。

Sam*_*rko 5

PM2手表及重启文档有了答案(必须掩盖了它的第一次读):

使用 --watch 重新启动将切换 watch 参数。

看起来--watch在已经存在的 pm2 实例上省略该标志不会切换ecosystem.config.js文件中的 watch 参数。watch 参数仅在初始流程执行时切换,而不会在后续流程执行时切换。

所以停止这个过程,然后重新开始pm2 start ecosystem.config.js --watch就行了!