在 Debian 系统上查看 Node.js 日志,取决于你如何运行 Node.js。下面按常见场景给你一个完整说明。
如果你是用 systemd 管理 Node.js 服务(如用 pm2、systemctl 启的服务):
journalctl -u your-node-service-name -f
示例:
journalctl -u node-app -f
常用参数:
-f:实时跟踪日志--since "2025-01-01":指定时间-n 100:最近 100 行pm2 logs
查看指定应用:
pm2 logs app-name
实时查看:
pm2 logs --lines 100
查看错误日志:
pm2 logs --err
PM2 日志默认位置:
~/.pm2/logs/
node app.js
日志直接输出在终端
node app.js > app.log 2>&1 &
查看日志:
tail -f app.log
docker logs container_name -f
如果你 Node.js 后面有 Nginx:
/var/log/nginx/access.log
/var/log/nginx/error.log
查看:
tail -f /var/log/nginx/error.log
console.log('hello');
→ 输出到 stdout(systemd / pm2 / docker logs)
检查代码中是否配置了文件路径,例如:
{ filename: '/var/log/node/app.log' }
查看:
tail -f /var/log/node/app.log
# 查看 Node 进程
ps aux | grep node
# 查看端口占用
ss -lntp | grep node
# 查看系统日志
journalctl -xe
| 运行方式 | 查看方式 |
|---|---|
| systemd | journalctl -u 服务名 |
| PM2 | pm2 logs |
| nohup / 直接运行 | tail -f 日志文件 |
| Docker | docker logs |
| Nginx 代理 | /var/log/nginx/ |
如果你愿意,可以告诉我:
我可以给你精确到命令级别的解决方法。