Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Cosa
Consente di raccogliere statistiche per i dati in un messaggio, come ID prodotto, prezzo, azione REST , URL client e di destinazione e lunghezza del messaggio. I dati possono provenire da variabili di flusso predefinite da Apigee o da variabili personalizzate definite dall'utente.
I dati statistici vengono passati al server di analisi, che li analizza e genera report. Puoi visualizzare i report utilizzando l'interfaccia utente di gestione di Edge o l'API Edge.
Esempi
Esempio di base
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="productID" ref="product.id" type="string">999999</Statistic> <Statistic name="price" ref="product.price" type="string">0</Statistic> </Statistics> </StatisticsCollector>
In questo esempio, raccogli informazioni statistiche su due variabili personalizzate: product.id e product.price. A ogni richiesta, la policy Statistics Collector scrive il valore di queste due variabili nel server di analisi.
Questo esempio imposta anche un valore predefinito facoltativo per ogni variabile, dove il valore predefinito di product.id è 999999 e il valore predefinito product.price è 0. Se una variabile non è definita e non specifichi un valore predefinito, non vengono registrati dati per la variabile. Se specifichi un valore predefinito, questo viene registrato quando la variabile non è definita.
Dopo aver raccolto i dati statistici, puoi utilizzare l'interfaccia utente di gestione di Edge o l'API per recuperarli. Quando recuperi le statistiche, fai riferimento ai dati raccolti per queste variabili rispettivamente come productID e price.
Accesso alle statistiche
In questo esempio, utilizzi l'API di gestione di Edge per visualizzare i dati statistici per la
raccolta denominata productID. Questa richiesta crea un report personalizzato per
gli ID prodotto in base alla somma dei conteggi dei messaggi inviati per ogni ID prodotto per ogni
giorno. Sostituisci il nome dell'organizzazione con la variabile {org_name} e
sostituisci l'email e la password del tuo account su Apigee Edge con
email:password.
Imposta il parametro timeRange in modo da includere l'intervallo di tempo in cui sono stati raccolti i dati. Per impostazione predefinita, i dati risalenti a più di sei mesi prima della data corrente non sono accessibili. Se
vuoi accedere ai dati risalenti a più di sei mesi prima della data corrente, contatta l'assistenza di Apigee Edge.
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/environments/test/stats/productID?"select=sum(message_count)&timeRange=1/19/2015%2000:00~6/21/2015%2000:00&timeUnit=day"
-u email:password
Nella risposta, il campo name contiene l'ID prodotto e il valore mostra il numero di richieste per ogni giorno:
{
"environments" : [ {
"dimensions" : [ {
"metrics" : [ {
"name" : "sum(message_count)",
"values" : [ {
"timestamp" : 1353369600000,
"value" : "4.0"
} ]
} ],
"name" : "52"
}, {
"metrics" : [ {
"name" : "sum(message_count)",
"values" : [ {
"timestamp" : 1353369600000,
"value" : "19.0"
} ]
} ],
"name" : "14"
}, ...
} ],
"metaData" : {
"samplingRate" : "100"
}
}Estrazione dei dati per la raccolta
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ExtractVariables async="false" continueOnError="false" enabled="true" name="GetWeatherData"> <VariablePrefix>weather</VariablePrefix> <XMLPayload> <Namespaces> <Namespace prefix="yweather">http://xml.weather.yahoo.com/ns/rss/1.0</Namespace> </Namespaces> <Variable name="location" type="string"> <XPath>/rss/channel/yweather:location/@city</XPath> </Variable> <Variable name="condition" type="string"> <XPath>/rss/channel/item/yweather:condition/@text</XPath> </Variable> </XMLPayload> </ExtractVariables>
La policy Statistics Collector richiede che i dati raccolti vengano archiviati nelle variabili. Queste variabili possono essere predefinite da Apigee o variabili personalizzate definite dall'utente.
In questo esempio, utilizzi la policy Extract Variables per estrarre i dati da un payload XML che contiene informazioni meteo. Questa policy:
- Estrae il nome della città e lo scrive in una variabile denominata weather.location
- Estrae le condizioni attuali e le scrive in una variabile denominata weather.condition
Puoi quindi utilizzare la policy Statistics Collector per raccogliere informazioni sulle variabili, come mostrato di seguito:
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="weatherLocation" ref="weather.location" type="string"></Statistic> <Statistic name="weatherCondition" ref="weather.condition" type="string"></Statistic> </Statistics> </StatisticsCollector>
Per un tutorial completo che mostra come estrarre i dati da un payload XML per la policy Statistics Collector, consulta Analizzare i contenuti dei messaggi delle API mediante analisi personalizzate.
Informazioni sulla policy Statistics Collector
Quando viene eseguita, la policy Statistics Collector registra il valore corrente di una o più variabili. Queste variabili possono essere variabili di flusso predefinite da Apigee o variabili personalizzate che definite dall'utente. Questi dati vengono scritti nel server di analisi di Edge.
Per accedere ai dati statistici raccolti dalla policy, utilizza l'API Edge o l'interfaccia utente di gestione di Edge. Ad esempio, puoi utilizzare l'interfaccia utente di gestione di Edge per creare un report personalizzato che mostri i dati raccolti in una varietà di formati.
Per un tutorial completo sull'utilizzo della policy Statistics Collector, consulta Analizzare i contenuti dei messaggi delle API mediante analisi personalizzate.
Dove inserire la policy
Puoi inserire una policy Statistics Collector nel flusso di richiesta o risposta di un proxy API. Tuttavia, se inserisci più policy Statistics Collector in un proxy, l'ultima eseguita determina i dati scritti nel server di analisi e i dati scritti dalle policy Statistics Collector precedenti vengono persi.
Uno scenario in cui potresti avere più policy Statistics Collector in un proxy API è quando ne hai una nel flusso di richiesta o risposta e un'altra in un gestore di errori. Se si verifica un errore nel proxy API, la policy Statistics Collector nel gestore di errori determina i dati raccolti. Puoi utilizzare la policy Statistics Collector per registrare informazioni sull'errore o per registrare qualsiasi altra informazione che ritieni necessaria. La policy Statistics Collector nel gestore di errori determina i dati raccolti indipendentemente dal fatto che la policy Statistics Collector nella richiesta/risposta sia già stata eseguita o meno.
Per saperne di più, consulta Gestire gli errori.
Riferimento elemento
Il riferimento elemento descrive gli elementi e gli attributi della policy Statistics Collector.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1"> <DisplayName>Statistics Collector 1</DisplayName> <Statistics> <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic> </Statistics> </StatisticsCollector>
Attributi <StatisticsCollector>
<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Stats-1">
La tabella seguente descrive gli attributi comuni a tutti gli elementi principali del criterio:
| Attributo | Descrizione | Predefinito | Presenza |
|---|---|---|---|
name |
Il nome interno del criterio. Il valore dell'attributo Se vuoi, puoi utilizzare l'elemento |
N/D | Obbligatorio |
continueOnError |
Imposta il valore su Imposta su |
falso | Facoltativo |
enabled |
Imposta il valore su Imposta |
true | Facoltativo |
async |
Questo attributo è obsoleto. |
falso | Deprecato |
<DisplayName> elemento
Da utilizzare in aggiunta all'attributo name per etichettare il criterio in
editor proxy della UI di gestione con un nome diverso e in linguaggio naturale.
<DisplayName>Policy Display Name</DisplayName>
| Predefinito |
N/D Se ometti questo elemento, il valore dell'attributo |
|---|---|
| Presenza | Facoltativo |
| Tipo | Stringa |
Elemento <Statistics>/<Statistic>
<Statistics> <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic> </Statistics>
| Attributo | Descrizione | Predefinito | Presenza |
|---|---|---|---|
| nome |
Il nome utilizzato per fare riferimento ai dati raccolti per la variabile specificata. Quando visualizzi
i dati di analisi, utilizza questo nome per fare riferimento ai dati raccolti sulla variabile
specificata dall' Se la variabile specificata da Restrizioni di denominazione Le seguenti restrizioni di denominazione si applicano alle variabili di analisi personalizzate:
|
N/D | Obbligatorio |
| ref |
La variabile di flusso per la quale stai raccogliendo statistiche. Questa variabile può essere una variabile di flusso predefinita da Apigee o una variabile personalizzata definita nel proxy API. L'attributo ref fa spesso riferimento a una variabile personalizzata definita dalla policy Extract Variables policy. Per saperne di più, consulta la policy Extract Variables policy. |
N/D | Obbligatorio |
| tipo |
Specifica il tipo di dati della variabile specificata dall'attributo ref. I valori validi sono: stringa/intero/float/long/double/booleano. Per i dati di tipo stringa, fai riferimento ai dati statistici come Dimensione in un report personalizzato. Per i tipi di dati numerici (intero/float/long/double), fai riferimento ai dati statistici in un report personalizzato come Dimensione o Metrica. Per saperne di più, consulta Gestire i report personalizzati. Il valore di type può essere omesso solo se ref fa riferimento a una variabile di flusso predefinita di Apigee o se il tipo è dichiarato nel payload XML della policy Extract Variables. |
stringa | Facoltativo |
Messaggi di errore
Questa sezione descrive i messaggi di errore e le variabili di flusso impostate quando questo criterio attiva un errore. Queste informazioni sono importanti se stai sviluppando regole di errore per un proxy. Per scoprire di più, consulta Informazioni importanti sugli errori relativi alle norme e Gestione degli errori.
Errori di runtime
Nessuno.
Errori di deployment
| Nome dell'errore | Causa | Correggi |
|---|---|---|
UnsupportedDatatype |
Se il tipo di variabile specificato dall'attributo ref nell'elemento <Statistic>
del criterio del Collector di statistiche non è supportato, il deployment del proxy API
non va a buon fine. I tipi di dati supportati sono string, integer,
float, long, double e boolean. |
build |
InvalidName |
Se il nome utilizzato per fare riferimento ai dati raccolti per la variabile specificata definita
all'interno dell'elemento <Statistic> del criterio del Collector di statistiche è in conflitto con una
variabile definita dal sistema, il deployment del proxy API non va a buon fine. Alcune delle variabili predefinite dal sistema sono organization e environment. |
build |
DatatypeMissing |
Se il tipo della variabile specificato dall'attributo ref nell'elemento <Statistic>
del criterio del Collector di statistiche non è presente, il deployment del proxy API non va a buon fine. |
build |
Variabili di errore
Nessuno.
Schema
Ogni tipo di policy è definito da uno schema XML (.xsd). Per riferimento, gli schemi delle policy
sono disponibili su GitHub.
Argomenti correlati
Per ulteriori informazioni, vedi: