Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
UnsupportedDatatype
Komunikat o błędzie
Wdrożenie serwera proxy interfejsu API za pomocą interfejsu Edge UI lub Edge Management API nie powiedzie się i wyświetli się ten komunikat o błędzie:
Error Deploying Revision [revision_number] StatisticsCollection [datatype]: Datatype Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is unsupported . Context [context].
Przykładowy komunikat o błędzie
Error Saving Revision 1
StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
Przykładowy zrzut ekranu
Przyczyna
Jeśli typ zmiennej określonej przez atrybut ref
w elemencie <Statistic>
zasady kolektora statystyk nie jest obsługiwany, wdrożenie serwera proxy interfejsu API się nie uda.
Obsługiwane typy danych to string
, integer
, float
, long
, double
i boolean
.
Jeśli na przykład w elemencie <Statistic>
zasady kolektora statystyk typ zmiennej jest określony jako char
, wdrożenie serwera proxy interfejsu API się nie uda.
Diagnostyka
- Określ zasadę kolektora statystyk na konkretnym serwerze proxy interfejsu API, na którym wystąpił błąd.
Określ nieobsługiwany typ danych używany w zasadzie kolektora statystyk. Te informacje znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nieobsługiwany typ danych to
char
:StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
Sprawdź, czy atrybut typu używany w nieudanych zasadach kolektora statystyk jest zgodny z typem danych podanym w komunikacie o błędzie (krok 2 powyżej). Na przykład ta zasada określa jako typ danych
char
, co odpowiada treści komunikatu o błędzie:<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1"> <DisplayName>Statistics Collector 1</DisplayName> <Statistics> <Statistic name="statName" ref="varName" type="char">defaultStatValue</Statistic> </Statistics> </StatisticsCollector>
Jeśli typ danych nie jest obsługiwany, to jest przyczyną błędu.
W pokazanej powyżej przykładowej zasadzie kolektora statystyk przypominamy, że atrybut
type
ma wartośćchar
, która nie jest obsługiwana. W związku z tym wdrożenie serwera proxy interfejsu API kończy się niepowodzeniem i wyświetla się błąd:StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
Rozdzielczość
Upewnij się, że typ danych zmiennych określonych przez atrybuty referencyjne w elementach <Statistic>
zasady kolektora statystyk jest obsługiwany i prawidłowy. Na przykład:
<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1"> <DisplayName>Statistics Collector 1</DisplayName> <Statistics> <Statistic name="statName" ref="varName" type="string">defaultStatValue</Statistic> </Statistics> </StatisticsCollector>
InvalidName
Komunikat o błędzie
Wdrożenie serwera proxy interfejsu API za pomocą interfejsu Edge UI lub Edge Management API nie powiedzie się i wyświetli się ten komunikat o błędzie:
Error Deploying Revision [revision_number] StatisticsCollection: Name: [name] conflicts with system defined variables. Context policy: [policy_name]
Przykładowy komunikat o błędzie
Error Saving Revision 1
StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
Przykładowy zrzut ekranu
Przyczyna
Jeśli nazwa używana do odwoływania się do danych zebranych dla określonej zmiennej zdefiniowanej w elemencie <Statistic>
zasady kolektora statystyk jest sprzeczna ze zmienną zdefiniowaną przez system, nie uda się wdrożyć serwera proxy interfejsu API.
Niektóre ze znanych zmiennych zdefiniowanych przez system to organization
i environment
.
Jeśli na przykład atrybut name jest określony jako organization
w elemencie <Statistic>
zasady kolektora statystyk, wdrożenie serwera proxy interfejsu API się nie uda.
Diagnostyka
Wskaż zasadę kolektora statystyk, w której wystąpił błąd, i nazwę elementu
<Statistic>
, który powoduje konflikt ze zmienną zdefiniowaną przez system. Oba te elementy znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nazwa zasady toStatCollector
, a nazwa elementu<Statistic>
, który koliduje ze zmienną zdefiniowaną przez system, toorganization
:StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
Sprawdź, czy nazwa elementu
<Statistic>
używanego w nieprawidłowym kodzie XML zasady kolektora statystyk jest zgodna z nazwą podaną w komunikacie o błędzie (krok 1 powyżej). Na przykład ta zasada określa nazwę w elemencie<Statistic>
jakoorganization
, która odpowiada treści komunikatu o błędzie:<StatisticsCollector name="StatCollector"> <Statistics> <Statistic name="organization" ref="organization" type="string">myorg</Statistic> <Statistic name="traffic" ref="traffic" type="string">999999</Statistic> </Statistics> </StatisticsCollector>
Sprawdź definicję każdego z elementów
<Statistic>
. Jeśli w dowolnym elemencie<Statistic>
atrybutname
koliduje ze zmienną systemową, to właśnie on jest przyczyną błędu.
W pokazanej wyżej przykładowej zasadzie kolektora statystyk przypominamy, że użyty atrybut nazwa <Statistic>
to organization
, który jest nazwą zmiennej systemowej. Dlatego wdrożenie serwera proxy interfejsu API kończy się niepowodzeniem i wyświetla się błąd:
StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
Rozdzielczość
Upewnij się, że nazwa elementu <Statistic>
używanego do odwoływania się do danych zebranych w przypadku określonej zmiennej zdefiniowanej w elemencie <Statistic>
w zasadzie kolektora statystyk nie jest taka sama jak zmienne zdefiniowane przez system. Na przykład:
<StatisticsCollector name="StatCollector"> <Statistics> <Statistic name="org" ref="org" type="string">myorg</Statistic> <Statistic name="traffic" ref="traffic" type="string">999999</Statistic> </Statistics> </StatisticsCollector>
DatatypeMissing
Komunikat o błędzie
Wdrożenie serwera proxy interfejsu API za pomocą interfejsu Edge UI lub Edge Management API nie powiedzie się i wyświetli się ten komunikat o błędzie:
Error Deploying Revision [revision_number] StatisticsCollection [ref]: Datatype of Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is missing . Context [context].
Przykładowy komunikat o błędzie
Error Deploying Revision 2 to test
StatisticsCollection product.id: Datatype of Revision:2;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is missing. Context {2}.
Przykładowy zrzut ekranu
Przyczyna
Jeśli brakuje typu zmiennej określonej przez atrybut ref
w elemencie <Statistic>
w zasadzie kolektora statystyk, wdrożenie serwera proxy interfejsu API się nie uda.
Diagnostyka
- Określ zasadę kolektora statystyk na konkretnym serwerze proxy interfejsu API, na którym wystąpił błąd.
- Sprawdź definicję każdego z elementów
<Statistic>
w pliku XML z błędami kolektora statystyk. Jeśli brakuje elementów<Statistic>
, w których brakuje atrybutu type, to jest to przyczyna błędu.
Oto przykładowa zasada kolektora statystyk:
<StatisticsCollector name="publishPurchaseDetails" <Statistics> <Statistic name="productID" ref="product.id">999999</Statistic> <Statistic name="price" ref="product.price" type="string">1000</Statistic> </Statistics> </StatisticsCollector>
Zwróć uwagę na to, że w przykładowej powyżej zasadzie kolektora statystyk brakuje atrybutu typu dla obu elementów <Statistic>
. W związku z tym wdrożenie serwera proxy interfejsu API się nie uda.
Rozdzielczość
Upewnij się, że atrybut typu zmiennej określonej przez atrybut ref
w elemencie <Statistic>
zasady zbieracza statystyk jest zawsze określony i ma obsługiwany typ danych.
Obsługiwane typy danych to string
, integer
, float
, long
, double
i boolean
.
Na przykład:
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="productID" ref="product.id" type="string">999999</Statistic> <Statistic name="price" ref="product.price" type="string">1000</Statistic> </Statistics> </StatisticsCollector>