pm2配置文件修改日志路径后不生效

修改日志路径不生效

今天在用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

pm2配置文件
再根据id执行 pm2 log 0 看到id为0的进程日志信息,以下:

pm2日志路径
能够看到这时日志输出的默认路径。

修改pm2配置文件的日志路径

接下来增长日志路径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

pm2配置文件
此时的日志路径已经修改成咱们配置文件里所指定的路径了。
相关文章
相关标签/搜索