温馨提示×

Debian JS日志怎么分析

小樊
45
2026-08-11 22:00:59
栏目: 编程语言

Debian 系统上分析 JS(JavaScript)日志,要先明确 JS 是运行在哪里的。不同场景,日志位置和分析方式差别很大。下面按常见场景给你一个实用指南。


一、先确认:JS 日志在哪里?

1️⃣ Node.js 服务(最常见)

如果是 Node.js 后端服务(如 Express、NestJS、Koa 等):

常见日志位置

/var/log/myapp/
/var/log/node/
$HOME/.pm2/logs/
/var/log/nginx/access.log
/var/log/nginx/error.log

也可能是:

  • stdout / stderr(systemd / pm2 / docker)
  • 自定义 logger(winston、pino、bunyan)

二、Node.js 日志分析(重点)

1️⃣ 查看 systemd 管理的 Node 服务日志

journalctl -u your-node-service -f

查看历史:

journalctl -u your-node-service --since "2025-01-01" --until "2025-01-10"

2️⃣ PM2 运行的 Node 服务

pm2 logs
pm2 logs app-name
pm2 logs --lines 200

错误日志:

pm2 logs --err

3️⃣ 直接查看日志文件

tail -f /var/log/myapp/error.log
less /var/log/myapp/combined.log

三、常见 JS 错误日志怎么看?

✅ 典型 Node.js 错误

TypeError: Cannot read properties of undefined
ReferenceError: xxx is not defined
Error: connect ECONNREFUSED 127.0.0.1:3306

重点关注:

  • Error 类型
  • stack trace(调用栈)
  • 发生时间
  • 请求 ID / trace ID

四、日志分析常用命令(非常实用)

1️⃣ 查找 JS 错误

grep -i "error" /var/log/myapp/*.log

2️⃣ 查找 JS 异常

grep -E "TypeError|ReferenceError|Exception" app.log

3️⃣ 按时间过滤

grep "2025-01-10 14:" app.log

4️⃣ 统计错误数量

grep -c "Error" app.log

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

如果是 前端 JS 报错(不是 Debian 本身的问题):

1️⃣ 浏览器控制台

  • F12 → Console
  • Network → JS 文件加载失败

2️⃣ 前端错误收集

常见方案:

  • Sentry
  • 自建 error log API

前端错误 不会出现在 Debian 系统日志里


六、Nginx 反向代理下的 JS 日志

1️⃣ Nginx 日志

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

2️⃣ 分析接口 500 / 404

awk '{print $9}' access.log | sort | uniq -c | sort -nr

七、推荐的分析工具

小项目

  • grep
  • awk
  • less
  • journalctl

中大型项目

  • PM2
  • Winston / Pino
  • ELK(Elasticsearch + Logstash + Kibana)
  • Grafana Loki

八、快速排查流程(实战)

  1. 确认 JS 是哪类(Node / 前端)
  2. 找到日志位置
  3. tail -f 实时看
  4. 搜索 Error / Exception
  5. 结合时间 + 请求路径定位问题

九、如果你愿意,我可以更具体帮你

你可以直接贴:

  • JS 报错日志(脱敏)
  • 服务运行方式(PM2 / systemd / Docker)
  • Debian 版本

我可以 直接帮你读懂日志并给出解决方案

0