Zasada Statystyki Statystyki

Przeglądasz dokumentację Apigee Edge.
Przejdź do Dokumentacja Apigee X.
informacje.

Co

Umożliwia gromadzenie statystyk dotyczących danych zawartych w wiadomości, np. identyfikatora produktu, ceny czy REST. działania, klienta i docelowego adresu URL oraz długość wiadomości. Dane mogą pochodzić ze zmiennych przepływu wstępnie zdefiniowane przez Ciebie przez Apigee lub niestandardowe zmienne.

Dane statystyczne są przekazywane do serwera analitycznego, który analizuje statystyki i raportów. Raporty możesz wyświetlać za pomocą interfejsu Edge Management UI lub Edge API.

Przykłady

Podstawowy przykład

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

W tym przykładzie zbierasz informacje statystyczne dotyczące 2 zmiennych niestandardowych: product.id i product.price. W przypadku każdego żądania Zasada kolektora statystyk zapisuje wartość tych dwóch zmiennych w narzędziu Analytics serwera.

W tym przykładzie ustawiamy też opcjonalną wartość domyślną dla każdej zmiennej, przy czym domyślna wartość atrybutu product.id wynosi 999999. i domyślną wartością atrybutu product.price wynosi 0. Jeśli zmienna jest niezdefiniowana i nie zostanie określona wartość domyślna, żadne dane nie zostaną zarejestrowanych dla zmiennej. Jeśli określisz wartość domyślną, zostanie użyta wartość domyślna rejestrowana, gdy zmienna jest niezdefiniowana.

Po zebraniu danych statystycznych możesz użyć interfejsu użytkownika lub interfejsu API do zarządzania brzegiem aby pobrać statystyki. Przy pobieraniu statystyk odwołujesz się do danych zebranych na temat: te zmienne jako productID i price.

Dostęp do statystyk

W tym przykładzie używasz interfejsu Edge Management API do wyświetlania danych statystycznych dotyczących kolekcję o nazwie productID. To żądanie tworzy raport niestandardowy identyfikatorów produktów na podstawie sumy liczby wiadomości przesłanych dla każdego identyfikatora produktu dzień. Zastąp nazwę organizacji zmienną {org_name}, zastąp adres e-mail i hasło konta w Apigee Edge email:password

Ustaw parametr timeRange, aby uwzględnić przedział czasu, w którym dane były zgromadzone dane. Dane starsze niż 6 miesięcy od bieżącej daty są domyślnie niedostępne. Jeśli Jeśli chcesz uzyskać dostęp do danych starszych niż 6 miesięcy, skontaktuj się z zespołem pomocy 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

W odpowiedzi atrybut name zawiera identyfikator produktu, a wartość pokazuje liczbę żądań przypadającą na każdy dzień:

{
  "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"
  }
}

Wyodrębnianie danych do zbierania

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

Zasada kolektora statystyk wymaga przechowywania zebranych danych w zmiennych. Zmienne te mogą być wstępnie zdefiniowane przez Apigee lub niestandardowe, zdefiniowane przez Ciebie.

W tym przykładzie używasz zasady Wyodrębnianie zmiennych do wyodrębnienia danych z ładunku XML. który zawiera informacje o pogodzie. Dzięki nim:

  • Wyodrębnia nazwę miasta i zapisuje ją w zmiennej o nazwie weather.location
  • Wyodrębnia bieżące warunki i zapisuje je w zmiennej o nazwie weather.condition

Następnie można skorzystać z zasady zbieracza statystyk, aby zebrać informacje na temat zmiennych, jak poniżej:

<StatisticsCollector name="publishPurchaseDetails">
  <Statistics>
    <Statistic name="weatherLocation" ref="weather.location" type="string"></Statistic>
    <Statistic name="weatherCondition" ref="weather.condition" type="string"></Statistic>
  </Statistics>
</StatisticsCollector>

Pełny samouczek pokazujący, jak wyodrębniać dane z ładunku XML dla Zasada kolektora statystyk, patrz Analizowanie API za pomocą niestandardowych statystyk.


Informacje o zasadzie kolektora statystyk

Po wykonaniu zasada kolektora statystyk rejestruje bieżącą wartość co najmniej jednego zmiennych. Mogą to być zmienne procesu wstępnie zdefiniowane przez Apigee lub zmienne niestandardowe, które zdefiniowanych przez reklamodawcę. Te dane są zapisywane na serwerze analizy brzegowej.

Aby uzyskać dostęp do danych statystycznych zebranych przez zasadę, używasz interfejsu Edge API lub Edge za pomocą prostego interfejsu zarządzania. Możesz na przykład użyć interfejsu zarządzania brzegiem, aby utworzyć raport niestandardowy, który pokazuje zebrane dane w różnych formatach.

Pełny samouczek dotyczący korzystania z zasady kolektora statystyk znajdziesz w artykule Analizuj API za pomocą niestandardowych statystyk.

Gdzie umieścić zasadę

Możesz umieścić zasadę kolektora statystyk w przepływie żądań lub odpowiedzi interfejsu API serwera proxy. Jeśli jednak na serwerze proxy umieścisz wiele zasad kolektora statystyk, ostatni który ma zostać uruchomiony, wskazuje dane zapisane na serwerze analiz i dane zapisane przez poprzednie zasady kolektora statystyk zostaną utracone.

