温馨提示×

debian下nodejs日志怎么读

小樊
42
2026-09-07 07:01:27
栏目: 编程语言

在 Debian 下查看 Node.js 日志,取决于你的 Node.js 是如何运行的(直接命令、systemd、PM2、Docker 等)。下面按常见情况说明。


一、Node.js 直接运行(前台 / nohup)

1. 前台运行

node app.js

日志直接输出在终端

2. 重定向到文件

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   # 过滤错误

二、使用 systemd(推荐生产环境)

如果 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(非常常见)

查看所有应用:

pm2 list

查看日志:

pm2 logs

查看某个应用:

pm2 logs app-name

实时跟踪:

pm2 logs --lines 200

日志文件位置:

~/.pm2/logs/

四、Docker 中运行 Node.js

docker logs container_name

实时:

docker logs -f container_name

最近 100 行:

docker logs --tail 100 container_name

五、Node.js 自身日志位置说明

Node.js 默认不会自动写日志文件,除非你在代码里写:

console.log()
console.error()

或使用了日志库:

  • winston
  • pino
  • bunyan

这些通常会配置日志路径,例如:

/var/log/node/app.log

六、常见排查命令(通用)

# 查看进程
ps aux | grep node

# 查看端口
ss -tunlp | grep node

# 查看系统日志
dmesg | tail

如果你愿意,可以告诉我:

  • Node.js 是怎么启动的(命令 / systemd / PM2 / Docker)
  • 报错内容或日志片段

我可以帮你精准分析日志问题

0