StatisticsCollector-Richtlinie

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

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>

&lt;StatisticsCollector&gt; 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 name kann Buchstaben, Ziffern, Leerzeichen, Bindestriche, Unterstriche und Punkte enthalten. Dieser Wert darf 255 Zeichen nicht überschreiten.

Optional können Sie das Element <DisplayName> verwenden, um die Richtlinie im Proxy-Editor der Verwaltungs-UI mit einem anderen Namen in einer natürlichen Sprache zu versehen.

Erforderlich
continueOnError

Legen Sie false fest, um einen Fehler zurückzugeben, wenn eine Richtlinie fehlschlägt. Dies ist für die meisten Richtlinien das erwartete Verhalten.

Legen Sie true fest, damit die Ablaufausführung auch nach dem Fehlschlagen einer Richtlinie fortgesetzt wird.

false Optional
enabled

Setzen Sie den Wert auf true, um die Richtlinie zu erzwingen.

Legen Sie false fest, um die Richtlinie zu deaktivieren. Die Richtlinie wird nicht erzwungen, selbst wenn sie mit einem Ablauf verknüpft ist.

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 name der Richtlinie verwendet.

Präsenz Optional
Typ String

&lt;Statistics&gt;/&lt;Statistic&gt; 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 ref .

Wenn die in ref angegebene Variable in einer Anfrage nicht definiert ist oder Antwort, dann gibt defaultStatValue den Wert an die für die Variable erfasst wurden. Wenn Sie den Standardwert weglassen, werden keine Daten für die Variable nicht definiert.

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.
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.
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.

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: