事件。io生产商
从一个事件中同步事件及其周围的一切。io组织:
更新,时间表,后续行动,随叫随到,目录,状态页,和
设置。它回填每个资源,获取webhook
POST /webhooks/incident-io,投票作为备用:每5分钟一次
事件、后续行动、行动、警报和升级,每小时用于
其余的人。
| 资源 | 什么 |
|---|---|
incidents | 每种模式下的事件 |
incident_updates, incident_timeline_items, incident_activity_log_entries, incident_participants, incident_relationships, incident_attachments, incident_alerts, incident_call_sessions, incident_participant_workloads | 为每个事件阅读列表 |
postmortem_documents, follow_ups, actions | 事后分析和工作项 |
alerts, alert_notes, alert_sources, alert_routes, alert_attributes | 警报及其设置 |
escalations, escalation_paths, schedules, schedule_shifts, schedule_overrides, on_call_notification_pauses, maintenance_windows | 随叫随到 |
catalog_types, catalog_entries | 目录 |
users, teams | 人员和团队 |
severities, incident_statuses, incident_types, incident_roles, incident_timestamps, custom_fields, custom_field_options | 事件设置,以命名行上的id |
workflows, workflow_runs | 工作流及其运行 |
status_pages, status_page_components, status_page_incidents, status_page_maintenances | 状态页面 |
policies, policy_findings | 政策和破坏政策的因素 |
配置
| 变量 | 要求 | 默认的 |
|---|---|---|
INCIDENT_IO_API_KEY | 是 | 无 |
INCIDENT_IO_WEBHOOK_SECRET | 是 | 无 |
设置
API和webhook需要Team计划或以上。私人事件及 政策需要Pro。
-
创建一个API密钥 设置→API密钥 有了这些权限 (API名称):
viewer针对事件、后续行动、操作和设置catalog_viewer,on_call_viewer,schedules_reader,workflows_viewer,status_page_viewer,policies_viewer对于那些 表incident_workload_viewer和incident_workload_private_viewer用于incident_participant_workloadscall_transcripts_viewer用于incident_call_sessionsglobal_access包括私人事件
maintenance_windows需要on_call_editor,唯一的许可 覆盖维护窗口。它还可以更改随叫随到的设置,所以请留下 退下,除非你同意。使用该键作为
INCIDENT_IO_API_KEY。缺少角色的表失败 这是支票,其他的继续同步。 -
添加一个webhook端点 设置→Webhooks 在
https://<host>/webhooks/incident-io。选择公共和私人的 这些事件的版本:incident_created_v2,incident_updated_v2,incident_status_updated_v2follow_up_created_v2,follow_up_updated_v2action_created_v1,action_updated_v1postmortem_document_status_updated_v1alert_created_v1,alert_resolved_v1escalation_created_v1,escalation_status_updated_v1
也选
schedule.created_v1,schedule.updated_v1,schedule.deleted_v1,schedule.shift_change_v1,status_page_incident.update_shared_v1。使用其签名密钥为INCIDENT_IO_WEBHOOK_SECRET.
一个键读取一个组织,因此为每个组织运行一个连接器。
数据
- 每个webhook都会再次读取记录,因此行总是具有完整的, 最新的记录。私有事件只携带一个ID,并且在使用密钥时被跳过 不能看到事件。
- 事件保存角色分配、自定义字段值、时间戳和 作为列表的持续时间指标。具有多个值的自定义字段有一个列表 每个值的元素。
- 包括测试和教程事件。过滤
mode离开他们 出去了。 - 事件。IO没有事件删除。拒绝、取消和合并 事件随其状态而存在。
- 标记已删除的跟踪和行动保留
status = deleted。如果incident.io 将它们从列表中删除,删除操作不可见。 - 归档目录条目保留
archived_at。删除的时间表得到_deleted. schedule_shifts在过去的7天里,轮班结束了吗 已申请,按换挡人的指纹键。它保留了旧的班次 之前。- 深度配置包括工作流步骤、升级路径、策略规则等 存储为JSON文本。
- 警报来源留下了他们的秘密令牌。用户的电话号码和 通知规则、通话记录、支付数据、秘密和API密钥则不是 同步。
- 表格保存姓名、电子邮件、Slack id和事件文本。把他们当作 保密。
限制
- 一个API密钥每分钟收到1200个请求,每分钟列出60个事件。
一、
429等待Retry-After然后再试一次。 - 当事件发生更改时,将重新读取每个事件的列表,并且每个事件的列表都将被重新读取 5分钟时,它是开放的(分流,活动,或暂停)。
incident_call_sessions和incident_participant_workloads关于他们的民意调查 每隔5分钟拥有一次,并且不带网钩,所以一键无自己的作用 停止那些桌子。- 工作量分钟数
incidents滞后性,是因为他们成长而不改变吗updated_at.incident_participant_workloads一会再读 Incident是开放的,并且在其最后更改后的一天内开放,因为Incident .io 不时地更新工作负载。 - 设置列表每小时读取一次。删除的项目是看不到的。
- 提醒笔记每小时阅读一次,对于有笔记的提醒。笔记 警报组不会同步,因为API无法列出警报组。
- 删除的附件、关系、参与者和警报链接则不会 观察。
- 失败的webhook将在24小时内重试。轮询覆盖时间更长 中断。
演示数据
pnpm demo --size 128MiB 写虚构的事件。无事故IO数据
凭证。有关标志和变量,请参阅Connector Kit README
的需求。
每个事件都有开始的警报,严重的事件会升级, 状态更新与时间轴项目和活动日志条目,参与者与 工作负载、操作和工作流运行。严重的事故也需要验尸, 后续行动,状态页通知,以及后期后续行动的政策发现。这个 工作空间只写一次,不会随着用户、团队、员工的规模而增长 目录、严重性、状态、类型、角色、自定义字段、警报、随叫随到 时间表与班次,维护窗口,工作流,状态页,和 政策。
地方发展
cd connectors/producer-incident-io
pnpm sandbox
pnpm start 运行托管连接器。它需要Wings和PostgreSQL
中的变量 连接器套件自述.
要录制VCR磁带,从测试机构放一把钥匙进去 .env,
运行 pnpm test:ci。之前请检查新卡带的客户详细信息
提交它。