Panoramica sull'analisi delle API

Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X.
informazioni

Questo argomento introduce l'analisi dell'API Edge.

Video: guarda un breve video per una panoramica dei servizi di analisi dell'API Edge.

Migliora l'API con l'analisi

L'analisi delle API Edge raccoglie e calcola un'ampia gamma di informazioni che passano attraverso i proxy API. Puoi visualizzare questi dati con grafici e diagrammi nell'UI di Edge oppure puoi scaricare i dati non elaborati per l'analisi offline utilizzando le API di gestione perimetrale.

Analytics ti consente di rispondere a domande comuni, ad esempio:

  • Qual è l'andamento del mio traffico API nel tempo?
  • Quali sono i metodi API più popolari?
  • Chi sono i miei principali sviluppatori?
  • Qual è il tempo di risposta dell'API più veloce? Più lenta?
  • Dove vedo più traffico API a livello geografico?

Le risposte a domande come queste ti aiutano a migliorare le API, risolvere i problemi e prendere decisioni aziendali migliori in merito al tuo programma API.

L'analisi delle API aiuta tutti a migliorare

Attraverso un processo continuo di raccolta, analisi e visualizzazione dei dati, l'analisi delle API Edge aiuta il tuo team dedicato alle API a migliorare le proprie API e gli sviluppatori di app a migliorarle:

alt_text
  • Team API: il team API sta attingendo a sistemi interni per creare API interessanti. Il team API vuole conoscere le prestazioni complessive del programma API, le prestazioni delle singole API e di come migliorarle.
  • Sviluppatori di app. Condividendo le informazioni di analisi con gli sviluppatori di app puoi ricevere app migliori. Questi sviluppatori stanno innovando con le tue API e realizzano app creative che aiutano a generare entrate per la tua azienda. Analytics aiuta gli sviluppatori di app a sapere come stanno andando le loro app e quanto contribuiscono ai profitti della tua azienda. Gli sviluppatori vogliono sapere come migliorare le proprie app.
  • Team operativo: il team operativo vuole comprendere i pattern di traffico e prevedere quando aggiungere risorse di backend o apportare altre modifiche critiche.
  • Proprietario dell'attività: il proprietario dell'attività vuole capire come sta rendendo il suo investimento nelle API e dove investire in futuro per le API.

Che tipo di dati vengono raccolti e analizzati?

L'analisi delle API Edge raccoglie e analizza un ampio spettro di dati che passano attraverso i proxy API, ad esempio:

  • Data/ora della risposta
  • Latenza di richiesta
  • Dimensioni richiesta
  • Errori di targeting
  • Nome prodotto API
  • Indirizzo email dello sviluppatore
  • Nome dell'app
  • Molti altri

Per un elenco completo dei dati raccolti da API Analytics, consulta il riferimento su metriche, dimensioni e filtri di Analytics.

Come faccio a raccogliere i dati di analisi personalizzati?

Edge raccoglie in modo nativo un'ampia gamma di dati. Potresti anche voler raccogliere dati di analisi personalizzati specifici per proxy API, app, prodotti o sviluppatori. Ad esempio, potresti voler raccogliere dati di analisi da parametri di query, intestazioni delle richieste, corpi di richieste e risposte o variabili che definisci nelle API.

Puoi raccogliere dati di analisi personalizzati utilizzando il criterio StatisticsCollector. Una volta estratti i dati personalizzati, puoi utilizzare l'interfaccia utente o l'API di analisi per esaminarli. Consulta Analisi dei contenuti dei messaggi dell'API utilizzando strumenti di analisi personalizzati per un esempio completo che mostra come raccogliere i dati di analisi personalizzati.

Differenze tra i dati di Analytics e i dati di monitoraggio delle API

Questa sezione descrive alcune piccole differenze tra i dati raccolti da Edge Analytics e quelli raccolti da API Monitoring. Poiché API Monitoring e Analytics utilizzano pipeline di dati diverse, potresti notare lievi differenze tra i report personalizzati generati da Monitoring e quelli generati da Analytics. Ad esempio, potresti notare delle discrepanze nei risultati segnalati relativi agli errori di timeout, sia per i timeout del backend (codice di stato HTTP 504 nella richiesta) sia per i timeout del client (codice di stato HTTP 499). Possono essere visualizzati con il codice di stato 200 nei report personalizzati di Analytics ma con il codice di stato 504 o 499 nei report personalizzati di Monitoring.

Quando sono disponibili i miei dati di analisi e per quanto tempo?

