GET /api/v1/alerts/incidents/{id}/timeline
alerts.incidents.read。控制台的事件时间线就是按它画出来的。
| 字段 | 内容 |
|---|---|
entries | 记下的每一步,从早到晚:id、org_id、incident_id、at(微秒)、kind、actor(用户 ID,MoleSignal 自己做的是 null)和 detail。 |
deliveries | 这个事件的通知,从早到晚,最多 500 条:id、event_id(alert.triggered:…、alert.escalated:…、alert.acknowledged:… 或 alert.resolved:…)、user_id、connector_id、target(已脱敏)、stage、status、error、created_at 和 delivered_at。流水线不让发的策略 status 为 skipped,没有 user_id 和 connector_id,error 是原因。 |
merged | 并入这个事件的事件:id、summary、status、severity、created_at 和 resolved_at。 |
kind | detail |
|---|---|
acknowledged、resolved | via:web、api、im、sms、phone 或 agent。 |
escalated | step(从 0 起)、loop、reason,以及这一级的 targets。 |
reassigned | to,写法同转派事件;from:原来的负责人、团队和策略。 |
responders_added | user_ids。 |
snoozed | until(微秒)和 duration_secs。 |
snooze_cancelled | 空。 |
retriggered | reason:snooze_ended 或 ack_timeout。 |
severity_changed | from 和 to。 |
merged | into:并入的那个事件。 |
merged_in | incidents:并入这个事件的事件。 |
merged_recovered | 自行恢复的并入事件的 incident_id 和 summary。 |
note | text 和 via。 |
remediation_requested | 发起修复动作:执行记录 run_id、动作名 action 和填的参数 inputs。 |
remediation_executed | 修复动作执行完:run_id、action、status(succeeded 或 failed)和 output(响应或错误的开头)。 |
remediation_verified | 执行后的验证:run_id、action、passed 和验证方式 by(incident_resolved 或 rule_healthy)。 |
ticket_created | 建了工单:system(jira 或 meegle)、key、url 和连接器名 connector。 |
ticket_updated | 同步到工单状态变了:key、status 和 done。 |
declared_major | 宣布为重大事件;auto 为 true 时是组织的自动规则宣布的。 |
role_assigned | 指派角色:role(commander、communications 或 scribe)和 user_id,撤下时为 null。 |
war_room_created | 建好作战室:platform、入群链接 url 和会议链接 meeting_url。 |
task_added、task_done | 加了一项任务、做完一项任务:title。 |
status_update | 发了一次进展:impact、current 和 next。 |
pipeline_processed | 告警流水线在开事件之前改了事件,或出了错:pipeline_id、pipeline、changes(每项有 field,如 severity 或 labels.team,from,新增时没有,to,删除时没有)、more(列出的 40 处之外还有几处)和 error。 |
curl -X GET http://localhost:5080/api/v1/alerts/incidents/$INCIDENT_ID/timeline \
-H "authorization: Bearer $MS_TOKEN"
{
"entries": [
{
"id": "3KEE0Q1v9mYtHb7c2Lr8Wk5dPzA",
"org_id": "<organization-id>",
"incident_id": "3KEDNEyqouYJeBDTLTMTBui7XHW",
"at": 1790000120000000,
"kind": "acknowledged",
"actor": "<user-id>",
"detail": {
"via": "sms"
}
},
{
"id": "3KEE1aXy7pRtGd2s9Lm4Qv8bNcE",
"org_id": "<organization-id>",
"incident_id": "3KEDNEyqouYJeBDTLTMTBui7XHW",
"at": 1790000300000000,
"kind": "note",
"actor": "<user-id>",
"detail": {
"text": "Rolled back the edge proxy.",
"via": "web"
}
}
],
"deliveries": [
{
"id": "<delivery-id>",
"event_id": "alert.triggered:3KEDNEyqouYJeBDTLTMTBui7XHW",
"user_id": "<user-id>",
"connector_id": "<connector-id>",
"target": "+86138****8000",
"stage": "user_primary",
"status": "delivered",
"error": null,
"created_at": 1790000001000000,
"delivered_at": 1790000002000000
}
],
"merged": [
{
"id": "3KEDQ4mJ8sLp2Xv6Nc1Rt9bYwHe",
"summary": "Checkout p95 above 800 ms",
"status": "open",
"severity": "error",
"created_at": 1790000030000000,
"resolved_at": null
}
]
}
| 状态码 | 原因 |
|---|---|
403 | Token 缺少 alerts.incidents.read。 |
404 | 事件不存在。 |