乐趣区

关于pm2:PM2实时查看Nodejs项目的输出日志

一、问题简介

只有通过 PM2 启动的 Node.js 我的项目,能够十分不便的查看其输入日志。


二、解决方案
1、常用命令
# 显示所有利用的实时日志
  pm2 logs

# 显示 api 利用的日志
  pm2 logs api

# json 格局显示所有利用的日志
  pm2 logs --json

# 显示 1000 行 big-api 的日志
  pm2 logs big-api --lines 1000
    
# 用仪表盘显示所有利用
  pm2 monit
2、让输入日志加上工夫
pm2 start app.js --time
pm2 restart app --time
3、默认日志的门路
HOME/.pm2/logs
4、查看日志命令的可用选项
pm2 logs -h
5、启动利用时,怎么初始化日志相干信息
pm2 start app.js [OPTIONS]

-l --log [path]              specify filepath to output both out and error logs
-o --output <path>           specify out log file
-e --error <path>            specify error log file
--time                       prefix logs with standard formated timestamp
--log-date-format <format>   prefix logs with custom formated timestamp
--merge-logs                 实用 cluster mode
6、cluster mode 中,让所有过程日志都写进同一个日志
# 命令启动,加上选项
  pm2 start app.js -i max --merge-logs < 具体日志文件 >

# 配置文件中,设置属性:merge_logs: true
7、不须要输入日志
module.exports = {
    apps: [{
        name: 'Business News Watcher',
        script: 'app.js',
        instances: 1,
        out_file: "/dev/null",
        error_file: "/dev/null",
        cron_restart: '0 0 * * *',
        [...]
    }]
}
8、革除日志
# 革除所有利用的日志
  pm2 flush

# 革除 api 利用的日志
  pm2 flush <api>
9、日志文件的大小,以及日志保留多久等性能须要额定插件反对:
pm2 install pm2-logrotate
  • pm2-logrotate – 官网阐明

三、参考文档
  • PM2 实时查看 Node.js 我的项目的输入日志!
退出移动版