Você está
vendo a documentação da Apigee X.
Veja a documentação da Apigee Edge.
UnsupportedDatatype
Mensagem de erro
A implantação do proxy de API por meio da IU da Apigee ou da API falha com esta mensagem de erro:
Error Deploying Revision [revision_number] StatisticsCollection [datatype]: Datatype Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is unsupported . Context [context].
Exemplo de mensagem de erro
Error Saving Revision 1
StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
Captura de tela de exemplo
Causa
Se o tipo da variável especificada pelo atributo ref
no elemento <Statistic>
da política do Coletor de estatísticas não for compatível, a implantação do proxy da API falhará.
Os tipos de dados compatíveis são string
, integer
, float
, long
, double
e boolean
.
Por exemplo, se o tipo de variável for especificado como char
no elemento <Statistic>
da política do Coletor de estatísticas, a implantação do proxy de API falhará.
Diagnóstico
- Identifique a política do Coletor de estatísticas no proxy de API específico em que a falha ocorreu.
Identifique o tipo de dados incompatível usado na política do Coletor de estatísticas. Você encontra essas informações na mensagem de erro. Por exemplo, no seguinte erro, o tipo de dados não compatível é
char
:StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
Verifique se o atributo de tipo usado na política do Coletor de estatísticas com falha corresponde ao tipo de dados identificado na mensagem de erro (etapa 2 acima). Por exemplo, a política a seguir especifica o tipo de dados como
char
, que corresponde ao que está na mensagem de erro:<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>
Se o atributo type não for de um tipo de dados compatível, essa é a causa do erro.
No exemplo de política de coletor de estatísticas mostrado acima, lembre-se de que o atributo
type
está definido comochar
, que não é compatível. Portanto, a implantação do proxy de API falha com o erro:StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
Resolução
Verifique se o tipo de dados das variáveis especificadas pelos atributos ref nos elementos <Statistic>
da política do Coletor de estatísticas é compatível e válido. Exemplo:
<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
Mensagem de erro
A implantação do proxy de API por meio da IU da Apigee ou da API falha com esta mensagem de erro:
Error Deploying Revision [revision_number] StatisticsCollection: Name: [name] conflicts with system defined variables. Context policy: [policy_name]
Exemplo de mensagem de erro
Error Saving Revision 1
StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
Captura de tela de exemplo
Causa
Se o nome usado para referenciar os dados coletados para a variável especificada definida no elemento <Statistic>
da política do Coletor de estatísticas estiver em conflito com uma variável definida pelo sistema, a implantação do proxy de API falhará.
Algumas das variáveis conhecidas definidas pelo sistema são organization
e environment
.
Por exemplo, se o atributo de nome for especificado como organization
no elemento <Statistic>
da política do Coletor de estatísticas, a implantação do proxy de API falhará.
Diagnóstico
Identifique a política do Coletor de estatísticas em que o erro ocorreu e o nome do elemento
<Statistic>
que entra em conflito com uma variável definida pelo sistema. Você encontra esses dois itens na mensagem de erro. Por exemplo, no erro a seguir, o nome da política éStatCollector
, o nome do elemento<Statistic>
que entra em conflito com a variável definida pelo sistema éorganization
:StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
Verifique se o nome do elemento
<Statistic>
usado no XML da política de coleta de estatísticas com falha corresponde ao nome identificado na mensagem de erro (etapa 1 acima). Por exemplo, a política a seguir especifica o nome comoorganization
no elemento<Statistic>
, que corresponde ao que está na mensagem de erro:<StatisticsCollector name="StatCollector"> <Statistics> <Statistic name="organization" ref="organization" type="string">myorg</Statistic> <Statistic name="traffic" ref="traffic" type="string">999999</Statistic> </Statistics> </StatisticsCollector>
Examine a definição de cada um dos elementos
<Statistic>
. Se houver algum elemento<Statistic>
em que o atributoname
entre em conflito com uma variável do sistema, essa é a causa do erro.
No exemplo de política do Coletor de estatísticas mostrado acima, lembre-se de que o atributo de nome <Statistic>
usado é organization
, que é um nome de variável do sistema. Portanto, a implantação do proxy de API falha com o erro:
StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
Resolução
Verifique se o nome do elemento <Statistic>
usado para fazer referência aos dados coletados para a variável especificada definida no elemento <Statistic>
na política do Coletor de estatísticas não é o mesmo que as variáveis definidas pelo sistema. Exemplo:
<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
Mensagem de erro
A implantação do proxy de API por meio da IU da Apigee ou da API falha com esta mensagem de erro:
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].
Exemplo de mensagem de erro
Error Deploying Revision 2 to test
StatisticsCollection product.id: Datatype of Revision:2;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is missing. Context {2}.
Captura de tela de exemplo
Causa
Se o tipo da variável especificada pelo atributo ref
no elemento <Statistic>
da política do coletor de estatísticas estiver ausente, a implantação do proxy da API falhará.
Diagnóstico
- Identifique a política do Coletor de estatísticas no proxy de API específico em que a falha ocorreu.
- Examine a definição de cada um dos elementos
<Statistic>
no XML da política de coleta de estatísticas com falha. Se houver algum elemento<Statistic>
em que o atributo de tipo esteja ausente, essa é a causa do erro.
Veja um exemplo de política de coletor de estatísticas:
<StatisticsCollector name="publishPurchaseDetails" <Statistics> <Statistic name="productID" ref="product.id">999999</Statistic> <Statistic name="price" ref="product.price" type="string">1000</Statistic> </Statistics> </StatisticsCollector>
No exemplo de política de coletor de estatísticas mostrado acima, observe que o atributo de tipo está ausente para os elementos <Statistic>
. Portanto, a implantação do proxy de API falha.
Resolução
Verifique se o atributo de tipo da variável especificada pelo atributo ref
no elemento <Statistic>
da política do Coletor de estatísticas é sempre especificado e é de tipo de dados compatível.
Os tipos de dados compatíveis são string
, integer
, float
, long
, double
e boolean
.
Exemplo:
<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>