在 Linux 上查看 Node.js 日志,取决于你是怎么启动和运行 Node.js 的。下面按常见场景给你一个速查表。
如果你是这样启动的:
node app.js
# 直接看终端
如果后台运行:
node app.js > app.log 2>&1 &
查看日志:
tail -f app.log
如果你用 PM2 管理 Node.js 进程(最常见于生产环境):
pm2 logs
查看指定应用:
pm2 logs app-name
实时查看:
pm2 logs --lines 100
日志默认位置:
~/.pm2/logs/
如果你是 systemd 服务:
journalctl -u your-service-name -f
或:
journalctl -u node-app -f
查看启动日志:
journalctl -u your-service-name --since today
docker logs 容器ID或名称
实时查看:
docker logs -f 容器名
console.logwinstonpinomorgan(HTTP 请求)# 如果输出到文件
tail -f logs/app.log
Node.js 本身没问题,但访问异常时还需要看 Nginx:
# 错误日志
tail -f /var/log/nginx/error.log
# 访问日志
tail -f /var/log/nginx/access.log
ps -ef | grep node
lsof -p 进程ID
find / -name "*.log" 2>/dev/null | grep node
✅ 使用 PM2 + 日志文件
✅ 或 systemd + journalctl
✅ 日志一定要区分 stdout / stderr
如果你愿意,可以告诉我:
我可以直接帮你定位到具体日志文件路径。