温馨提示×

Linux中JS日志如何定位

小樊
44
2026-10-08 10:54:36
栏目: 编程语言

在 Linux 环境下定位 JS(JavaScript)日志,通常取决于 JS 运行在哪里(浏览器 / Node.js / 前端构建产物)。下面按场景系统说明。


一、Node.js 服务端 JS 日志定位

1. 查看应用自身日志

常见方式:

# 直接前台运行
node app.js

# 后台运行(nohup)
nohup node app.js > app.log 2>&1 &

# 查看日志
tail -f app.log

2. 使用 PM2(最常见)

pm2 logs
pm2 logs appName
pm2 logs --lines 100

3. 查找日志文件位置

find / -name "*.log" 2>/dev/null | grep node

或查看代码中 winston / pino / log4js 配置路径。

4. 系统级日志

journalctl -u your-node-service
journalctl -f

二、浏览器端 JS 日志(前端)

Linux 服务器上无法直接看到浏览器 console,只能:

1. 前端错误上报

  • Sentry
  • 自建日志接口(fetch('/log'))

2. Nginx / 网关层日志

tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log

3. Source Map 定位

  • 构建时生成 *.map
  • 用 Sentry / Chrome DevTools 还原报错行号

三、静态 JS 文件加载问题

1. 检查是否 404

grep "GET /static" /var/log/nginx/access.log

2. 文件是否存在

ls -l /var/www/html/static/js/

四、快速定位 JS 报错思路(通用)

  1. 确认 JS 在哪运行
    • Node.js → 看进程日志
    • 浏览器 → 看前端上报 / Nginx
  2. 确认日志级别
    • error / warn / info
  3. 搜索关键字
grep -R "TypeError" /var/log/
  1. 时间定位
grep "2026-01-15 10:" app.log

五、常见坑

  • console.log 在生产被禁用
  • 异步错误未 catch
  • 日志被重定向但路径错误
  • Docker 容器内日志未挂载

如果你能补充:

  • ✅ JS 是 Node / 浏览器 / Electron
  • ✅ 用什么运行(PM2 / Docker / Nginx)
  • ✅ 报错示例

我可以给你精确命令和排查路径。

0 踩