<ph type="x-smartling-placeholder"></ph>
Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur
Apigee X-Dokumentation. Weitere Informationen
![](https://docs.apigee.com/static/api-platform/images/icon_policy_statistics-collector.jpg?authuser=0000&hl=de)
Was
Ermöglicht das Erfassen von Statistiken für Daten in einer Nachricht, z. B. Produkt-ID, Preis, REST Aktion, Client- und Ziel-URL und Nachrichtenlänge. Die Daten können aus Flussvariablen stammen, oder benutzerdefinierten Variablen, die Sie definieren.
Die Statistikdaten werden an den Analyseserver übergeben, der die Statistiken analysiert und erstellt Berichte. Sie können die Berichte mithilfe der Edge-Verwaltungsbenutzeroberfläche oder der Edge API anzeigen.
Beispiele
Einfaches Beispiel
<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 diesem Beispiel erfassen Sie statistische Informationen zu zwei benutzerdefinierten Variablen: product.id und product.price Bei jeder Anfrage Die Statistik-Collector-Richtlinie schreibt den Wert dieser beiden Variablen in die Analyse. Server.
In diesem Beispiel wird auch ein optionaler Standardwert für jede Variable festgelegt, wobei der Standardwert Wert von product.id: 999.999 und das Standardattribut product.price ist 0. Wenn eine Variable nicht definiert ist und Sie keinen Standardwert angeben, werden keine Daten die für die Variable erfasst wurden. Wenn Sie einen Standardwert angeben, ist der Standardwert wenn die Variable nicht definiert ist.
Nachdem Sie statistische Daten erfasst haben, können Sie die Edge-Management-Benutzeroberfläche oder -API verwenden um die Statistiken abzurufen. Beim Abrufen von Statistiken referenzieren Sie die für diese Variablen als productID und price.
Auf Statistiken zugreifen
In diesem Beispiel verwenden Sie die Edge-Management-API, um die statistischen Daten für die
Sammlung namens productID
. Diese Anforderung erstellt einen benutzerdefinierten Bericht für
basierend auf der Gesamtzahl der Nachrichten, die für die einzelnen Produkt-IDs
Tag. Ersetzen Sie die Variable {org_name}
durch Ihren Organisationsnamen.
ersetzen Sie die E-Mail-Adresse und das Passwort für Ihr Konto bei Apigee Edge für
email:password
.
Legen Sie den Parameter timeRange
so fest, dass das Zeitintervall enthalten ist, in dem Ihre Daten erfasst wurden.
gesammelt. Auf Daten, die älter als sechs Monate ab dem aktuellen Datum sind, kann nicht standardmäßig zugegriffen werden. Wenn
Wenn Sie auf Daten zugreifen möchten, die älter als sechs Monate sind, wenden Sie sich an den Apigee Edge-Support.
$ 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
In der Antwort wird der name enthält die Produkt-ID und der Wert zeigt die Anzahl der Anfragen für jeden Tag an:
{ "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" } }
Daten für die Erfassung extrahieren
<?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>
Die Statistics Collector-Richtlinie erfordert, dass die erfassten Daten in Variablen gespeichert werden. Diese Variablen können von Apigee oder von Ihnen definierter benutzerdefinierter Variablen vordefiniert werden.
In diesem Beispiel verwenden Sie die Richtlinie zum Extrahieren von Variablen, um Daten aus einer XML-Nutzlast zu extrahieren. die Wetterinformationen enthält. Für diese Richtlinie gilt Folgendes:
- Extrahiert den Namen der Stadt und schreibt ihn in eine Variable namens weather.location
- Extrahiert die aktuellen Bedingungen und schreibt sie in eine Variable namens weather.condition
Anschließend können Sie die Statistics Collector-Richtlinie verwenden, um Informationen über die Variablen enthalten:
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="weatherLocation" ref="weather.location" type="string"></Statistic> <Statistic name="weatherCondition" ref="weather.condition" type="string"></Statistic> </Statistics> </StatisticsCollector>
Ein vollständiges Tutorial zum Extrahieren von Daten aus einer XML-Nutzlast für die Statistics Collector-Richtlinie - siehe Analyse-API Nachrichteninhalt mit benutzerdefinierten Analysen.
Informationen zur Statistics Collector-Richtlinie
Bei der Ausführung zeichnet die Statistics Collector-Richtlinie den aktuellen Wert eines oder mehrerer Variablen. Diese Variablen können von Apigee vordefinierte Flussvariablen oder benutzerdefinierte Variablen sein, die die Sie definieren. Diese Daten werden auf den Edge-Analyseserver geschrieben.
Um auf die von der Richtlinie erfassten statistischen Daten zuzugreifen, verwenden Sie die Edge API oder den Edge auf der Benutzeroberfläche. Sie können beispielsweise mit der Edge-Management-Benutzeroberfläche einen benutzerdefinierten Bericht erstellen, der zeigt die gesammelten Daten in verschiedenen Formaten.
Ein vollständiges Tutorial zur Verwendung der Statistics Collector-Richtlinie finden Sie unter Analysieren Sie die API . Nachrichteninhalt mit benutzerdefinierten Analysen.
Wo die Richtlinie eingefügt werden soll
Sie können eine Statistik-Collector-Richtlinie in den Anforderungs- oder Antwortablauf einer API aufnehmen. Proxy. Wenn Sie jedoch mehrere Statistics Collector-Richtlinien in einen Proxy stellen, dann ist die letzte die auf den Analyseserver geschrieben werden, und die Daten, die von einem beliebigen gehen vorherige Statistics Collector-Richtlinien verloren.
Ein Szenario, in dem Sie möglicherweise mehrere Statistics Collector-Richtlinien in einem API-Proxy haben, ist wenn es eine im Anforderungs- oder Antwortfluss und ein anderes in einem Fehlerbehandlungsprogramm gibt. Wenn ein Fehler im API-Proxy erfolgt, bestimmt der Statistics Collector im Fehlerbehandlungsprogramm die Daten gesammelt. Sie können diesen Statistics Collector verwenden, um Informationen über den Fehler aufzuzeichnen oder um und alle anderen Informationen aufzuzeichnen, die Sie für notwendig halten. Der Statistics Collector in der Fehlermeldung Handler ermittelt die erfassten Daten unabhängig davon, ob der Statistics Collector in der Anfrage/Antwort, die bereits ausgeführt wurde.
Weitere Informationen finden sich unter Fehlerbehandlung.
Elementverweis
In der Elementreferenz werden die Elemente und Attribute des Statistics Collectors beschrieben. .
<?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>
<StatisticsCollector> Attribute
<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Stats-1">
In der folgenden Tabelle werden Attribute beschrieben, die für alle übergeordneten Richtlinienelemente gelten:
Attribut | Beschreibung | Standard | Präsenz |
---|---|---|---|
name |
Der interne Name der Richtlinie. Der Wert des Attributs Optional können Sie das Element |
– | Erforderlich |
continueOnError |
Legen Sie Legen Sie |
false | Optional |
enabled |
Setzen Sie den Wert auf Legen Sie |
true | Optional |
async |
Dieses Attribut wurde verworfen. |
false | Veraltet |
<DisplayName>-Element
Wird zusätzlich zum Attribut name
verwendet, um die Richtlinie im Proxy-Editor der Verwaltungs-UI mit einem anderen Namen in einer natürlichen Sprache zu versehen.
<DisplayName>Policy Display Name</DisplayName>
Standardeinstellung |
– Wenn Sie dieses Element weglassen, wird der Wert des Namensattributs |
---|---|
Präsenz | Optional |
Typ | String |
<Statistics>/<Statistic> Unterelement
<Statistics> <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic> </Statistics>
Attribut | Beschreibung | Standard | Präsenz |
---|---|---|---|
Name |
Der Name, mit dem auf die Daten verwiesen wird, die für die angegebene Variable erfasst wurden. Beim Ansehen
Analytics-Daten verwenden, verwenden Sie diesen Namen, um auf die Daten zu verweisen, die über die Variable erfasst wurden.
angegeben durch Wenn die in Benennungseinschränkungen Für benutzerdefinierte Analysevariablen gelten die folgenden Einschränkungen:
|
– | Erforderlich |
Ref |
Die Flussvariable, für die Sie Statistiken erfassen. Diese Variable kann ein Fluss oder eine benutzerdefinierte Variable, die Sie in Ihrem API-Proxy definieren. Das ref-Attribut verweist häufig auf eine benutzerdefinierte Variable, die durch die Funktion zum Extrahieren von Variablen definiert wird. . Siehe Variablen extrahieren . |
– | Erforderlich |
Typ |
Gibt den Datentyp der Variablen an, die durch das Attribut ref angegeben wird. Gültige Werte sind: string/integer/float/long/double/boolean. Verweisen Sie für Daten vom Typ String auf die statistischen Daten als Dimension in einem benutzerdefinierten Bericht. Verweisen Sie für numerische Datentypen (Integer/Float/Long/Double) auf die statistische Daten in einem benutzerdefinierten Bericht entweder als Dimension oder als Messwert an. Weitere Informationen finden Sie unter Benutzerdefinierte Berichte verwalten. Der Wert von type kann nur weggelassen werden, wenn ref auf eine vordefinierte Die Apigee-Flussvariable oder der -Typ wird in der XML-Nutzlast der Variablen extrahieren deklariert. . |
String | Optional |
Fehlerreferenz
In diesem Abschnitt werden die Fehlermeldungen und Ablaufvariablen beschrieben, die festgelegt werden, wenn diese Richtlinie einen Fehler auslöst. Dieses Informationen sind wichtig, wenn Sie Fehlerregeln für einen Proxy entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.
Laufzeitfehler
–
Bereitstellungsfehler
Fehlername | Ursache | Problembehebung |
---|---|---|
UnsupportedDatatype |
Wenn der Typ der Variablen, die durch das ref-Attribut im Element <Statistic> der Statistics Collector-Richtlinie angegeben wird, nicht unterstützt wird, schlägt die Bereitstellung des API-Proxys fehl. Die unterstützten Datentypen sind string , integer , float , long , double und boolean . |
build |
InvalidName |
Wenn der Name, der für den Verweis auf die Daten verwendet wird, die für die angegebene Variable erfasst wurden, die im Element <Statistic> der Statistics Collector-Richtlinie definiert ist, mit einer systemdefinierten Variablen in Konflikt steht, schlägt die Bereitstellung des API-Proxys fehl. Einige der bekannten systemdefinierten Variablen sind organization und environment . |
build |
DatatypeMissing |
Wenn der Typ der Variablen, die durch das Attribut ref im Element <Statistic> der Statistics Collector-Richtlinie angegeben wird, fehlt, schlägt die Bereitstellung des API-Proxys fehl. |
build |
Fehlervariablen
Keine.
Schema
Jeder Richtlinientyp wird durch ein XML-Schema (.xsd
) definiert. Zu Referenzzwecken sind Richtlinienschemas auf GitHub verfügbar.
Weitere Informationen
Weitere Informationen finden Sie unter: