温馨提示×

nodejs日志在linux存哪里

小樊
41
2026-10-26 02:27:48
栏目: 编程语言

在 Linux 上,Node.js 本身并不会自动把日志存到某个固定目录,日志存哪里,取决于你(或你的程序/运行方式)是怎么配置的。下面按常见情况说明:


一、Node.js 程序自己写日志

如果你在代码里用了:

console.log('xxx')

或

fs.writeFileSync('/var/log/myapp.log', 'xxx')

那日志位置完全由代码决定。

常见约定目录:

  • /var/log/你的应用名/
  • /opt/你的应用名/logs/
  • 项目目录下的 logs/

二、用 PM2 启动 Node.js(最常见)

如果你用 PM2 管理 Node 服务:

默认日志位置

~/.pm2/logs/

例如:

  • ~/.pm2/logs/app-out.log (标准输出)
  • ~/.pm2/logs/app-error.log (错误输出)

查看日志

pm2 logs
pm2 logs 应用名

自定义日志路径

pm2 start app.js --log /var/log/myapp.log

三、用 systemd 启动 Node.js(服务器部署常见)

如果你是通过 systemd 启动:

查看日志(推荐)

journalctl -u 你的服务名
journalctl -u 你的服务名 -f

如果程序写到文件

日志可能在:

/var/log/你的服务名.log

(看你 service 文件里怎么写)


四、Docker 中运行 Node.js

日志默认在:

docker logs 容器名

或:

/var/lib/docker/containers/

五、Nginx / 反向代理日志(不是 Node 本身)

如果是接口访问日志:

  • /var/log/nginx/access.log
  • /var/log/nginx/error.log

快速排查方法

  1. 看进程怎么启动的
ps -ef | grep node
  1. 看是否在 PM2
pm2 list
  1. 看是否在 systemd
systemctl list-units | grep node

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

  • 你是 本地跑 / 服务器 / Docker
  • 用没用 PM2 / systemd
  • 日志是 console.log 还是写文件

我可以直接帮你定位到具体路径。

0 踩