PM2实时查看Node.js项目的输出日志!

一、问题简介

只要通过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            specify out log file
-e --error             specify error log file
--time                       prefix logs with standard formated timestamp
--log-date-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 
9、日志文件的大小,以及日志保存多久等功能需要额外插件支持:
pm2 install pm2-logrotate

三、参考文档

你可能感兴趣的:(PM2实时查看Node.js项目的输出日志!)