PM2 监控 Spring Boot 项目运行

更多 PM2 的用法介绍请参考: PM2简易使用手册 - 掘金

由于 PM2 通常都用于 node 应用, 所以 exec_mode 应写为 fork, 其中最重要的是 args, -jar 和 jar 包所在的位置应该注明, 如果需要提供其他参数, 也要在 args 中一并注明.

假设创建如下所示的 fz.json, 使用命令 pm2 start fz.json 即可运行 fz.jar. 使用命令 tail -f /home/imzhizi/log/fz-out.log 还可以查看运行日志.

{
    "name": "fz",
    "script": "/usr/bin/java",
    "args": [
        "-jar",
        "/home/imzhizi/tcm-fz/target/fz.jar",
        "--spring.profiles.active=prod"
    ],
    "exec_interpreter": "",
    "exec_mode": "fork",
    "error_file" : "/home/imzhizi/log/fz-err.log",
    "out_file"   : "/home/imzhizi/log/fz-out.log"
}

几点经验:

  1. 通过 json 启动之后, 就可以直接使用 json 文件中的名称来对项目进行控制, 如 pm2 stop name;
  2. 每次重新打包之后, 使用 pm2 restart name 就可以更新项目;
  3. 如果修改了 json 文件, 就无法通过 restart 更新项目了, 必须要先 pm2 del name 然后再重新 pm2 start xx.json.
posted @ 2019-07-23 09:24  质子  阅读(...)  评论(...编辑  收藏