Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
La maggior parte delle API che utilizzi per creare e gestire gli avvisi di anomalie e per raccogliere le metriche delle anomalie sono le stesse che utilizzi con gli avvisi fissi. Le seguenti API di avviso funzionano allo stesso modo sia per gli avvisi fissi sia per quelli di anomalie:
- Recupera un avviso - recupera una definizione di avviso fisso o di anomalie.
- Recupera la cronologia degli avvisi: recupera le metriche della cronologia degli avvisi.
- Elimina un avviso: elimina una definizione di avviso fisso o di anomalie.
- Recupera l'istanza di avviso: recupera informazioni su un avviso attivato.
- Recupera il conteggio degli avvisi - recupera il conteggio totale degli avvisi.
Tuttavia, alcune API hanno proprietà aggiuntive utilizzate per supportare gli avvisi di anomalie, tra cui:
- Recupera avvisi - elenca tutti gli avvisi, inclusi quelli fissi e quelli di anomalie.
- Crea un avviso: crea un avviso fisso o di anomalie.
- Aggiorna un avviso - Aggiorna una definizione di avviso fisso o di anomalie.
Impostazione di $ACCESS_TOKEN
Tutte le chiamate API mostrate di seguito passano le credenziali in una variabile di ambiente denominata $ACCESS_TOKEN.
Imposta $ACCESS_TOKEN sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0.
Per informazioni sulle opzioni cURL utilizzate in questi esempi, consulta
Utilizzare cURL.
Recupera avvisi
Per impostazione predefinita, l'API Recupera avvisi restituisce informazioni su tutti gli avvisi definiti. Questa API ora accetta parametri di query per consentirti di filtrare i risultati:
enabled- setrue, specifica di restituire solo gli avvisi abilitati. Il valore predefinito èfalse.alertType- specifica il tipo di avviso da restituire. I valori consentiti sonoruntime, (valore predefinito)cert.alertSubType: specifica il sottotipo di avviso da restituire. Il valore predefinito non è impostato, il che significa che vengono restituiti tutti i sottotipi di avviso. Specificaanomalyper restituire gli avvisi di anomalie.
Ad esempio, utilizza la seguente chiamata API per restituire solo gli avvisi abilitati per l'organizzazione denominata myorg:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'
La seguente chiamata restituisce solo gli avvisi di anomalie, sia abilitati sia disabilitati:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=anomaly'
Creare o aggiornare un avviso di anomalie
Utilizza le stesse API per creare o aggiornare un avviso di anomalie come fai attualmente per un avviso fisso. Il corpo della chiamata API per creare o aggiornare un avviso di anomalie è lo stesso utilizzato per un avviso fisso, con le seguenti modifiche:
Devi aggiungere le seguenti nuove proprietà per specificare che l'avviso è un avviso di anomalie:
"alertType": "runtime" "alertSubType": "anomaly"
I valori predefiniti di queste proprietà sono:
"alertType": "runtime" "alertSubType": "fixed"
Nell'array
conditions:La proprietà
metricsaccetta solo i valori di:count: genera un avviso sui conteggi degli errori HTTP.totalLatency- genera un avviso per la latenza.
- La proprietà
thresholdaccetta una stringa anziché un numero. I valori supportati includono:slight,moderateesevere. - Le proprietà
durationSecondsecomparatornon sono supportate.
Nell'elemento
dimensionsdell'arrayconditions:- Devi impostare il valore della proprietà
proxysuALL. - La proprietà
statusCodesupporta solo un valore di4xx, 503, 504, and 5xx. - Le proprietà
developerApp,collection,faultCodeCategory,faultCodeSubCategory,faultCodeNamenon sono supportate.
- Devi impostare il valore della proprietà
- La proprietà
reportEnablednon è supportata per gli avvisi di anomalie.
La seguente chiamata API di esempio crea un avviso di anomalie che viene attivato quando i codici di stato 5xx si verificano a una velocità moderata per tutti i proxy API nell'ambiente di produzione per qualsiasi regione. Quando l'avviso viene attivato, viene inviata una notifica all'indirizzo email specificato:
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
}'
Utilizzare l'API Events con le anomalie
Utilizza l'API /metrics/events per ottenere tutti gli eventi di un'organizzazione per un intervallo di tempo specificato. L'elenco degli eventi include le anomalie rilevate da Edge e gli avvisi attivati. Gli avvisi possono includere sia avvisi fissi sia avvisi di anomalie.
Per impostazione predefinita, l'API restituisce tutti gli eventi dell'ora precedente. Utilizza i parametri di query from e to per specificare una durata diversa. I valori dei parametri di query from e to per specificare una durata diversa.
Ad esempio, la seguente chiamata API restituisce tutti gli eventi dell'organizzazione myorg per le 12 ore precedenti:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&from=-12h&to=now"
Imposta $ACCESS_TOKEN sul token di accesso OAuth 2.0, come descritto in
Ottenere un token di accesso OAuth 2.0. Per informazioni su
lle opzioni cURL utilizzate in questo esempio, consulta Utilizzare cURL.
La chiamata successiva restituisce tutti gli eventi di anomalie con una soglia moderata per le ultime 24 ore:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&type=anomaly&threshold=moderate&from=-24h&to=now"
Per questa API è obbligatorio solo il parametro di query org. Oltre ai parametri di query descritti nella documentazione dell'API all'indirizzo /metrics/events, questa API supporta le seguenti opzioni per supportare il rilevamento delle anomalie:
| Nome | Descrizione | Predefinito |
|---|---|---|
threshold
|
Filtra gli eventi in base alla soglia specificata: Consentito solo se imposti |
Tutte le gravità |
type
|
Filtra gli eventi in base al tipo specificato: alert o anomaly.
Specifica più valori come elenco separato da virgole.
|
Tutti i tipi |