告警与监控¶
告警在监控 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_TOKEN、NOTIFICATION_TELEGRAM_CHAT_ID |
| 邮件 (SMTP) | NOTIFICATION_SMTP_HOST、NOTIFICATION_SMTP_FROM、NOTIFICATION_SMTP_TO;可选 NOTIFICATION_SMTP_PORT、NOTIFICATION_SMTP_USER、NOTIFICATION_SMTP_PASS |
| 通用 webhook | NOTIFICATION_WEBHOOK_URL |
| 控制项 | Env | 默认 |
|---|---|---|
| 最低严重程度 | NOTIFICATION_MIN_SEVERITY 或旧版 ALERT_MIN_SEVERITY |
HIGH |
| 去重窗口 (ms) | NOTIFICATION_DEDUP_MS |
900000(15 分钟) |
| Slack 载荷 | ALERT_WEBHOOK_FORMAT |
slack 或 generic |
同一 CVE 批次与通道的重复通知在去重窗口内被抑制。按 tenant 的通知 UI 规划中;当前通道通过 env 由运维配置。见 配置 与 自托管。
与监控集成¶
useWatch 将服务端 newVulns 与客户端状态对比。hasNew: true 时合并 vuln 列表、更新 localStorage 最近扫描,并在启用告警时触发通知。
实时监控指示¶
watchEnabled 时 SubNav 显示 实时监控 徽章。顶栏开关控制轮询且不丢失栈配置。
建议实践¶
- 生产栈启用 5 分钟间隔监控。
- 迁移窗口期间保持告警开启。
- 关闭横幅前请人工复核关键项——UI 无持久告警历史。
下一章:运维