Esistono due intervalli di tempo che controllano quando e per quanto tempo puoi visualizzare i tuoi dati di analisi:

  • Intervallo di ritardo dati: dopo aver effettuato una chiamata a un proxy API, potrebbero essere necessari fino a 10 minuti prima che i dati siano accessibili per la visualizzazione o tramite chiamate API di gestione.
  • Conservazione dei dati: il periodo di tempo in cui i dati di analisi vengono conservati da Edge varia a seconda del piano. A seconda del tuo piano, i dati di analisi potrebbero essere disponibili per gli ultimi 30, 60, 90 o 365 giorni.

Come si accede ai miei dati di analisi?

L'analisi delle API Edge fornisce strumenti di visualizzazione dei dati integrati nell'interfaccia utente Edge. Questi strumenti includono dashboard di analisi predefinite e report personalizzati che visualizzano i dati in grafici e ti consentono di visualizzare i dati raggruppati in diverse dimensioni (ad esempio, per proxy API, indirizzo IP o codice di stato HTTP).

Inoltre, puoi scaricare i dati di analisi utilizzando l'API Edge Management. Una volta scaricati, puoi importare i dati nei tuoi strumenti di visualizzazione dei dati o nel tuo sistema di analisi.

Dashboard di analisi

L'interfaccia utente perimetrale fornisce un insieme di dashboard predefinite che possono essere utilizzate per visualizzare i dati di analisi. Ad esempio, le seguenti immagini mostrano la dashboard Prestazioni del proxy:

Questa dashboard include grafici relativi a:

  • Traffico totale: il numero totale di richieste API ricevute da Edge per un ambiente API in un'organizzazione.
  • Traffico riuscito: il numero totale di richieste che hanno generato una risposta riuscita. Le risposte di errore non vengono conteggiate.
  • Errori di traffico: il numero totale di tutte le richieste API non riuscite, ovvero la richiesta non consegna una risposta. Il conteggio include sia errori del proxy (lato Apigee) sia errori di destinazione (servizi di backend).
  • TPS medio: il numero medio di richieste API e di risposte risultanti al secondo.

Altre dashboard predefinite includono:

Per ulteriori informazioni su queste dashboard predefinite, consulta Utilizzo delle dashboard di analisi.

Report personalizzati

I report personalizzati ti consentono di visualizzare in dettaglio metriche API specifiche e di vedere i dati esatti che vuoi vedere. Puoi creare un report personalizzato utilizzando uno qualsiasi dei dati di analisi integrati in Edge o dati di analisi personalizzati raccolti dal criterio StatisticsCollector.

Quando crei un report personalizzato, puoi selezionare i dati che vuoi visualizzare (metriche), raggruppare i dati in modi significativi (dimensioni) e, facoltativamente, limitare i dati restituiti in base a caratteristiche specifiche dei dati (filtraggio).

Puoi anche impostare il tipo di grafico visualizzato nel report personalizzato come grafico a colonne o a linee. Le seguenti immagini mostrano esempi di grafici relativi alle transazioni al secondo raggruppate per proxy API:

  • Colonna - Ogni proxy API è rappresentato da una colonna diversa:

    Grafico a colonne personalizzato

  • Riga - Ogni proxy API è rappresentato da una riga diversa:

    Grafico a linee personalizzato

Per saperne di più, consulta Creare e gestire i report personalizzati.

API Analytics

Utilizza l'API Edge Management per scaricare i dati di analisi. Ad esempio, puoi usare l'API per creare i tuoi strumenti di visualizzazione da incorporare in portali o app personalizzate.

Ecco un esempio di chiamata API per recuperare i dati di analisi per i proxy API:

curl  https://api.enterprise.apigee.com/v1/o/org_name/environments/test/stats/apiproxy?"select=sum(message_count)&timeRange=6/24/2018%2000:00~6/24/2018%2023:59&timeUnit=hour" \
-u email:password

Questa chiamata restituisce:

  • La somma di richieste (conteggio messaggi) per proxy API
  • Per un periodo di 24 ore
  • Raggruppati per ora

Il parametro di query timeRange specifica il periodo di tempo nel formato:

?timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM

Osserva il %20 prima del giorno HH:MM. Il parametro timeRange richiede uno spazio con codifica URL prima di HH:MM o un carattere +, ad esempio MM/DD/YYYY+HH:MM~MM/DD/YYYY+HH:MM.

Per saperne di più, consulta la pagina relativa all' utilizzo delle API delle metriche per misurare le prestazioni del programma API.

Esporta i dati di analisi in Google Cloud

