温馨提示×

debian如何解析js日志

小樊
32
2026-10-07 03:00:57
栏目: 编程语言

在 Debian 上“解析 JS 日志”通常有两种常见含义,下面分情况说明,并给出实用做法。


一、你是说「在 Debian 服务器上查看 / 分析 JS 应用产生的日志」

比如 Node.js、前端构建工具、浏览器上报的日志。

1. 常见 JS 日志位置

  • Node.js 服务
    • stdout / stderr(systemd、pm2、docker)
    • 自定义日志文件(如 logs/app.log)
  • Nginx 反向代理
    • /var/log/nginx/access.log
    • /var/log/nginx/error.log
  • 前端错误上报
    • Sentry / 自研接口日志

2. 基础查看命令

# 实时查看
tail -f /var/log/nginx/error.log

# 按关键字过滤
grep "TypeError" app.log

# JSON 日志美化
cat app.log | jq .

3. 结构化日志解析(推荐)

如果 JS 日志是 JSON 格式:

{"level":"error","msg":"db timeout","ts":"2026-01-15T10:00:00Z"}

解析示例:

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

4. 日志分析工具

  • grep / awk / sed(轻量)
  • jq(JSON)
  • lnav(终端日志浏览器)
    sudo apt install lnav
    lnav app.log
    
  • ELK / Grafana Loki(生产环境)

二、你是说「在 Debian 上运行 JS 来解析日志文件」

比如用 Node.js 写脚本解析日志。

1. 安装 Node.js

sudo apt update
sudo apt install nodejs npm
node -v

2. 示例:用 Node.js 解析日志

const fs = require('fs');

const log = fs.readFileSync('app.log', 'utf8');
const lines = log.split('\n');

lines.forEach(line => {
  try {
    const obj = JSON.parse(line);
    if (obj.level === 'error') {
      console.log(obj.msg);
    }
  } catch {}
});

运行:

node parse.js

三、你是说「Debian 本身如何解析 JS(如浏览器日志)」

Debian 不“解析 JS”,但你可以:

  • 用 node 执行 JS
  • 用 chromium + headless 抓日志
  • 用 puppeteer 自动化分析前端日志

四、推荐组合(实用)

  • 开发/排查:tail -f + jq + lnav
  • 生产环境:Node + JSON 日志 + Loki/Promtail
  • 自动化:Node.js 脚本定时解析

如果你能补充:

  • 日志是 Node / 浏览器 / Nginx
  • 是否是 JSON 格式
  • 想 实时看 还是 离线分析

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

0 踩