<ph type="x-smartling-placeholder"></ph>
您正在查看 Apigee Edge 文档。
转到
Apigee X 文档。 信息
您用于创建和管理异常值提醒以及收集异常值指标的大多数 API 与您用于已更正提醒的 API 相同。对于已更正提醒和异常值提醒,以下提醒 API 的工作原理相同:
- 获取提醒 - 获取固定提醒或异常提醒定义。
- 获取提醒历史记录 - 获取提醒历史记录指标。
- 删除提醒 - 删除已修正或异常的提醒定义。
- 获取提醒实例 - 获取有关触发的提醒的信息。
- 获取提醒数量 - 获取提醒总数。
但是,一些 API 具有用于支持异常值提醒的其他属性,包括:
设置 $ACCESS_TOKEN
下方显示的所有 API 调用都将您的凭据传递到名为 $ACCESS_TOKEN
的环境变量中。按照获取 OAuth 2.0 访问令牌中的说明,将 $ACCESS_TOKEN
设置为您的 OAuth 2.0 访问令牌。如需了解这些示例中使用的 cURL 选项,请参阅使用 cURL。
获得快讯
默认情况下,接收提醒 API 会返回有关所有已定义的提醒的信息。 此 API 现在接受查询参数,可用于过滤结果:
enabled
- 如果true
指定仅返回已启用的提醒。默认值为false
。alertType
- 指定要返回的提醒类型。允许的值为runtime
,默认值为cert
。alertSubType
- 指定要返回的提醒子类型。未设置默认值,表示返回所有提醒子类型。指定anomaly
以返回异常值提醒。
例如,使用以下 API 调用仅返回名为 myorg
的组织的已启用提醒:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'
以下调用仅返回异常值提醒,包括已启用和已停用的提醒:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=anomaly'
创建或更新异常值提醒
使用相同的 API 创建或更新异常值提醒,如同当前针对已更正提醒执行的操作那样。用于创建或更新异常值提醒的 API 调用正文与已更正提醒所用的正文相同,但进行了以下更改:
您必须添加以下新属性才能指定提醒属于异常值提醒:
"alertType": "runtime" "alertSubType": "anomaly"
这些属性的默认值为:
"alertType": "runtime" "alertSubType": "fixed"
在
conditions
数组中:metrics
属性仅接受以下值:count
- 引发 HTTP 错误计数提醒。totalLatency
- 引发延迟时间提醒。
threshold
属性接受字符串而不是数字。支持的值包括:slight
、moderate
和severe
。- 不支持
durationSeconds
和comparator
属性。
在
conditions
数组的dimensions
元素中:- 您必须将
proxy
属性的值设置为ALL
。 statusCode
属性仅支持4xx, 503, 504, and 5xx
的值。- 不支持
developerApp
、collection
、faultCodeCategory
、faultCodeSubCategory
、faultCodeName
属性。
- 您必须将
- 异常值提醒不支持
reportEnabled
属性。
以下示例 API 调用创建了一个异常值提醒,当对于任何地区的生产环境中的所有 API 代理,以适中速率出现 5xx 状态代码时,就会触发此异常值提醒。触发该提醒时,系统会向指定的电子邮件地址发送通知:
curl 'https://apimonitoring.enterprise.apigee.com/alerts' \ -X POST \ -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "organization":"myorg", "name":"5xx Anomaly Alert", "description":"My 5xx alert", "environment":"prod", "enabled":true, "alertType": "runtime", "alertSubType": "anomaly", "conditions":[ { "description":"", "dimensions":{ "org":"myorg", "env":"prod", "proxy":"ALL", "region":"ANY", "statusCode":"5xx" }, "metric":"count", "threshold": "moderate" } ], "notifications":[{ "channel":"email", "destination":"ops@acme.com" }], "playbook":"http://acme.com/myplaybook.html", "throttleIntervalSeconds":3600 }'
将事件 API 与异常值搭配使用
使用 /metrics/events
API 获取组织中指定时间间隔的所有事件。事件列表包括 Edge 检测到的异常值以及任何触发的提醒。提醒可以包括已更正提醒和异常值提醒。
默认情况下,该 API 会返回过去一小时的所有事件。使用 from
和 to
查询参数指定不同的时长。from
和 to
查询参数值可供指定不同的时长。
例如,以下 API 调用会返回组织 myorg
中过去 12 小时的所有事件:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&from=-12h&to=now"
按照获取 OAuth 2.0 访问令牌中的说明,将 $ACCESS_TOKEN
设置为您的 OAuth 2.0 访问令牌。如需了解此示例中使用的 cURL 选项,请参阅使用 cURL。
下一次调用将返回过去 24 小时内具有适中阈值的所有异常值事件:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&type=anomaly&threshold=moderate&from=-24h&to=now"
此 API 仅需要 org
查询参数。除了 /metrics/events
的 API 文档中描述的查询参数之外,此 API 还支持以下选项,以支持异常值检测:
名称 | 说明 | 默认 |
---|---|---|
threshold
|
按指定的阈值过滤事件: 只当您设置了 |
所有严重程度 |
type
|
按指定类型过滤事件:alert 或 anomaly 。以逗号分隔列表的形式指定多个值。 |
所有类型 |