今天在用pm2部署时遇到一个问题,修改pm2配置文件后不生效。个人配置文件用的是json格式的(ecosystem.json),增长日志路径后重启,日志路径仍是原来的路径。node
//ecosystem.json 配置文件
{
"name" : "djxt",
"script" : "./bin/www.js",
"cwd" : "./",
"watch": [
"bin",
"routers"
],
"ignore_watch" : [
"node_modules",
"logs",
"public"
],
"watch_options": {
"followSymlinks": false
},
"env": {
"NODE_ENV": "production"
},
"env_test": {
"NODE_ENV": "testing"
}
}
复制代码
上面的代码是刚开始的配置,开启pm2后,这时执行 pm2 list 可看到以下:json
接下来增长日志路径bash
//ecosystem.json 配置文件
{
"name" : "djxt",
"script" : "./bin/www.js",
"cwd" : "./",
"watch": [
"bin",
"routers"
],
"ignore_watch" : [
"node_modules",
"logs",
"public"
],
"watch_options": {
"followSymlinks": false
},
"env": {
"NODE_ENV": "production"
},
"env_test": {
"NODE_ENV": "testing"
},
"error" : "./logs/app-err.log", //错误日志路径
"output" : "./logs/app-out.log", //正常日志路径
"merge_logs": true, // 设置追加日志而不是新建日志
"log_date_format": "YYYY-MM-DD HH:mm:ss" // 指定日志文件的时间格式
}
复制代码
注意,这时候执行 pm2 reload 0 后配置是不会生效的,须要将pm2进程杀掉从新开启才能生效。 执行 pm2 delete 0 (这里的0是对呀pm2列表的id,若是要将所有进程关掉,能够把0改为all),再从新开启pm2进程,以下图:app