Configurare gli avvisi sul traffico

Stai visualizzando la documentazione di Apigee Edge.
Consulta la documentazione di Apigee X.
info

Utilizza un avviso sul traffico per generare una notifica quando il traffico per un ambiente, un proxy o una regione cambia di una percentuale specificata in un intervallo di tempo.

Hai impostato l'intervallo di tempo su:

  • 1 ora
  • 1 giorno
  • 7 giorni
  • 15 giorni (solo API)
  • 30 giorni (solo API)

L'avviso funziona confrontando il traffico per l'intervallo di tempo attuale con il traffico per l'intervallo di tempo precedente. Ad esempio, specifichi un intervallo di tempo di un'ora. L'avviso confronta poi il traffico dell'ultima ora con il traffico dell'ora precedente per calcolare la variazione percentuale del traffico:

percentChange = ((currentTraffic - previousTraffic) / previousTraffic) * 100

Un valore positivo indica un aumento del traffico, mentre un valore negativo indica una diminuzione.

Successivamente, imposta la soglia che attiva un avviso sul traffico come aumento o diminuzione percentuale del traffico API per il periodo di tempo specificato.

Prima di impostare questa percentuale, assicurati che sia in linea con i tuoi normali pattern di traffico. Ad esempio, se il traffico API normalmente fluttua durante il giorno con picchi di traffico orari fino al 100% in determinati orari di punta, questi picchi sono normali e non devono attivare un avviso. Tuttavia, se configuri un avviso da attivare per qualsiasi aumento del 50% del traffico orario, riceverai avvisi non necessari per il tuo traffico normale.

Per saperne di più sugli avvisi, vedi Configurare avvisi e notifiche.

Aggiungere avvisi e notifiche sul traffico

Per aggiungere avvisi e notifiche sul traffico:
  1. Fai clic su Analizza > Regole di avviso nell'interfaccia utente Edge.
  2. Fai clic su +Avviso.
  3. Inserisci le seguenti informazioni generali sull'avviso:
    Campo Descrizione
    Nome avviso Il nome dell'avviso. Utilizza un nome che descriva il trigger e che sia significativo per te. Il nome non può superare i 128 caratteri.
    Descrizione Descrizione dell'avviso.
    Tipo di avviso: Seleziona Traffico totale. Per saperne di più, consulta Informazioni sui tipi di avvisi.
    Ambiente Seleziona l'ambiente dall'elenco a discesa.
    Stato Attiva/disattiva l'avviso.
  4. Definisci la soglia e la dimensione per la condizione che attiverà l'avviso.
    Campo condizione Descrizione
    Soglia

    Specifica di generare l'avviso quando il traffico è aumentato del o diminuito del una determinata percentuale rispetto a un intervallo di tempo precedente.

    Imposta la percentuale aumentata di su un valore maggiore o uguale a 0%. Imposta la percentuale ridotta di su un valore maggiore o uguale a 0% e minore o uguale a 100%.

    Puoi scegliere un intervallo di tempo di:

    • 1 ora
    • 1 giorno
    • 1 settimana
    Dimensione

    Fai clic su +Aggiungi dimensione e specifica i dettagli della dimensione per cui restituire i risultati, inclusi il proxy API e la regione.

    Imposta una dimensione specifica su:

    • Proxy: impostalo su un proxy specifico o su Tutti i proxy. Proxy non supporta il valore "Any". In alternativa, puoi aggiungere un avviso separato per ogni proxy che ti interessa.
    • Regione: imposta una regione specifica o Tutte le regioni. Regione non supporta il valore "Qualsiasi". Puoi invece aggiungere un avviso separato per ogni regione che ti interessa.
  5. Fai clic su + Notifica per aggiungere una notifica di avviso.
    Dettagli notifica Descrizione
    Canale Seleziona il canale di notifica che vuoi utilizzare e specifica la destinazione: email, Slack, PagerDuty o webhook.
    Destinazione Specifica la destinazione in base al tipo di canale selezionato:
    • Email: indirizzo email, ad esempio joe@company.com
    • Slack - URL del canale Slack, ad esempio https://hooks.slack.com/services/T00000000/B00000000/XXXXX
    • PagerDuty: codice PagerDuty, ad esempio abcd1234efgh56789
    • Webhook - URL webhook, ad esempio https://apigee.com/test-webhook

      Nota: puoi specificare una sola destinazione per notifica. Per specificare più destinazioni per lo stesso tipo di canale, aggiungi altre notifiche.

  6. Per aggiungere altre notifiche, ripeti il passaggio precedente.
  7. Se hai aggiunto una notifica, imposta i seguenti campi:
    Campo Descrizione
    Playbook (Facoltativo) Campo di testo in formato libero per fornire una breve descrizione delle azioni consigliate per risolvere gli avvisi quando vengono attivati. Puoi anche specificare un link al tuo wiki interno o alla pagina della community in cui fai riferimento alle best practice. Le informazioni in questo campo verranno incluse nella notifica. I contenuti di questo campo non possono superare i 1500 caratteri.
    Limitazione Frequenza con cui inviare le notifiche. Seleziona un valore dall'elenco a discesa.
  8. Fai clic su Salva.

