GraphOS性能警报
当指标超过定义的阈值时接收通知
ⓘ 注意
此功能仅适用于付费计划付费计划.
此功能为 实验性. 您的疑问和建议非常宝贵—不要犹豫,联系您的 Apollo 联系人.
GraphOS可以在特定 GraphQL 操作,如错误率,超过预设阈值时,提醒您团队的 Slack 工作空间或 PagerDuty。这些警报有助于检测异常,尤其是在发布之后。
支持的指标
您可以为以下任何指标配置性能警报
- 请求速率:每分钟的请求数
- 请求时长:平均/高/非常高的服务时间
- 错误率:每分钟的错误数
- 错误百分比:错误请求数量除以请求总数
每个性能警报均可应用于特定操作或任何操作。如果您定义一个应用于特定操作的警报,则同一指标的“任何操作”警报不再适用于该操作。也就是说,更具体的警报优先。
设置
ⓘ 注意
如果您想同时通过 Slack 和PagerDuty 收到通知,请对两个重复这些设置步骤。
- 访问 GraphOS Studio中的图形的“设置”页面。
- 选择 报告标签。
- 找到 性能警报卡片,然后点击 添加新警报。
- 配置警报的 操作名称、触发条件和触发值以满足您的需求。
- 选择一个 通道来发送警报。如果您尚未配置要使用的 Slack 通道或 PagerDuty 实例,请从下拉菜单中选择 新建通道。
- 单击创建。
配置新通道
Slack
要设置Slack通知,您必须
- 在Slack中创建一个入站钩子。
- 将该钩子的URL提供给GraphOS Studio。
1. 创建一个入站Slack钩子
要创建一个入站Slack钩子
- 从入站钩子页面,登录并单击添加到Slack。
- 选择应接收通知的Slack频道。然后,单击添加入站Webhooks集成。
- 在下一步中复制Webhook URL。它应该类似于以下格式
https://hooks.slack.com/services/...
。
您可以重复此过程为不同的Slack频道创建钩子URL。
2. 将Slack钩子提供给Studio
在GraphOS Studio中频道名称字段指定此通知通道的名称。
- 此名称必须在您的graph的通知通道中是唯一的。
- 此名称不必与Slack频道的名称匹配,但为了简单起见,建议这样做。
在Slack Webhook URL字段中粘贴您在创建入站Slack钩子中获得的webhook URL。
单击下一步。
设置完成后,请检查您的Slack频道是否收到Studio的确认。
要配置多个Slack频道,请重复此过程。每个频道使用不同的webhook URL。
PagerDuty
要设置PagerDuty警报,您必须
- 创建一个PagerDuty集成密钥。
- 将该集成密钥提供给GraphOS Studio。
1. 创建一个PagerDuty集成密钥
为应在PagerDuty中接收警报的服务生成一个集成密钥。您可以选择对应于您GraphQL API的现有服务或添加新服务。
现有服务
- 在PagerDuty中,转到您的现有服务的集成选项卡并单击新集成。
- 输入一个集成名称,例如
GraphOS Alerts
。 - 在集成类型中,选择直接使用我们的API并使用事件API v2。
- 单击添加集成。
- 从集成标签页中,复制表格中生成的集成密钥,用于下一步。
添加服务
- 在PagerDuty中,在集成设置下,选择直接使用我们的API并使用事件API v2。
- 输入一个集成名称,例如
GraphOS Alerts
,并完成添加服务流程。 - 从集成标签页中,复制表格中生成的集成密钥,用于下一步。
2. 将集成密钥提供给Studio
在GraphOS Studio中,在通道名称字段中为这个通知通道指定一个名称。
- 此名称必须在您的graph的通知通道中是唯一的。
- 此名称不必与PagerDuty服务的名称匹配,但出于简化考虑,建议这样做。
在PagerDuty集成密钥字段中,粘贴您在创建PagerDuty集成密钥中获得的集成密钥。
单击完成。
阈值窗口
阈值是针对滚动五分钟窗口进行测量的。例如,假设您配置了一个当操作错误率超过5%时触发的警报。如果该操作在五分钟内执行了100次中的6次产生了错误,则警报将触发,错误率为6%。当错误率回落到5%以下时,您的警报将得到解决。