HTTP 事件接入
完整事件使用 HMAC,支持幂等和防重放。轻量通知使用请求头 Bearer,路由与级别由服务端固定。
接收 HTTP 事件,按路由投递到飞书、Telegram、ntfy 或 SMTP。
记录故障状态、队列任务和投递结果,提供管理后台与只读 MCP 查询。
完整事件使用 HMAC,支持幂等和防重放。轻量通知使用请求头 Bearer,路由与级别由服务端固定。
事件与投递任务写入 SQLite。单 Worker 执行投递、退避重试和死信处理;HTTP 接收成功不等于渠道送达。
服务端渲染后台管理渠道、客户端、路由和静默。支持本地密码与可选管理员 OIDC,不需要前端运行时。
| 接口 | 凭据 | 用途 |
|---|---|---|
POST /api/v1/events | HMAC-SHA256 | 事件 ID 幂等、时间窗、Nonce、故障发生与恢复;HTTP 202 |
POST /api/v1/notifications | 轻量 Bearer 令牌 | 固定路由、级别和 info 状态的一次性通知;HTTP 200 |
/mcp | 独立 OAuth / Bearer | 授权路由内的只读查询;不复用通知令牌 |
通知 API 的 outcome 区分 queued、suppressed 与 duplicate。最终投递结果在管理后台查询。API 契约 / OpenAPI
浏览器内模拟 · 虚构数据 · 不发送真实通知
真实认证、持久化和重试请用 Docker Demo 验证。
发送相同路由与去重键的 firing 和 resolved。演示假定重复事件在去重窗口内,不模拟真实认证或 OIDC。
等待第一条事件。点击“发生故障”开始。
尚无请求;本页面不会调用 API。
模拟 list_alerts 的倒序参数,只查询本页虚构事件;输出不是实际 MCP 响应 Schema。
参数:{"order":"desc","limit":10}
等待查询演示数据。
需要 Docker Compose、OpenSSL 和 curl。临时凭据由脚本生成;在空后台配置渠道、路由和客户端。
git clone https://github.com/xiongwei-git/alertbridge.git cd alertbridge ./scripts/local-demo.sh up
打开 http://127.0.0.1:18081/admin/
本地 HTTP 环境仅供测试,不要暴露到公网。
使用 ghcr.io/xiongwei-git/alertbridge:v0.5.0 和同版本 Compose。端口只绑定 loopback,Nginx 提供 HTTPS;数据库与主密钥卷成对备份。
/mcp 默认关闭。Dots 使用 OAuth + PKCE,支持自定义请求头的客户端也可使用独立固定 Bearer。所有查询受服务端路由范围限制。
Dots 配置示例 ↗不确认或关闭故障,不执行系统命令,不自动唤醒 Agent。账号可用性与连接界面以实际环境为准。
当前以 Tinyauth 验证。使用 Authorization Code、PKCE S256、state、nonce 和 RS256 ID Token;只允许服务器配置的 issuer + subject 成为管理员。用户名和邮箱不授予权限。
身份提供方 Token 不持久化。登录页等待点击,退出只清除本应用会话;可通过配置保留备用密码入口。
管理员 OIDC 是 AlertBridge 向身份提供方登录;MCP OAuth 是 AlertBridge 向 Dots 签发只读令牌。两者的 Client、回调地址和凭据不能互换。
部署需加载 compose.oidc.yaml,并挂载受限 JSON Secret。日常重建、备份和回滚都需保留 overlay 与配置文件。此静态 Demo 不提供真实登录。
OIDC 配置与回滚 ↗适用于个人基础设施和小团队:统一脚本通知、跟踪故障发生与恢复、查询渠道投递结果。运行时为一个 HTTP 进程、一个 SQLite 连接和一个投递 Worker。
监控采集、多实例高可用、值班排班、告警聚合、超时升级、告警确认和自动修复,当前不在项目能力范围内。