Visualizzare gli avvisi nella dashboard Eventi

Quando Edge rileva una condizione di avviso, la registra automaticamente nella dashboard Eventi nell'interfaccia utente di Edge. L'elenco degli eventi visualizzati nella dashboard Eventi include tutti gli avvisi, sia corretti che certificati.

Per visualizzare un avviso:

  1. Fai clic su Analizza > Eventi nell'interfaccia utente Edge. Viene visualizzata la nuova dashboard Eventi:

  2. Filtra la dashboard Eventi per:

    • Ambiente
    • Regione
    • Periodo di tempo
  3. Seleziona una riga nella dashboard Eventi per visualizzare il keystore contenente il certificato in scadenza e analizzare ulteriormente l'avviso. Dalla pagina Keystore, puoi caricare un nuovo certificato ed eliminare quello in scadenza.

Utilizzare le API di avviso con gli avvisi sul traffico

La maggior parte delle API che utilizzi per creare e gestire gli avvisi sul traffico sono le stesse che utilizzi con altri tipi di avviso:

Tuttavia, alcune API hanno proprietà aggiuntive utilizzate per supportare gli avvisi di anomalie, tra cui:

Creare o aggiornare un avviso sul traffico

Utilizza le stesse API per creare o aggiornare un avviso sul traffico come fai attualmente per altri tipi di avviso. Il corpo della chiamata API per creare o aggiornare un avviso sul traffico è lo stesso utilizzato per altri avvisi, con le seguenti modifiche:

  • Aggiungi le seguenti nuove proprietà per specificare che l'avviso è un avviso sul traffico:

    "alertType": "runtime"
    "alertSubType": "trafficfixed"

    I valori predefiniti di queste proprietà sono:

    "alertType": "runtime"
    "alertSubType": "fixed"
  • Nell'elemento dimensions dell'array conditions:
    • Devi impostare i valori delle proprietà org, env, proxy e region. Sono supportate solo queste proprietà. Puoi impostare proxy e region su ALL.
    • Devi impostare il valore della proprietà traffic su total.
  • Nell'array conditions:

    • La proprietà metrics deve avere il valore trafficChange.
    • La proprietà comparator deve essere impostata su increasedBy o decreasedBy.
    • La proprietà threshold contiene un valore positivo che specifica un aumento o una diminuzione percentuale del traffico in cui un valore di 1.0 corrisponde al 100%. Per increasedBy il valore deve essere maggiore o uguale a 0,0 (0%). Per decreasedBy il valore deve essere maggiore o uguale a 0,0 (0%) e minore o uguale a 1,0 (100%).
    • La proprietà durationSeconds deve essere impostata su uno dei seguenti valori: 3600 (1 ora), 86400 (1 giorno), 604800 (7 giorni), 1296000 (15 giorni), 2592000 (30 giorni) .
  • La proprietà reportEnabled non è supportata per gli avvisi sul traffico.
L'esempio seguente mostra come configurare un avviso che viene attivato quando il traffico per un'organizzazione e un ambiente aumenta del 50% in un periodo di un'ora. Quando viene attivato l'avviso, viene inviata una notifica al codice PagerDuty 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":"My Traffic Alert",
     "description":"My traffic alert",
     "environment":"prod",
     "enabled":true,
     "alertType":"runtime",
     "alertSubType":"trafficfixed",
     "conditions":[
     {
        "description":"",
        "dimensions": {
            "org":"nyorg",
            "env":"prod",
            "proxy":"ALL",
            "region":"ALL",
            "traffic":"total"
        },
        "metric": "trafficChange",
        "threshold": 0.5,
        "durationSeconds": 3600,
        "comparator": "increasedBy"
     }
     ],
     "notifications":[{ "channel":"pagerduty", "destination":"abcd1234efgh56789"}],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
}'

Imposta $ACCESS_TOKEN sul token di accesso OAuth 2.0, come descritto in Ottieni un token di accesso OAuth 2.0. Per informazioni sulle opzioni cURL utilizzate in questo esempio, vedi Utilizzare cURL.

Per ulteriori informazioni sull'utilizzo di questa API, consulta Visualizzare gli eventi.

Ricevere avvisi sul traffico

Per impostazione predefinita, l'API Get Alerts restituisce informazioni su tutti gli avvisi definiti. Questa API ora accetta parametri di query per consentirti di filtrare i risultati:

  • enabled: se true specifica di restituire solo gli avvisi attivati. Il valore predefinito è false.
  • alertType: specifica il tipo di avviso da restituire. I valori consentiti sono runtime, il valore predefinito, e 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.

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 sul traffico, sia attivi che disattivi:

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

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 questo esempio, vedi Utilizzare cURL.