主动监控
概述
主动监控是 1Duty 提供的服务可用性检测功能。与被动接收外部告警不同,主动监控通过定期向目标端点发送 HTTP/HTTPS 请求来探测服务状态,在服务异常时自动触发告警并创建事件。
主动监控适用于以下场景:
- 检测 API 接口或网站的可用性
- 监控关键服务的响应时间
- 验证 SSL 证书有效性
- 作为外部监控系统的补充,提供独立的可用性视角
创建探针
按照以下步骤创建一个新的主动监控探针:
- 进入「告警管理」菜单,点击「主动监控」
- 点击页面右上角的「新建探针」按钮
- 填写探针的基本信息和检测参数
- 配置告警规则和关联团队
- 点击「保存」完成创建
探针配置
创建探针时需要配置以下参数:
基本参数
| 参数 | 说明 | 示例 |
|---|---|---|
| 名称 | 探针的显示名称,便于识别 | 官网首页检测 |
| 目标 URL | 要检测的 HTTP/HTTPS 端点地址 | https://www.example.com/health |
| 请求方法 | HTTP 请求方法 | GET / POST / HEAD |
| 检测间隔 | 两次检测之间的时间间隔 | 30秒 / 1分钟 / 5分钟 |
| 超时时间 | 单次请求的最大等待时间 | 5秒 / 10秒 / 30秒 |
高级参数
| 参数 | 说明 |
|---|---|
| 期望状态码 | 期望返回的 HTTP 状态码,默认为 200。支持配置范围(如 2xx 表示 200-299) |
| 请求头 | 自定义 HTTP 请求头,如 Authorization、Content-Type 等 |
| 请求体 | POST/PUT 请求的请求体内容 |
| 响应关键字 | 期望响应体中包含的关键字,用于验证返回内容的正确性 |
| 关联团队 | 探针触发告警时通知的值班团队 |
建议为核心业务服务配置较短的检测间隔(如 30 秒),非关键服务可使用较长间隔(如 5 分钟)以节省资源。
探针状态
探针根据检测结果会处于以下三种状态之一:
| 状态 | 图标 | 说明 |
|---|---|---|
| 健康 (Healthy) | 绿色 | 连续检测均成功,服务正常运行 |
| 降级 (Degraded) | 黄色 | 部分检测失败或响应时间异常偏高,服务不稳定 |
| 故障 (Down) | 红色 | 连续多次检测失败,服务不可用 |
状态判定规则
探针状态的变化遵循以下规则:
- 健康 → 降级:单次检测失败或响应时间超过阈值
- 降级 → 故障:连续 N 次检测失败(N 可配置,默认为 3)
- 故障 → 健康:连续 N 次检测成功,确认服务已恢复
为避免网络抖动导致的误报,建议设置连续失败次数阈值为 2-3 次后再触发告警。
告警触发
当探针状态变为故障 (Down) 时,系统将自动触发告警。告警流程如下:
- 探针检测到连续失败,状态变为故障
- 系统生成一条告警事件,包含探针名称、目标 URL、失败原因等信息
- 告警事件进入分派流程,根据探针关联的团队进行通知
- 值班人员收到通知后进行处理
- 当服务恢复时,探针状态恢复为健康,系统自动发送恢复通知
告警事件内容
探针触发的告警事件包含以下信息:
- 标题:探针名称 + 故障状态描述
- 描述:目标 URL、失败原因(超时 / 状态码异常 / 关键字不匹配等)
- 级别:可在探针配置中指定,默认为 Critical
- 来源:标记为主动监控来源,便于区分
与事件管理集成
主动监控生成的告警事件与外部接入的告警事件享有完全相同的处理流程:
- 支持智能降噪规则(如相同探针的重复告警合并)
- 支持分派策略路由到指定团队
- 支持通知升级策略
- 支持事件认领、处理、关闭等完整生命周期管理
- 服务恢复后自动发送恢复通知,并可配置自动关闭事件
建议将主动监控与告警接入配合使用:主动监控负责检测"是否可访问",告警接入负责收集"内部异常指标",两者互补形成完整的监控体系。