温馨提示×

debian怎样分析js日志

小樊
45
2026-09-19 08:07:43
栏目: 编程语言

在 Debian 上“分析 JS 日志”通常分几种场景:浏览器前端 JS 日志Node.js 服务端日志、或者 打包/构建日志。下面按常见情况给你一套实用做法。


一、确认 JS 日志来源

先搞清楚日志是哪来的:

  • 浏览器前端 JS → 看浏览器 Console / 网络请求
  • Node.js 服务端 → 看 stdout、文件、pm2 日志
  • 构建工具(webpack/vite) → 看构建终端输出

二、常见日志位置(Debian)

1. Node.js 应用

# pm2 管理的项目
pm2 logs

# 普通 node 启动
node app.js > app.log 2>&1

# 查看日志
tail -f app.log

2. Nginx 反向代理(前端资源)

/var/log/nginx/access.log
/var/log/nginx/error.log

3. 系统日志

journalctl -u your-node-service

三、基础分析命令(非常实用)

实时查看

tail -f app.log

错误过滤

grep -i "error" app.log
grep -i "exception" app.log

按时间查看

grep "2026-01-21 10:" app.log

统计错误数量

grep -c "TypeError" app.log

查看上下文(很关键)

grep -A 10 -B 5 "Cannot read" app.log

四、结构化日志分析(推荐)

如果是 JSON 日志(如 pino / winston):

cat app.log | jq '. | select(.level=="error")'

安装 jq:

sudo apt install jq

五、前端 JS 日志怎么分析

方法 1:浏览器 DevTools(最准)

  • F12 → Console
  • Network → 看 4xx / 5xx
  • Source → 断点调试

方法 2:前端错误上报

常见方案:

  • Sentry
  • 自建日志接口 + Node 接收

六、Node.js 进阶分析工具

1. 异常堆栈

确保有:

process.on('uncaughtException', e => console.error(e))
process.on('unhandledRejection', e => console.error(e))

2. 性能 & 内存

node --inspect app.js

用 Chrome DevTools 连上分析。

3. 日志聚合

  • ELK
  • Loki + Grafana
  • Sentry

七、示例:分析一个 JS 报错日志

日志:

TypeError: Cannot read properties of undefined (reading 'id')

分析思路:

  1. grep 定位
  2. 看前后 10 行
  3. 检查 undefined 来源(接口返回 / 状态初始化)
  4. 加防御性代码或类型校验

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

你可以告诉我:

  • JS 是前端还是 Node
  • 日志是文件 / 终端 / 浏览器
  • 有没有报错原文

我可以直接帮你分析具体日志。

0