Puoi utilizzare l'API Edge Management per esportare tutti i dati di analisi per un'intera giornata da Edge al tuo repository di dati, ad esempio Google Cloud Storage o BigQuery. Potrai quindi sfruttare le potenti funzionalità di query e machine learning offerte da Google Cloud BigQuery e TensorFlow per eseguire l'analisi dei tuoi dati.

Per saperne di più, vedi Esportare i dati da Analytics.

Come faccio a condividere i dati con gli sviluppatori di app?

Quando consideri gli sviluppatori di app come tuoi clienti, devi assicurarti che dispongano degli strumenti e delle informazioni per utilizzare al meglio la tua API.

alt_text

Gli sviluppatori di app non sono preoccupati solo per la qualità delle proprie app, ma sono molto interessati alle loro API. I portali per gli sviluppatori basati su Drupal includono una pagina facoltativa Prestazioni dell'app progettata per dare agli sviluppatori di app l'accesso a metriche importanti per le loro app. Questa pagina fornisce agli sviluppatori informazioni su:

  • Errori:quali errori dell'API vengono rilevati dalla mia app?
  • Prestazioni: l'API è lenta in questo momento? Quali metodi API sono in genere lenti o lenti al momento?
  • Disponibilità: l'API è attiva o non disponibile in questo momento?
  • Quota: la tua API ha una quota? In qualità di sviluppatore di app, qual è il mio rendimento rispetto alla quota?

Per ulteriori informazioni, vedi:

Inoltre, puoi condividere dati e analisi con i tuoi sviluppatori nei seguenti modi:

Come posso generare dati analitici completi?

Che cosa si intende per analisi completa? Puoi, ad esempio, creare un proxy API ed Edge raccoglierà i dati di analisi relativi a quel proxy. E per quanto riguarda le metriche per lo sviluppatore o l'app che hanno chiamato il proxy API? Se Edge non sa chi ha effettuato una chiamata API, non può raccogliere quei dati.

Sono necessari alcuni passaggi per consentire a Edge di capire quali sviluppatori e quali app stanno chiamando i tuoi proxy API. Di seguito è riportato un elenco di questi passaggi, con link a informazioni più dettagliate:

  1. Crea uno o più prodotti API, ovvero un raggruppamento di proxy API insieme a un piano di servizio. Consulta Gestire i prodotti basati su API.
  2. Registra gli sviluppatori di app su Edge. Consulta Registrare gli sviluppatori di app.
  3. Registrare le app e generare chiavi API per gli sviluppatori. Vedi Registrare app e gestire le chiavi API.
  4. Aggiungi criteri di sicurezza ai proxy API per verificare le chiavi API e/o i token di sicurezza. Vedi i seguenti argomenti:Verifica dei criteri relativi alla chiave API, Criterio OAuthV2 e Verifica criterio JWT.
  5. Se utilizzi Edge Microgateway, assicurati di aver attivato il plug-in di analisi (abilitato per impostazione predefinita). Se il plug-in di analisi è disattivato, Edge Microgateway non invierà i dati di analisi all'analisi di Edge.

I seguenti tutorial ti guidano attraverso i passaggi necessari che ti consentono di visualizzare dati e analisi per sviluppatori e app: Proteggere un'API richiedendo chiavi API e Proteggere un'API con OAuth.

Confronta l'analisi delle API con il monitoraggio delle API

Puoi utilizzare sia il monitoraggio delle API che l'analisi delle API di Edge. API Monitoring esamina i dati di analisi per fornire insight contestuali in tempo reale sulle prestazioni delle API, consentendoti di diagnosticare rapidamente i problemi e facilitare le azioni correttive per la continuità aziendale. Il monitoraggio delle API è progettato per trovare rapidamente i problemi nelle API e nei backend. L'analisi delle API è progettata per acquisire una vasta gamma di dati di analisi per l'utilizzo da parte di diversi team, ma i dati vengono in genere utilizzati per l'analisi in scenari non in tempo reale.

Una delle principali differenze tra il monitoraggio delle API e l'analisi delle API è il meccanismo di avviso integrato in API Monitoring. Con gli avvisi, specifichi un codice di stato HTTP (2xx/4xx/5xx), una latenza o una soglia di codice di errore che, se superata, attiva una notifica di avviso al team operativo. Le notifiche di avviso possono essere inviate tramite diversi canali, come email, Slack, cercapersone o webhook, in modo da poter rispondere immediatamente ai problemi.

Consulta la pagina Confronta il monitoraggio delle API con l'analisi delle API Edge per un confronto più dettagliato tra questi servizi.

Maggiori informazioni