温馨提示×

如何查看Linux Nodejs日志

小樊
41
2026-08-28 23:54:20
栏目: 编程语言

在 Linux 上查看 Node.js 日志,通常取决于你的部署方式、日志写入位置以及是否使用进程管理工具。下面按常见场景给你一个完整速查表。


一、最基础:直接运行 Node.js(stdout / stderr)

如果你是这样启动的:

node app.js

那么日志默认输出到 终端(stdout / stderr)

查看方式

  • 当前终端直接看
  • 或重定向到文件:
node app.js > app.log 2>&1

查看日志:

tail -f app.log

二、使用 PM2(最常见 ✅)

如果你用 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 容器中运行 Node.js

查看容器日志

docker logs 容器ID

实时查看

docker logs -f 容器ID

查看最近日志

docker logs --tail 100 容器ID

✅ 前提是 Node.js 日志输出到 stdout / stderr(推荐做法)


四、systemd 服务(服务器原生部署)

如果 Node.js 是通过 systemd 启动的:

查看日志

journalctl -u your-service-name

实时查看

journalctl -u your-service-name -f

查看最近日志

journalctl -u your-service-name -n 100

五、日志写入文件(Winston / Pino 等)

很多项目使用日志库:

winston / pino / log4js

常见日志目录

logs/
/var/log/node/
/var/log/app/

查看方式

tail -f logs/app.log

或:

less logs/app.log

六、排查 Node.js 崩溃日志

PM2

pm2 logs
pm2 list

查看异常退出

dmesg | tail
journalctl -xe

七、实战常用组合(推荐)

实时查看 + 过滤错误

tail -f app.log | grep ERROR

查看最近 500 行

tail -n 500 app.log

八、快速判断你现在属于哪种

你可以回答这 3 个问题,我可以精确告诉你怎么查:

  1. ✅ 用 pm2 / docker / systemd / 直接 node app.js
  2. ✅ Node.js 是前台运行还是后台运行?
  3. ✅ 有没有用 winston / pino / log4js

✅ 推荐最佳实践(总结)

  • ✅ 日志输出到 stdout
  • ✅ 用 PM2 / Docker
  • ✅ 由外部环境(PM2 / Docker / systemd)接管日志

如果你愿意,可以把你的 启动方式或配置文件贴出来,我可以直接告诉你日志在哪、怎么查。

0