現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください。 情報
異常アラートの作成や管理、および異常指標の収集に使用するほとんどの API は、固定アラートで使用するものと同じです。次のアラート API は、固定アラートと異常アラートの両方で同じように機能します。
- アラートの取得 - 固定アラートまたは異常アラートの定義を取得できます。
- アラート履歴を取得する - アラート履歴の指標を取得します。
- アラートの削除 - 固定アラートまたは異常アラートの定義を削除します。
- アラート インスタンスの取得 - トリガーされたアラートに関する情報を取得します。
- Get alert count - アラートの合計数を取得します。
ただし、一部の API には異常アラートをサポートする次のような追加のプロパティがあります。
- アラートを取得する - 修正アラートと異常アラートを含むすべてのアラートをリストします。
- アラートを作成 - 固定アラートまたは異常アラートを作成します。
- アラートの更新 - 固定アラートまたは異常アラートの定義を更新します。
$ACCESS_TOKEN の設定
以下に示されるすべての API 呼び出しでは、$ACCESS_TOKEN
という環境変数に認証情報が渡されます。OAuth 2.0 アクセス トークンの取得の説明に従って、$ACCESS_TOKEN
を OAuth 2.0 アクセス トークンに設定します。これらの例で使用されている cURL オプションの詳細については、cURL を使用するをご覧ください。
すべてのアラートを取得する
デフォルトでは、Get alerts 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 }'
異常を伴う Events API を使用する
/metrics/events
API を使用して、指定した時間間隔で組織内のすべてのイベントを取得します。イベントのリストには、Edge で検出された異常とトリガーされたアラートが含まれます。アラートには、固定アラートと異常アラートの両方を含めることができます。
デフォルトでは、API は過去 1 時間のすべてのイベントを返します。別の期間を指定するには、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 )でイベントをフィルタします。複数の値をカンマ区切りのリストとして指定します。 |
すべての種類 |