Korzystanie z interfejsu API do wykrywania anomalii

Przeglądasz dokumentację Apigee Edge.
Przejdź do Dokumentacja Apigee X.
informacje.

Większość interfejsów API używanych do tworzenia alertów dotyczących anomalii i zarządzania nimi oraz do zbierania danych dotyczących anomalii jest taka sama jak w przypadku alertów stałych. Te interfejsy API alertów działają tak samo w przypadku alertów naprawionych i dotyczących anomalii:

Niektóre interfejsy API mają jednak dodatkowe właściwości używane do obsługi alertów dotyczących anomalii, w tym:

  • Otrzymuj alerty – pokazuje wszystkie alerty, w tym alerty o naprawionych i anomalii.
  • Utwórz alert – utwórz alert naprawiony lub dotyczący anomalii.
  • Zaktualizuj alert – zaktualizuj definicję alertu o poprawionej lub anomalii.

Ustawianie $ACCESS_TOKEN

Wszystkie poniższe wywołania interfejsu API przekazują Twoje dane logowania do zmiennej środowiskowej o nazwie $ACCESS_TOKEN. Ustaw $ACCESS_TOKEN jako token dostępu OAuth 2.0 zgodnie z opisem w Uzyskiwanie tokena dostępu OAuth 2.0 Informacje o opcjach cURL użytych w tych przykładach znajdziesz tutaj: Użyj cURL.

Otrzymywanie alertów

Domyślnie włączona jest opcja Otrzymuj alerty. Interfejs API zwraca informacje o wszystkich zdefiniowanych alertach. Ten interfejs API przyjmuje teraz parametry zapytania, aby umożliwić filtrowanie wyników:

  • enabled – jeśli true określa, że mają zwracać tylko włączone alerty. Wartością domyślną jest false.
  • alertType – określa typ alertu do zwrócenia. Dozwolone wartości to runtime, domyślna wartość to cert.
  • alertSubType – określa podtyp alertu do zwrócenia. Wartość domyślna jest nieskonfigurowana. czyli zwracają wszystkie podtypy alertów. Aby zwracać alerty o anomalii, określ anomaly.

Przykładowo poniższe wywołanie interfejsu API zwróci tylko opcję włączenia alertów dla organizacji o nazwie myorg:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'

To wywołanie zwraca tylko alerty o anomalii, zarówno włączone, jak i wyłączone:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=anomaly'

Tworzenie lub aktualizowanie alertu o anomalii

Użyj tych samych interfejsów API do tworzenia lub zaktualizuj alert o anomalii, tak jak w przypadku konkretnego alertu. Treść wywołania interfejsu API mającego na celu utworzenie lub aktualizację alert dotyczący anomalii jest taki sam jak w przypadku alertu stałego, z następującymi zmianami:

  • Aby określić, że alert jest alertem o anomalii, musisz dodać te nowe właściwości:

    "alertType": "runtime"
    "alertSubType": "anomaly"

    Domyślne wartości tych właściwości to:

    "alertType": "runtime"
    "alertSubType": "fixed"
  • W tablicy conditions:

    • Właściwość metrics przyjmuje tylko te wartości:

      • count – zgłoś alert dotyczący liczby błędów HTTP.
      • totalLatency – zwiększ alert związany z czasem oczekiwania.
    • Właściwość threshold przyjmuje ciąg znaków, a nie liczbę. Obsługiwane wartości: slight, moderate i severe.
    • Właściwości durationSeconds i comparator nie są obsługiwane.
  • W elemencie dimensions tablicy conditions:

    • Wartość właściwości proxy należy ustawić na ALL.
    • Właściwość statusCode obsługuje tylko wartość 4xx, 503, 504, and 5xx.
    • developerApp, collection, faultCodeCategory, Właściwości faultCodeSubCategory i faultCodeName nie są obsługiwane.
  • Właściwość reportEnabled nie jest obsługiwana w przypadku alertów o anomalii.

Poniższe przykładowe wywołanie interfejsu API tworzy alert o anomalii, który jest aktywowany, gdy kody stanu 5xx występują z umiarkowaną częstotliwością dla wszystkich serwerów proxy API w środowisku produkcyjnym w dowolnym regionie. Powiadomienie zostanie wysłany na podany adres e-mail po uruchomieniu alertu:

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
    }'

Używanie interfejsu Events API do wykrywania anomalii

Użyj funkcji /metrics/events Interfejs API umożliwiający pobieranie wszystkich zdarzeń w organizacji w określonym przedziale czasu. Lista zdarzeń zawiera: anomalie wykryte przez Edge oraz wszystkie aktywowane alerty. Mogą one obejmować zarówno alerty naprawione, jak i dotyczące anomalii.

Domyślnie interfejs API zwraca wszystkie zdarzenia z poprzedniej godziny. Korzystaj z dokumentów from oraz to, aby określić inny czas trwania. from i to wartości parametrów zapytania, aby określić inny czas trwania.

Na przykład poniższe wywołanie interfejsu API zwraca wszystkie zdarzenia w organizacji myorg z ostatnich 12 godzin:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&from=-12h&to=now"

Ustaw $ACCESS_TOKEN jako token dostępu OAuth 2.0 zgodnie z opisem w Uzyskiwanie tokena dostępu OAuth 2.0 Informacje na temat: opcje cURL użyte w tym przykładzie znajdziesz w sekcji Use cURL (Używanie cURL).

Następne wywołanie zwraca wszystkie zdarzenia związane z anomalią z poprzednich 24 godzin, które mają średni próg:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&type=anomaly&threshold=moderate&from=-24h&to=now"

Ten interfejs API wymaga tylko parametru zapytania org. Wraz z parametrami zapytania opisane w dokumencie poświęconym interfejsom API na stronie /metrics/events. ten interfejs API obsługuje następujące opcje wykrywania anomalii:

Nazwa Opis Domyślny
threshold

Filtruj zdarzenia według określonego progu: slight, moderate lub severe.

Dozwolone tylko wtedy, gdy ustawisz type=anomaly.

Wszystkie poziomy ważności
type Filtruj zdarzenia według określonego typu: alert lub anomaly. Podaj wiele wartości w postaci listy rozdzielanej przecinkami. Wszystkie typy