Wyświetlasz dokumentację Apigee Edge.
Przejdź do
dokumentacji Apigee X. info
Co
Umożliwia zbieranie statystyk dotyczących danych w wiadomości, takich jak identyfikator produktu, cena, działanie REST , adres URL klienta i docelowy oraz długość wiadomości. Dane mogą pochodzić ze zmiennych przepływu zdefiniowanych przez Apigee lub ze zmiennych niestandardowych zdefiniowanych przez Ciebie.
Dane statystyczne są przekazywane na serwer Analytics, który analizuje statystyki i generuje raporty. Raporty możesz wyświetlać za pomocą interfejsu zarządzania Edge lub interfejsu 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 o 2 zmiennych niestandardowych: product.id i product.price. Przy każdym żądaniu zasada Statistics Collector zapisuje wartość tych 2 zmiennych na serwerze Analytics.
W tym przykładzie ustawia się też opcjonalną wartość domyślną każdej zmiennej. Wartość domyślna zmiennej product.id to 999999, a zmiennej product.price – 0. Jeśli zmienna jest niezdefiniowana i nie określisz wartości domyślnej, nie zostaną zarejestrowane żadne dane dotyczące tej zmiennej. Jeśli określisz wartość domyślną, zostanie ona zarejestrowana, gdy zmienna będzie niezdefiniowana.
Po zebraniu danych statystycznych możesz je pobrać za pomocą interfejsu zarządzania Edge lub interfejsu API do pobrania statystyk. Podczas pobierania statystyk odwołujesz się do danych zebranych dla tych zmiennych odpowiednio jako productID i price.
Dostęp do statystyk
W tym przykładzie używasz interfejsu Edge Management API, aby wyświetlić dane statystyczne dotyczące
kolekcji o nazwie productID. To żądanie tworzy raport niestandardowy dotyczący
identyfikatorów produktów na podstawie sumy liczby wiadomości przesłanych dla każdego identyfikatora produktu w każdym
dniu. Zastąp nazwę organizacji zmienną {org_name}, a adres e-mail i hasło do konta w Apigee Edge – ciągiem email:password.
Ustaw parametr timeRange, aby uwzględnić przedział czasu, w którym zostały zebrane dane. Domyślnie nie można uzyskać dostępu do danych starszych niż 6 miesięcy od bieżącej daty. 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 pole name zawiera identyfikator produktu, a pole value – liczbę żądań w każdym dniu:
{
"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 kolekcji
<?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 Statistics Collector wymaga, aby zebrane dane były przechowywane w zmiennych. Te zmienne mogą być predefiniowane przez Apigee lub niestandardowe, zdefiniowane przez Ciebie.
W tym przykładzie używasz zasady Extract Variables, aby wyodrębnić dane z ładunku XML zawierającego informacje o pogodzie. Ta zasada:
- 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żesz użyć zasady Statistics Collector, aby zebrać informacje o zmiennych, jak pokazano 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ęczniać dane z ładunku XML na potrzeby zasady Statistics Collector, znajdziesz w artykule Analizowanie treści wiadomości interfejsu API za pomocą niestandardowych statystyk.
Informacje o zasadzie Statistics Collector
Po wykonaniu zasada Statistics Collector rejestruje bieżącą wartość co najmniej 1 zmiennej. Te zmienne mogą być zmiennymi przepływu zdefiniowanymi przez Apigee lub zmiennymi niestandardowymi zdefiniowanymi przez Ciebie. Te dane są zapisywane na serwerze Analytics Edge.
Aby uzyskać dostęp do danych statystycznych zebranych przez zasadę, użyj interfejsu Edge API lub interfejsu zarządzania Edge. Możesz na przykład użyć interfejsu zarządzania Edge, aby utworzyć raport niestandardowy, który będzie wyświetlać zebrane dane w różnych formatach.
Pełny samouczek dotyczący korzystania z zasady Statistics Collector znajdziesz w artykule Analizowanie treści wiadomości interfejsu API za pomocą niestandardowych statystyk.
Gdzie umieścić zasadę
Zasadę Statistics Collector możesz umieścić w przepływie żądania lub odpowiedzi proxy interfejsu API. Jeśli jednak w proxy umieścisz kilka zasad Statistics Collector, o danych zapisywanych na serwerze Analytics decyduje ostatnia z nich, a dane zapisane przez poprzednie zasady Statistics Collector zostaną utracone.
Możesz mieć kilka zasad Statistics Collector w proxy interfejsu API, jeśli masz jedną w przepływie żądania lub odpowiedzi, a drugą w obsłudze błędów. Jeśli w proxy interfejsu API wystąpi błąd, o zebranych danych decyduje zasada Statistics Collector w obsłudze błędów. Możesz użyć tej zasady Statistics Collector, aby zarejestrować informacje o błędzie lub zarejestrować inne informacje, które uznasz za niezbędne. Zasada Statistics Collector w obsłudze błędów decyduje o zebranych danych niezależnie od tego, czy zasada Statistics Collector w żądaniu lub odpowiedzi została już wykonana.
Więcej informacji znajdziesz w artykule Obsługa błędów.
Dokumentacja elementów
Dokumentacja elementów zawiera opis elementów i atrybutów zasady Statistics Collector policy.
<?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>
Atrybuty elementu <StatisticsCollector>
<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 Opcjonalnie możesz użyć elementu |
Nie dotyczy | Wymagane |
continueOnError |
Ustaw jako Ustaw jako |
fałsz | Opcjonalnie |
enabled |
Aby egzekwować zasadę, ustaw wartość Aby wyłączyć zasadę, ustaw wartość |
prawda | Opcjonalnie |
async |
Ten atrybut został wycofany. |
fałsz | Wycofano |
<DisplayName> 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 |
|---|---|
| Obecność | Opcjonalnie |
| Typ | Ciąg znaków |
Element <Statistics>/<Statistic>
<Statistics> <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic> </Statistics>
| Atrybut | Opis | Domyślny | Obecność |
|---|---|---|---|
| name |
Nazwa używana do odwoływania się do danych zebranych dla określonej zmiennej. Podczas wyświetlania
danych Analytics użyj tej nazwy, aby odwołać się do danych zebranych o zmiennej
określonej przez atrybut Jeśli zmienna określona przez Ograniczenia dotyczące nazw W przypadku zmiennych niestandardowych statystyk obowiązują te ograniczenia dotyczące nazw:
|
Nie dotyczy | Wymagane |
| ref |
Zmienna przepływu, dla której zbierasz statystyki. Ta zmienna może być zmienną przepływu zmienną zdefiniowaną przez Apigee lub zmienną niestandardową zdefiniowaną w proxy interfejsu API. Atrybut ref często odwołuje się do zmiennej niestandardowej zdefiniowanej przez zasadę Extract Variables policy. Więcej informacji znajdziesz w artykule Zasada Extract Variables policy. |
Nie dotyczy | Wymagane |
| type |
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 string odwołuj się do danych statystycznych jako Wymiar w raporcie niestandardowym. W przypadku numerycznych typów danych (integer, float, long, double) odwołuj się do danych statystycznych w raporcie niestandardowym jako Wymiar lub Dane. Więcej informacji znajdziesz w artykule Zarządzanie raportami niestandardowymi. Wartość atrybutu type można pominąć tylko wtedy, gdy atrybut ref odwołuje się do predefiniowanej zmiennej przepływu Apigee lub typ jest zadeklarowany w ładunku XML zasady Extract Variables policy. |
tekst | Opcjonalny |
Dokumentacja błędów
W tej sekcji opisaliśmy komunikaty o błędach i zmienne przepływu, które są ustawiane, gdy ta zasada powoduje błąd. Te informacje są ważne, jeśli tworzysz reguły błędów dla serwera proxy. Więcej informacji znajdziesz w artykułach Więcej informacji o błędach związanych z naruszeniem zasad i Rozwiązywanie problemów.
Błędy w czasie wykonywania
Brak.
Błędy wdrażania
| Nazwa błędu | Przyczyna | Napraw |
|---|---|---|
UnsupportedDatatype |
Jeśli typ zmiennej określony przez atrybut ref w elemencie <Statistic> zasad Zbierania statystyk nie jest obsługiwany, wdrożenie serwera proxy interfejsu API zakończy się niepowodzeniem. Obsługiwane typy danych: string, integer, float, long, double i boolean. |
build |
InvalidName |
Jeśli nazwa używana do odwoływania się do danych zebranych dla określonej zmiennej zdefiniowanej w elemencie <Statistic> w zasadach Zbierania statystyk jest niezgodna ze zmienną zdefiniowaną przez system, wdrożenie serwera proxy interfejsu API się nie powiedzie. Niektóre znane zmienne zdefiniowane w systemie to organization i environment. |
build |
DatatypeMissing |
Jeśli brakuje typu zmiennej określonego przez atrybut ref w elemencie <Statistic> zasady Zbierania statystyk, wdrożenie serwera proxy interfejsu API się nie powiedzie. |
build |
Zmienne błędów
Brak.
Schemat
Każdy typ zasady jest zdefiniowany przez schemat XML (.xsd). Schematy zasad są dostępne na GitHubie.
Powiązane artykuły
Więcej informacji znajdziesz w tych artykułach: