2. PagerDuty 核心概念:服务、集成、升级策略、调度、通知规则、事件与告警的生命周期
在构建值班环境基线核验体系之前,必须透彻理解 PagerDuty 的六大核心概念。它们构成了事件响应流程的骨架,从告警产生到事件关闭,每个环节都依赖这些组件的正确配置。下面逐一拆解其定义、职责与交互关系。
2.1 核心概念全景图
下图展示了 PagerDuty 事件处理的核心组件及其流转关系。理解这张图是掌握后续故障排查与恢复操作的基础。
2.2 服务 (Service) 与集成 (Integration)
服务是 PagerDuty 中的逻辑单元,代表一个需要被监控的应用、系统或基础设施组件。每个服务都关联一个唯一的集成密钥,用于接收外部监控系统的告警。
集成是连接监控工具与 PagerDuty 服务的桥梁。PagerDuty 支持数百种开箱即用的集成,包括 Prometheus、Datadog、Zabbix、AWS CloudWatch 等。
| 概念 | 职责 | 关键属性 |
|---|---|---|
| 服务 | 定义监控范围、关联升级策略、聚合事件 | 服务名称、集成密钥、状态(活跃/维护/禁用) |
| 集成 | 接收外部告警、格式转换、触发事件创建 | 集成类型、集成密钥、端点 URL |
基线核验要点: 在值班环境核验中,应检查每个服务的集成密钥是否有效、集成端点是否可达、以及服务是否处于“活跃”状态。维护模式下的服务不会触发事件,可能导致告警遗漏。
2.3 升级策略 (Escalation Policy)
升级策略定义了当事件未被及时确认或解决时,如何逐级通知更高级别的响应人。它是事件响应流程中的“故障转移”机制,确保告警不会石沉大海。
一个升级策略由多个升级层 (Escalation Rule) 组成,每层包含一组响应人(个人或调度)和超时时间。
2.4 调度 (Schedule) 与通知规则 (Notification Rules)
调度定义了值班人员的轮换时间表,确保在任何时间点都有指定的响应人负责处理事件。调度可以按小时、天、周或自定义周期进行轮换。
通知规则定义了当事件分配给某位响应人时,PagerDuty 如何联系该响应人。常见的通知方式包括:
- 推送通知:通过 PagerDuty 移动 App 推送
- 短信 (SMS):发送到注册手机号
- 电话:自动拨打响应人电话
- 电子邮件:发送到注册邮箱
| 组件 | 配置示例 | 基线核验项 |
|---|---|---|
| 调度 | 每周一至周五 09:00-18:00 为 A 组,其余时间为 B 组 | 检查调度是否覆盖全天24小时;轮换交接是否有重叠时间 |
| 通知规则 | 立即推送通知;2分钟后短信;5分钟后电话 | 验证每个响应人的联系方式是否有效;通知顺序是否合理 |
常见故障场景: 调度未覆盖节假日、通知规则中电话号码过期、或响应人未安装 PagerDuty App 导致推送失败。这些都会导致事件无人响应,最终触发不必要的升级。
2.5 事件与告警的生命周期
理解事件与告警的生命周期是故障排查的核心。告警是外部监控系统发送的原始信号,而事件是 PagerDuty 内部管理的响应单元。一个事件可以关联多个告警(例如,同一问题反复触发告警时,PagerDuty 会将其合并到同一个事件中)。
事件的生命周期包含以下关键状态:
- 触发 (Triggered):集成接收到告警,创建新事件。此时开始通知响应人。
- 确认 (Acknowledged):响应人确认事件,表示已知晓并正在处理。通知停止,但升级计时器暂停。
- 解决 (Resolved):问题已修复,事件关闭。所有关联告警标记为已解决。
- 自动解决 (Auto-Resolve):如果配置了自动解决时间,事件在指定时间内未被手动解决时会自动关闭。
2.6 核心概念配置清单
在值班环境基线核验中,以下配置项必须逐一检查:
| 组件 | 核验项 | 预期状态 |
|---|---|---|
| 服务 | 服务状态、集成密钥有效性 | 活跃、密钥未过期 |
| 集成 | 集成类型、端点可达性 | 与监控工具匹配、HTTP 200 |
| 升级策略 | 层级数量、超时时间、响应人 | 至少2层、超时合理、人员有效 |
| 调度 | 覆盖时间、轮换规则、交接 | 24/7 覆盖、无空窗期 |
| 通知规则 | 通知方式、顺序、联系方式 | 推送+短信+电话、联系方式有效 |
| 事件生命周期 | 自动解决时间、合并规则 | 符合SLA、避免重复事件 |
实践建议: 在基线核验脚本中,使用 PagerDuty API 的
GET /services、GET /escalation_policies、GET /schedules 等端点自动获取配置状态,并与预期值进行比对。任何偏离都应记录为故障,并触发修复流程。