温馨提示×

debian js日志怎么导出

小樊
37
2026-09-01 05:59:12
栏目: 编程语言

在 Debian 上“导出 JS 日志”通常指把 Node.js 应用日志前端 JS 在浏览器里的日志 保存出来。下面按常见场景说明。


一、Node.js 服务端日志导出

1. 直接重定向到文件

node app.js > app.log 2>&1
  • >:标准输出
  • 2>&1:错误也写入

2. 使用 PM2(推荐)

pm2 logs app --out logs/app.out.log --err logs/app.err.log

或导出历史日志:

pm2 flush
pm2 logs --raw > all.log

3. 用 journalctl(systemd 服务)

如果是 systemd 管理的 Node 服务:

journalctl -u your-node-service.service -e > node.log

实时导出:

journalctl -u your-node-service.service -f

4. 代码中写日志文件

const fs = require('fs');
console.log = (msg) => {
  fs.appendFileSync('app.log', `${new Date()} ${msg}\n`);
};

二、Nginx / Apache 反向代理的 JS 请求日志

如果是前端 JS 报错通过接口上报:

tail -f /var/log/nginx/access.log > js_access.log

三、浏览器端 JS 日志导出(前端)

1. 控制台导出

浏览器按 F12 → Console → 右键 → Save as…

2. 页面内导出

const logs = [];
console.log = (...args) => logs.push(args.join(' '));

function downloadLog() {
  const blob = new Blob([logs.join('\n')], {type:'text/plain'});
  const a = document.createElement('a');
  a.href = URL.createObjectURL(blob);
  a.download = 'js.log';
  a.click();
}

四、Docker 中的 JS 日志

docker logs container_name > js.log 2>&1

如果你能说清楚:

  • Node.js 还是浏览器 JS
  • 是否用 PM2 / Docker / systemd
  • 想要 实时导出还是历史日志

我可以给你更精确的命令。

0