Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation weitere Informationen
![](https://docs.apigee.com/static/api-platform/images/icon_policy_statistics-collector.jpg?authuser=6&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 von Apigee vordefinierten Flussvariablen oder von Ihnen definierten benutzerdefinierten Variablen stammen.
Die Statistikdaten werden an den Analyseserver übergeben, der die Statistiken analysiert und Berichte erstellt. Sie können die Berichte mithilfe der Edge-Verwaltungs-UI oder der Edge API anzeigen.
Samples
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. Die Statistik-Collector-Richtlinie schreibt bei jeder Anfrage den Wert dieser beiden Variablen an den Analyseserver.
In diesem Beispiel wird auch ein optionaler Standardwert für jede Variable festgelegt, wobei der Standardwert von product.id 999999 und der Standardwert für product.price 0 ist. Wenn eine Variable nicht definiert ist und Sie keinen Standardwert angeben, werden für die Variable keine Daten aufgezeichnet. Wenn Sie einen Standardwert angeben, wird der Standardwert erfasst, wenn die Variable nicht definiert ist.
Nachdem Sie statistische Daten erfasst haben, können Sie die Statistiken über die Edge-Management-Benutzeroberfläche oder -API abrufen. Beim Abrufen von Statistiken verweisen Sie auf die für diese Variablen erfassten Daten als productID bzw. price.
Auf Statistiken zugreifen
In diesem Beispiel verwenden Sie die Edge Management API, um die statistischen Daten für die Sammlung mit dem Namen productID
anzusehen. Diese Anfrage erstellt einen benutzerdefinierten Bericht für Produkt-IDs, der auf der Summe der Anzahl der Nachrichten basiert, die für jede Produkt-ID pro Tag gesendet werden. Ersetzen Sie die Variable {org_name}
durch Ihren Organisationsnamen und ersetzen Sie email:password
durch die E-Mail-Adresse und das Passwort für Ihr Konto bei Apigee Edge.
Legen Sie für den Parameter timeRange
das Zeitintervall fest, in dem Ihre Daten erfasst wurden. Auf Daten, die älter als sechs Monate sind, ist standardmäßig kein Zugriff möglich. 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 enthält das Feld name die Produkt-ID und der Wert gibt 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 Erhebung 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 vordefiniert oder von Ihnen selbst definiert werden.
In diesem Beispiel verwenden Sie die Richtlinie zum Extrahieren von Variablen, um Daten aus einer XML-Nutzlast zu extrahieren, die Wetterinformationen enthält. Diese Richtlinie:
- Extrahiert den Namen der Stadt und schreibt ihn in eine Variable namens weather.location
- Extrahiert die aktuellen Bedingungen und schreibt sie in eine Variable mit dem Namen weather.condition
Anschließend können Sie die Statistics Collector-Richtlinie verwenden, um Informationen zu den Variablen zu erfassen, wie unten dargestellt:
<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, das zeigt, wie Daten aus einer XML-Nutzlast für die Statistics Collector-Richtlinie extrahiert werden, finden Sie unter Analysieren des API-Nachrichteninhalts mithilfe benutzerdefinierter Analysen.
Informationen zur Statistics Collector-Richtlinie
Bei der Ausführung zeichnet die Statistics Collector-Richtlinie den aktuellen Wert einer oder mehrerer Variablen auf. Diese Variablen können von Apigee vordefinierte Flussvariablen oder von Ihnen definierte benutzerdefinierte Variablen sein. Diese Daten werden auf den Edge-Analyseserver geschrieben.
Für den Zugriff auf die von der Richtlinie erfassten statistischen Daten verwenden Sie die Edge API oder die Edge-Verwaltungs-UI. Sie können beispielsweise die Edge-Management-Benutzeroberfläche verwenden, um einen benutzerdefinierten Bericht zu erstellen, in dem die erfassten Daten in verschiedenen Formaten angezeigt werden.
Ein vollständiges Tutorial zur Verwendung der Statistics Collector-Richtlinie finden Sie unter Analysieren des API-Nachrichteninhalts mithilfe benutzerdefinierter Analysen.
Richtlinien einfügen
Sie können eine Statistik-Collector-Richtlinie in den Anforderungs- oder Antwortablauf eines API-Proxys einfügen. Wenn Sie jedoch mehrere Statistics Collector-Richtlinien in einen Proxy einfügen, bestimmt die zuletzt auszuführende Richtlinie die Daten, die auf den Analyseserver geschrieben werden, und die Daten, die von früheren Statistics Collector-Richtlinien geschrieben wurden, gehen verloren.
Ein Szenario, in dem Sie möglicherweise mehrere Statistics Collector-Richtlinien in einem API-Proxy haben, ist, wenn Sie eine im Anforderungs- oder Antwortablauf und eine andere in einem Fehlerbehandlungsprogramm haben. Wenn ein Fehler im API-Proxy auftritt, ermittelt der Statistics Collector im Fehlerbehandlungsprogramm die erfassten Daten. Sie können diesen Statistics Collector verwenden, um Informationen über den Fehler oder andere Informationen aufzuzeichnen, die Sie für notwendig halten. Der Statistics Collector im Fehler-Handler bestimmt die erfassten Daten unabhängig davon, ob der Statistics Collector in der Anfrage/Antwort bereits ausgeführt wurde oder nicht.
Weitere Informationen finden sich unter Fehlerbehandlung.
Elementverweis
Die Elementreferenz beschreibt die Elemente und Attribute der Statistik-Collector-Richtlinie.
<?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 | Eingestellte Funktionen |
<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>
Standard |
– Wenn Sie dieses Element weglassen, wird der Wert des Namensattributs |
---|---|
Präsenz | Optional |
Typ | String |
Element <Statistics>/<Statistic>
<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. Verwenden Sie diesen Namen bei der Anzeige von Analysedaten, um auf die Daten zu verweisen, die über die durch das Attribut Wenn die durch Benennungsbeschränkungen Für benutzerdefinierte Analysevariablen gelten die folgenden Einschränkungen:
|
– | Erforderlich |
ref |
Die Flussvariable, für die Sie Statistiken erfassen. Diese Variable kann eine von Apigee vordefinierte Ablaufvariable oder eine benutzerdefinierte Variable sein, die Sie in Ihrem API-Proxy definieren. Das Attribut „ref“ verweist häufig auf eine benutzerdefinierte Variable, die in der Richtlinie „Variablen extrahieren“ definiert ist. Weitere Informationen finden Sie unter Richtlinie für Variablen extrahieren. |
– | Erforderlich |
eingeben |
Gibt den Datentyp der Variablen an, die durch das Attribut ref angegeben werden. 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 (Ganzzahl/Gleitkomma/Langzeit/Doppelt) auf die statistischen Daten in einem benutzerdefinierten Bericht entweder als Dimension oder als Messwert. Weitere Informationen finden Sie unter Benutzerdefinierte Berichte verwalten. Der Wert von type kann nur weggelassen werden, wenn ref auf eine vordefinierte Apigee-Ablaufvariable verweist oder der Typ in der XML-Nutzlast der Richtlinie zum Extrahieren von Variablen deklariert ist. |
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: