Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Большинство API, используемых для создания и управления оповещениями об аномалиях и сбора метрик аномалий, совпадают с теми, которые используются для фиксированных оповещений. Следующие API для оповещений работают одинаково как для фиксированных, так и для аномальных оповещений:
- Получить оповещение — получить определение оповещения об исправлении ситуации или об аномалии.
- Получить историю оповещений — получить метрики истории оповещений.
- Удаление оповещения — Удаление определения фиксированного или аномального оповещения.
- Получить информацию об экземпляре оповещения — получить сведения о сработавшем оповещении.
- Получить количество оповещений — получить общее количество оповещений.
Однако некоторые API имеют дополнительные свойства, используемые для поддержки оповещений об аномалиях, в том числе:
- Получать оповещения — Список всех оповещений, включая исправления и аномальные события.
- Создать оповещение — создать оповещение об ошибке или аномалии.
- Обновить оповещение — обновить определение оповещения об исправлении или аномалии.
Установка $ACCESS_TOKEN
Все приведенные ниже вызовы API передают ваши учетные данные в переменной среды с именем $ACCESS_TOKEN . Установите значение $ACCESS_TOKEN равным вашему токену доступа OAuth 2.0, как описано в разделе «Получение токена доступа 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не поддерживаются.
В элементе
dimensionsмассиваconditions:- Необходимо установить значение свойства
proxyравнымALL. - Свойство
statusCodeподдерживает только значения4xx, 503, 504, and 5xx. - Свойства
developerApp,collection,faultCodeCategory,faultCodeSubCategory,faultCodeNameне поддерживаются.
- Необходимо установить значение свойства
- Свойство
reportEnabledне поддерживается для оповещений об аномалиях.
Приведенный ниже пример вызова API создает оповещение об аномалии, которое срабатывает при умеренном появлении кодов состояния 5xx для всех API-прокси в производственной среде в любом регионе. При срабатывании оповещения на указанный адрес электронной почты отправляется уведомление:
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 событий для работы с аномалиями.
Используйте API /metrics/events , чтобы получить все события в организации за указанный временной интервал. Список событий включает аномалии, обнаруженные 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"
Установите $ACCESS_TOKEN в значение вашего токена доступа OAuth 2.0, как описано в разделе «Получение токена доступа 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 . Помимо параметров запроса, описанных в документации API по адресу /metrics/events , этот API поддерживает следующие параметры для обнаружения аномалий:
| Имя | Описание | По умолчанию |
|---|---|---|
threshold | Фильтруйте события по указанному пороговому значению: Разрешено только при установке | Все степени тяжести |
type | Фильтруйте события по указанному типу: alert или anomaly . Укажите несколько значений в виде списка, разделенного запятыми. | Все типы |