温馨提示×

怎样实时监控linux js日志

小樊
38
2026-09-29 17:04:53
栏目: 编程语言

在 Linux 上实时监控 JS(Node.js / 前端构建 / 浏览器端)日志,通常取决于日志写在哪、以什么形式输出。下面按常见场景给你一套实用方案。


一、最常见:Node.js 服务日志(控制台输出)

1️⃣ tail -f(最常用)

tail -f /path/to/app.log

或实时看标准输出:

tail -f /var/log/node/app.log

多文件:

tail -f app.log error.log

2️⃣ 用 less 实时看(适合大文件)

less +F app.log
  • Ctrl+C 暂停
  • F 继续跟踪

二、PM2 管理的 Node.js(强烈推荐)

实时日志

pm2 logs

只看某个服务:

pm2 logs app-name

实时 + 行数:

pm2 logs app-name --lines 100

三、Docker 中的 JS 日志

docker logs -f container_name

从某个时间开始:

docker logs -f --since 10m container_name

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

浏览器 JS 日志不在 Linux 文件系统里,常用方案:

✅ 方案 1:前端错误上报

window.onerror = function(msg, url, line) {
  fetch('/log', {
    method: 'POST',
    body: JSON.stringify({ msg, url, line })
  })
}

后端 Node 接收并写文件 → 再用 tail -f 看


✅ 方案 2:Sentry(生产推荐)

  • 前端自动上报
  • Linux 端不需要看文件
  • 支持报警、堆栈、用户行为

五、高级实时监控(日志聚合)

1️⃣ multitail(多窗口)

multitail app.log error.log

2️⃣ lnav(日志分析神器)

lnav app.log
  • 自动高亮
  • 支持 JSON / 时间排序

3️⃣ ELK / Loki(生产级)

  • Filebeat → Elasticsearch
  • 或 Promtail → Loki → Grafana
  • 支持搜索、报警、可视化

六、过滤关键日志(很实用)

只看 ERROR:

tail -f app.log | grep ERROR

高亮:

tail -f app.log | grep --color=auto ERROR

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

你可以告诉我:

  1. JS 是 Node / 前端 / Electron?
  2. 日志是 文件 / stdout / Docker?
  3. 是 开发 还是 生产环境?

我可以直接给你可复制的命令或配置。

0 踩