用途:通过命令行查询和管理 PagerDuty,包括查看当前值班人员、列出与处理事件、读取升级策略和排班、追踪谁被通知及原因,以及用 Events API v2 触发、确认或解决告警。
主要能力:PagerDuty 提供两套 API。REST API 位于 https://api.pagerduty.com,可读写事件、值班、排班、升级策略、服务、用户和日志条目;Events API v2 位于 https://events.pagerduty.com,用集成路由键在请求体中触发、确认或解决告警,不需要 Authorization 头。数据模型为:告警在服务上触发,经升级策略路由到排班和用户,生成事件,日志条目记录通知对象、时间和渠道。
使用方式:认证由运行时注入,无需创建或刷新令牌;凭据变量未设置时可填任意占位值。REST 请求头为 Authorization: Token token=<t>;Events v2 使用 32 位十六进制路由键。可用 curl 检查连通性:curl -sS -w '\nHTTP %{http_code}\n' "https://api.pagerduty.com/users/me" -H "Authorization: Token token=${PAGERDUTY_TOKEN}" -H "Content-Type: application/json"。200 表示已配置,401/403 表示凭据未配置。技能附带 scripts/pd_oncall.sh 脚本,可解析服务与用户名、查询 /oncalls、分页并输出 TSV 或 JSONL。事件变更需带 From: 头,值为账户中真实用户的邮箱。
适用场景:值班查询、事件列表与详情、日志追踪、确认/解决/升级/暂停/备注、服务到升级策略到排班的链路排查、创建事件、通过 Events v2 触发告警。
限制:REST API 每令牌每分钟 960 次请求,Events v2 每路由键每分钟约 120 个事件;429 时按 ratelimit-reset 秒退避重试。分页 offset+limit 上限 10000。数组参数使用方括号,旧版 curl 需加 -g 或百分号编码。401 响应体为空,需查看 HTTP 状态码。引用其他对象需包含 type 字段,否则返回 400。更多端点见 references/api.md。