在 Linux 上查看 Node.js 日志,通常取决于你的部署方式、日志写入位置以及是否使用进程管理工具。下面按常见场景给你一个完整速查表。
如果你是这样启动的:
node app.js
那么日志默认输出到 终端(stdout / stderr)。
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 --tail
~/.pm2/logs/
常见文件:
app-name-out.log # 标准输出
app-name-error.log # 错误输出
docker logs 容器ID
docker logs -f 容器ID
docker logs --tail 100 容器ID
✅ 前提是 Node.js 日志输出到 stdout / stderr(推荐做法)
如果 Node.js 是通过 systemd 启动的:
journalctl -u your-service-name
journalctl -u your-service-name -f
journalctl -u your-service-name -n 100
很多项目使用日志库:
winston / pino / log4js
logs/
/var/log/node/
/var/log/app/
tail -f logs/app.log
或:
less logs/app.log
pm2 logs
pm2 list
dmesg | tail
journalctl -xe
tail -f app.log | grep ERROR
tail -n 500 app.log
你可以回答这 3 个问题,我可以精确告诉你怎么查:
pm2 / docker / systemd / 直接 node app.js?winston / pino / log4js?如果你愿意,可以把你的 启动方式或配置文件贴出来,我可以直接告诉你日志在哪、怎么查。