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
This section describes the error messages and flow variables that are set when this policy triggers an error. This information is important to know if you are developing fault rules for a proxy. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
None.
Deployment errors
| Error name | Cause | Fix |
|---|---|---|
UnsupportedDatatype |
If the type of the variable specified by the ref attribute in the <Statistic> element
of the Statistics Collector policy is unsupported, then the deployment of the API proxy
fails. The supported data types are string, integer,
float, long, double, and boolean. |
build |
InvalidName |
If the name used to reference the data collected for the specified variable defined
within the <Statistic> element of the Statistics Collector policy conflicts with a
system-defined variable, then the deployment of the API proxy fails. Some of the known
system-defined variables are organization and environment. |
build |
DatatypeMissing |
If the type of the variable specified by the ref attribute in the <Statistic> element
of the Statistics Collector policy is missing, then the deployment of the API proxy fails. |
build |
Fault variables
None.
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: