在 Debian 系统里“导出 JS 日志”要看日志是从哪里来的,常见有下面几种情况。你按需对照即可。
如果你是这样启动的:
node app.js
可以导出到文件:
node app.js > app.log 2>&1
实时查看并导出:
node app.js 2>&1 | tee app.log
如果用了 PM2:
查看日志路径:
pm2 logs
pm2 describe <app_name>
导出日志文件(PM2 默认在):
~/.pm2/logs/
打包导出:
tar czf pm2-logs.tar.gz ~/.pm2/logs/
如果是 systemd 服务:
journalctl -u your-node-service.service > node.log
实时导出:
journalctl -u your-node-service.service -f
浏览器 JS 日志不在 Debian 系统里,需要:
在 JS 里:
console.log = (...args) => {
fetch('/log', { method: 'POST', body: JSON.stringify(args) });
};
后端 Node / Nginx 接收并写文件。
cat /var/log/nginx/access.log > js-access.log
grep "\.js" /var/log/nginx/access.log > js.log
docker logs <container_id> > js.log
实时:
docker logs -f <container_id>
| 场景 | 导出方式 |
|---|---|
| Node 直接运行 | > log 2>&1 |
| PM2 | ~/.pm2/logs/ |
| systemd | journalctl |
| 浏览器 JS | 控制台 / 上报 |
| Docker | docker logs |
如果你能告诉我:
我可以给你精确的一条命令。