PM2 日志文件的默认位置是啥?

Posted

技术标签:

【中文标题】PM2 日志文件的默认位置是啥?【英文标题】:What is the default location of PM2 log files?PM2 日志文件的默认位置是什么? 【发布时间】:2019-09-13 15:08:15 【问题描述】:

我正在尝试找出 PM2 默认保存日志文件的位置?

我正在使用 Linux Ubuntu 16.04 服务器,并已使用 npm i pm2 -g 在全球范围内安装它。

【问题讨论】:

【参考方案1】:

pm2 默认将日志保存到$HOME/.pm2/logs/XXX-err.log,其中XXX 是您的pm2 app name

【讨论】:

为什么pm2不保存日志日期和时间?我在 ~/.pm2/logs/app-err.log 中看不到它 pm2 也保存了时间戳,需要先运行命令:pm2 start app.js --time 然后可以通过运行命令:pm2 logs --format 或 pm2 logs 显示带有前缀的时间戳的日志--json --format 和 --json 都不适合我。我试过pm2 start api --time,然后pm2 logs api --format,屏幕上没有显示日志 语法错误:从以下命令 pm2 logs api --format 中删除您的“应用程序名称” 所以我需要在不使用其名称的情况下启动应用程序?我会试一试。感谢您的帮助! :)【参考方案2】:

我想查看不同进程的日志。为此有一个console-based UI:

pm2 monit

pm2 新手的额外提示:

启动多个,协调,instance per cpu core 与:pm2 start myApp.js -i max 注意集群配置的“js”示例;它对我不起作用。改用“json”。 默认情况下,您需要让用户保持登录状态以保持集群运行 方便的命令: pm2 start all(也停止/删除) pm2 list

【讨论】:

【参考方案3】:

在 shell 中键入 pm2 log,您可以实时查看最后 15 条日志行和最后 15 条错误行的概览。在这些日志行的顶部,显示了您的日志文件的位置。您也可以键入pm2 log --lines 1000 以显示更多行,在本例中为 1000。

$pm2 log
$pm2 log --lines 500

要退出,只需输入ctrl-c

【讨论】:

【参考方案4】:

获取日志文件位置信息(和其他有用信息)的好方法是对正在运行的进程执行“pm2 describe”。您可以使用此方法以标准用户身份运行 pm2,或者将其用作 sudo pm2。

获取进程的名称或id

pm2 list

使用 id# 或名称进行描述

pm2 describe 0

【讨论】:

【参考方案5】:

pm2 对于它运行的每个应用程序都有两种类型的日志文件,一个错误日志文件和一个输出日志文件。

错误日志保存到$HOME/.pm2/logs/XXX-error.log~/.pm2/logs/XXX-error.log

虽然输出日志保存到$HOME/.pm2/logs/XXX-out.log~/.pm2/logs/XXX-access.log

其中 XXX 是您的应用的名称。

【讨论】:

以上是关于PM2 日志文件的默认位置是啥?的主要内容,如果未能解决你的问题,请参考以下文章

pm2日志记录和日志分割

使用pm2常见问题

pm2日志切割 - pm2-logrotate

pm2到底是啥呢?你真的了解吗

logback的日志文件,默认是存放到啥位置

Linux shell脚本按日期 切割pm2日志