温馨提示×

debian js日志怎样监控

小樊
37
2026-09-01 05:57:15
栏目: 编程语言

在 Debian 上监控 JS(Node.js / 前端构建 / 浏览器)日志,常见做法分为系统级日志监控、应用日志监控和实时告警。下面按场景给你一套实用方案。


一、确认 JS 日志在哪里

1. Node.js 服务

常见日志位置:

  • 应用自己写:/var/log/app/、~/.pm2/logs/
  • PM2:pm2 logs
  • Docker: docker logs <container>
  • systemd:journalctl -u your-node-service

2. 前端 JS(浏览器)

  • 浏览器 Console
  • 错误上报(Sentry、Fundebug)
  • Nginx 访问/错误日志(静态资源)

二、实时查看日志(最基础)

tail 实时跟踪

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

多文件监控

 multitail /var/log/app/error.log /var/log/app/access.log

安装:

sudo apt install multitail

三、用 systemd + journalctl(推荐服务方式)

写一个简单的 service

# /etc/systemd/system/node-app.service
[Unit]
Description=Node App
After=network.target

[Service]
ExecStart=/usr/bin/node /opt/app/index.js
WorkingDirectory=/opt/app
StandardOutput=journal
StandardError=journal
Restart=always
User=www-data

[Install]
WantedBy=multi-user.target

查看日志

journalctl -u node-app -f

按时间/级别过滤

journalctl -u node-app --since "10 min ago"
journalctl -u node-app -p err

四、用 PM2(Node.js 最常用)

npm install -g pm2
pm2 start app.js
pm2 logs
pm2 logs app --err

保存并开机启动:

pm2 save
pm2 startup

五、日志集中 & 分析(生产环境)

1. 用 rsyslog / journald 转发

适合多台服务器

2. 用 ELK / Grafana 栈

  • Filebeat 收集
  • Logstash / Vector 处理
  • Elasticsearch + Kibana 或
  • Loki + Promtail + Grafana

3. 前端错误监控(强烈推荐)

  • Sentry(开源)
  • Fundebug
  • 自建上报接口

六、关键字告警(简单实用)

grep + 定时任务

grep -i "error" /var/log/app/app.log | mail -s "JS Error" admin@mail.com

用 logwatch / fail2ban 思路

  • 监控 5xx
  • 监控 Uncaught Exception
  • 监控 TypeError

七、Docker 中 JS 日志

docker logs -f container_name

配合:

docker logs --tail 100 -f container_name

八、推荐组合(实战)

开发:

  • pm2 logs 或 tail -f

生产:

  • systemd + journalctl
  • Sentry(前端/Node)
  • Loki / ELK(集中日志)

如果你能告诉我:

  • 是 Node 后端 还是 前端 JS
  • 是否用 Docker / PM2 / Nginx
  • 想要 实时看 还是 告警

我可以直接给你一套可复制的配置。

0 踩