Skip to content

告警与监控

告警在监控 tick 或扫描后出现 CVE 行时通知运维。不替代 SIEM 或 pager,但提供即时 UI 反馈。

alertsEnabled 设置决定是否启用 toast 与横幅;界面中已无独立告警历史标签页。

通道

当设置中 alertsEnabled 为真:

  • Toast — 简短通知,含数量与示例 id。
  • 横幅 — 可关闭条,列出监控后的新 critical/high 项。

服务端通知通道

浏览器 toast 与横幅 仅限客户端。如需 Slack、Discord、Telegram、SMTP 邮件或通用 webhook,请配置服务端环境变量。当 POST /api/watch 返回非空 newVulns 时,server/services/notifications/ 中的 NotificationService 异步(non-blocking)分发已配置通道。

通道 主要 env
Slack NOTIFICATION_SLACK_WEBHOOK_URL 或旧版 ALERT_WEBHOOK_URL
Discord NOTIFICATION_DISCORD_WEBHOOK_URL
Telegram NOTIFICATION_TELEGRAM_BOT_TOKENNOTIFICATION_TELEGRAM_CHAT_ID
邮件 (SMTP) NOTIFICATION_SMTP_HOSTNOTIFICATION_SMTP_FROMNOTIFICATION_SMTP_TO;可选 NOTIFICATION_SMTP_PORTNOTIFICATION_SMTP_USERNOTIFICATION_SMTP_PASS
通用 webhook NOTIFICATION_WEBHOOK_URL
控制项 Env 默认
最低严重程度 NOTIFICATION_MIN_SEVERITY 或旧版 ALERT_MIN_SEVERITY HIGH
去重窗口 (ms) NOTIFICATION_DEDUP_MS 900000(15 分钟)
Slack 载荷 ALERT_WEBHOOK_FORMAT slackgeneric

同一 CVE 批次与通道的重复通知在去重窗口内被抑制。按 tenant 的通知 UI 规划中;当前通道通过 env 由运维配置。见 配置自托管

与监控集成

useWatch 将服务端 newVulns 与客户端状态对比。hasNew: true 时合并 vuln 列表、更新 localStorage 最近扫描,并在启用告警时触发通知。

实时监控指示

watchEnabled 时 SubNav 显示 实时监控 徽章。顶栏开关控制轮询且不丢失栈配置。

建议实践

  • 生产栈启用 5 分钟间隔监控。
  • 迁移窗口期间保持告警开启。
  • 关闭横幅前请人工复核关键项——UI 无持久告警历史。

下一章:运维