在 Debian 上,Node.js 日志的存放位置取决于你是怎么运行 Node.js 的,常见情况如下:
如果你是用 systemd 启动 Node.js(如 systemctl start myapp):
journalctl -u 服务名
例如:
journalctl -u myapp
journalctl -u myapp -f # 实时查看
/var/log/journal/
不会直接生成
.log文件,除非你额外配置
如果你是 PM2 启动的:
~/.pm2/logs/
或:
/root/.pm2/logs/
/home/用户名/.pm2/logs/
pm2 logs
pm2 logs app名称
pm2 start app.js --log /var/log/myapp.log
docker logs 容器名
/var/lib/docker/containers/
(不推荐直接看)
如果你在代码里写了:
fs.writeFileSync('/var/log/myapp.log', 'hello')
那么就在:
/var/log/myapp.log
✅ 需要目录权限:
sudo chown -R 用户 /var/log/myapp
| 用途 | 路径 |
|---|---|
| 系统日志 | /var/log/syslog |
| 启动日志 | /var/log/boot.log |
| 服务日志 | /var/log/<服务名>/ |
| Nginx | /var/log/nginx/ |
| PM2 | ~/.pm2/logs/ |
ps aux | grep node
然后看:
pm2systemd--log 参数如果你愿意,可以把 启动方式(systemd / pm2 / docker / 直接 node)贴出来,我可以直接告诉你准确路径 + 查看命令。