Jednym ze scenariuszy, w którym na serwerze proxy interfejsu API może być wiele zasad kolektora statystyk, jest gdy jeden występuje w procesie żądania lub odpowiedzi, a drugi w module obsługi błędów. Jeśli błąd ma miejsce na serwerze proxy interfejsu API, dane są określane przez kolektor statystyk w module obsługi błędów zgromadzone dane. Może on służyć do rejestrowania informacji o błędzie lub rejestrować wszelkie inne informacje, które Twoim zdaniem są niezbędne. Błąd kolektora statystyk Moduł obsługi określa zbierane dane niezależnie od tego, czy kolektor statystyk już wykonano żądanie/odpowiedzi.

Więcej informacji znajdziesz w sekcji Obsługa .

Odwołanie do elementu

Odniesienie do elementu opisuje elementy i atrybuty kolektora statystyk .

<?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; atrybuty

<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Stats-1">

W tej tabeli opisano atrybuty wspólne dla wszystkich elementów nadrzędnych zasad:

Atrybut Opis Domyślny Obecność
name

Wewnętrzna nazwa zasady. Wartość atrybutu name może zawierać litery, cyfry, spacje, łączniki, podkreślenia i kropki. Ta wartość nie może przekracza 255 znaków.

Opcjonalnie możesz użyć elementu <DisplayName> do oznaczenia zasady jako edytor proxy interfejsu zarządzania z inną nazwą w języku naturalnym.

Nie dotyczy Wymagane
continueOnError

Ustaw jako false, aby w przypadku niepowodzenia zasady zwracany był błąd. To normalne w przypadku większości zasad.

Ustaw jako true, aby wykonywanie przepływu było kontynuowane nawet po zastosowaniu zasady niepowodzenie.

fałsz Opcjonalnie
enabled

Aby egzekwować zasadę, ustaw wartość true.

Aby wyłączyć zasadę, ustaw wartość false. Te zasady nie będą jest wymuszane nawet wtedy, gdy jest ono połączone z przepływem.

prawda Opcjonalnie
async

Ten atrybut został wycofany.

fałsz Wycofano

&lt;DisplayName&gt; element

Używaj oprócz atrybutu name do oznaczania zasady w edytor proxy interfejsu zarządzania z inną nazwą w języku naturalnym.

<DisplayName>Policy Display Name</DisplayName>
Domyślny

Nie dotyczy

Jeśli pominiesz ten element, atrybut name zasady otrzyma wartość .

Obecność Opcjonalnie
Typ Ciąg znaków

&lt;Statistics&gt;/&lt;Statistic&gt; element

<Statistics>
    <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic>
</Statistics>
Atrybut Opis Domyślny Obecność
nazwa

Nazwa używana w odniesieniu do danych zebranych przez określoną zmienną. Podczas wyświetlania danych analitycznych, użyj tej nazwy, aby odwołać się do zebranych danych o zmiennej określona przez ref .

Jeśli zmienna określona przez funkcję ref jest niezdefiniowana w żądaniu lub odpowiedź, a defaultStatValue określa wartość dla zmiennej. Jeśli pominiesz wartość domyślną, w przypadku parametru , gdy zmienna jest niezdefiniowana.

Ograniczenia dotyczące nazw

W przypadku niestandardowych zmiennych analityki obowiązują następujące ograniczenia dotyczące nazewnictwa:

Nie dotyczy Wymagane
odsyłacz

Zmienna przepływu, dla której zbierane są statystyki. Może to być przepływ zdefiniowaną wstępnie przez Apigee lub zmienną niestandardową zdefiniowaną przez Ciebie w serwerze proxy interfejsu API.

Atrybut ref często odwołuje się do zmiennej niestandardowej zdefiniowanej przez zmienne wyodrębniania . Zobacz Wyodrębnianie zmiennych .

Nie dotyczy Wymagane
typ

Określa typ danych zmiennej określonej przez atrybut ref. Prawidłowe wartości to: string/integer/float/long/double/boolean.

W przypadku danych typu ciąg znaków odnieś się do danych statystycznych jako wymiaru w raport niestandardowy. W przypadku typów danych liczbowych (liczba całkowita/zmiennoprzecinkowa/długa/liczba zmiennoprzecinkowa ) odwołaj się dane statystyczne w raporcie niestandardowym jako Wymiar lub Dane. Więcej informacji znajdziesz w artykule Zarządzanie raportami niestandardowymi.

Wartość argumentu type można pominąć tylko wtedy, gdy atrybut ref odnosi się do wstępnie zdefiniowanego Zmienna przepływu Apigee lub typ jest zadeklarowany w ładunku XML zmiennych wyodrębniania .

ciąg znaków Opcjonalnie

Informacje o błędzie

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

Fault variables

None.

Schemat

Każdy typ zasad jest definiowany przez schemat XML (.xsd). Schematy zasad są dostępne na GitHubie.

Powiązane artykuły

Aby dowiedzieć się więcej, zobacz: