我的 Node 应用程序中有一些有用的日志记录,我写入 console.log
node server.js >> /var/log/nodeserver.log 2>&1
但是,在 pm2 下尝试相同操作时:
pm2 start server.js >> /var/log/pm2server.log 2>&1
日志文件只显示pm2启动信息
是否可以使用 pm2 进行应用程序日志记录?在他们的页面上,他们讨论了日志记录,并显示了带有 “来自 echo.js 的日志消息”
之类的文本的图像,但我看不到将自定义信息放入 pm2 日志中。
最佳答案
当使用 pm2 运行时,您的应用程序日志将驻留在 $HOME/.pm2/logs
中,如 here 所述.使用输出 console.log('test')
index.js
文件在本地验证这一点
$ pm2 start index.js
[PM2] Spawning PM2 daemon
[PM2] PM2 Successfully daemonized
[PM2] Starting index.js in fork_mode (1 instance)
[PM2] Done.
┌──────────┬────┬──────┬───────┬────────┬─────────┬────────┬────────────┬──────────┐
│ App name │ id │ mode │ pid │ status │ restart │ uptime │ memory │ watching │
├──────────┼────┼──────┼───────┼────────┼─────────┼────────┼────────────┼──────────┤
│ index │ 0 │ fork │ 36976 │ online │ 0 │ 0s │ 9.258 MB │ disabled │
└──────────┴────┴──────┴───────┴────────┴─────────┴────────┴────────────┴──────────┘
Use `pm2 show <id|name>` to get more details about an app
注意我在这里看不到 console.log
输出,但是,如果我导航到 $HOME/.pm2/logs
我看到了
logs $ ls
index-error-0.log index-out-0.log
logs $ cat index-out-0.log
test
关于node.js - pm2 下的自定义日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32590297/