在 Ubuntu 上查看 Node.js 日志的方法,取决于你如何运行 Node.js 应用以及日志输出到哪里。下面按常见情况说明:
如果你是直接在终端运行:
node app.js
日志会直接打印在终端。
查看方式:
node app.js > app.log 2>&1
tail -f app.log
如果你用 PM2:
pm2 logs
查看某个应用:
pm2 logs appname
查看日志文件位置:
pm2 describe appname
一般在:
~/.pm2/logs/
实时查看:
pm2 logs --lines 100
如果你用 systemd 启动 Node.js:
sudo journalctl -u yourapp.service
实时查看:
sudo journalctl -u yourapp.service -f
只看最近 100 行:
sudo journalctl -u yourapp.service -n 100
yourapp.service是你自己的服务名
docker logs container_name
实时:
docker logs -f container_name
如果代码里写了:
fs.appendFileSync('/var/log/node/app.log', msg)
查看:
tail -f /var/log/node/app.log
# 实时看文件
tail -f logfile.log
# 搜索错误
grep -i error logfile.log
# 查看进程
ps aux | grep node
如果你愿意,可以告诉我:
我可以给你更精确的命令。