在 Debian 下查看 Node.js 日志,取决于你的 Node.js 是如何运行的(直接命令、systemd、PM2、Docker 等)。下面按常见情况说明。
node app.js
日志直接输出在终端。
node app.js > app.log 2>&1
查看日志:
tail -f app.log
常用命令:
cat app.log # 查看全部
less app.log # 分页查看
tail -n 100 app.log # 最后100行
grep ERROR app.log # 过滤错误
如果 Node.js 是通过 systemd 启动的(如 /etc/systemd/system/node-app.service):
journalctl -u node-app.service
实时查看:
journalctl -u node-app.service -f
只看错误:
journalctl -u node-app.service -p err
查看最近 100 行:
journalctl -u node-app.service -n 100
查看所有应用:
pm2 list
查看日志:
pm2 logs
查看某个应用:
pm2 logs app-name
实时跟踪:
pm2 logs --lines 200
日志文件位置:
~/.pm2/logs/
docker logs container_name
实时:
docker logs -f container_name
最近 100 行:
docker logs --tail 100 container_name
Node.js 默认不会自动写日志文件,除非你在代码里写:
console.log()
console.error()
或使用了日志库:
winstonpinobunyan这些通常会配置日志路径,例如:
/var/log/node/app.log
# 查看进程
ps aux | grep node
# 查看端口
ss -tunlp | grep node
# 查看系统日志
dmesg | tail
如果你愿意,可以告诉我:
我可以帮你精准分析日志问题。