Está a ver a documentação do Apigee e do Apigee Hybrid.
Ver documentação do
Apigee Edge.
InvalidTimeout
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision revision_number CacheLookupTimeoutInSeconds value value should be greater than zero.
Exemplo de mensagem de erro
Error Saving Revision 2
CacheLookupTimeoutInSeconds -1 value should be greater than zero.
Captura de ecrã de erro de exemplo
Causa
Se o elemento <CacheLookupTimeoutInSeconds>
de uma política ResponseCache estiver definido como um número negativo, a implementação do proxy de API falha.
Por exemplo, se o <CacheLookupTimeoutInSeconds>
for -1
, a implementação do proxy da API falha.
Diagnóstico
Identifique o valor inválido usado para o elemento
<CacheLookupTimeoutInSeconds>
na política ResponseCache. Pode encontrar estas informações na mensagem de erro. Por exemplo, no erro seguinte, o valor inválido usado para o elemento<CacheLookupTimeoutInSeconds>
é-1
:CacheLookupTimeoutInSeconds -1 value should be greater than zero.
Examine todas as políticas ResponseCache no proxy de API específico onde ocorreu a falha. Pode haver uma ou mais políticas ResponseCache nas quais o elemento
<CacheLookupTimeoutInSeconds>
é especificado.Por exemplo, a seguinte configuração da política define
<CacheLookupTimeoutInSeconds>
como-1
, o que corresponde ao que está na mensagem de erro:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ResponseCache async="false" continueOnError="false" enabled="true" name="Response-Cache-1"> <DisplayName>Response Cache-1</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref="request.uri" type="string"/> </CacheKey> <Scope>Exclusive</Scope> <ExpirySettings> <ExpiryDate/> <TimeOfDay/> <TimeoutInSec ref="">3600</TimeoutInSec> </ExpirySettings> <CacheLookupTimeoutInSeconds>-1</CacheLookupTimeoutInSeconds> </ResponseCache>
Se o
<CacheLookupTimeoutInSeconds>
for especificado como um número inteiro negativo, essa é a causa do erro.
Resolução
Certifique-se de que o valor do elemento <CacheLookupTimeoutInSeconds>
da política ResponseCache é sempre especificado como um número inteiro não negativo.
Para corrigir a política ResponseCache de exemplo apresentada acima, pode modificar o <CacheLookupTimeoutInSeconds> element
para 30
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ResponseCache async="false" continueOnError="false" enabled="true" name="Response-Cache-1">
<DisplayName>Response Cache-1</DisplayName>
<Properties/>
<CacheKey>
<Prefix/>
<KeyFragment ref="request.uri" type="string"/>
</CacheKey>
<Scope>Exclusive</Scope>
<ExpirySettings>
<ExpiryDate/>
<TimeOfDay/>
<TimeoutInSec ref="">3600</TimeoutInSec>
</ExpirySettings>
<CacheLookupTimeoutInSeconds>30</CacheLookupTimeoutInSeconds>
</ResponseCache>
InvalidCacheResourceReference
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Deploying Revision revision_number to environment Invalid cache resource reference cache_resource in Step definition response_cache_policy_name. Context Revision:revision_number;APIProxy:ResponseCache;Organization:organization;Environment:environment
Exemplo de mensagem de erro
Error Deploying Revision 2 to prod
Invalid cache resource reference itemscache in Step definition ItemsResponseCache. Context Revision:2;APIProxy:StoresInventory;Organization:kkalckstein-eval;Environment:prod
Captura de ecrã de erro de exemplo
Causa
Este erro ocorre se o elemento <CacheResource>
numa política ResponseCache estiver definido para um nome que não existe no ambiente onde o proxy de API está a ser implementado.
Diagnóstico
Identifique a cache inválida usada no elemento
<CacheResource>
da política de cache de respostas e o ambiente onde ocorreu o erro. Pode encontrar ambos os itens na mensagem de erro. Por exemplo, no erro seguinte, o nome da cache inválida éitemscache
e o nome do ambiente éprod
.Invalid cache resource reference itemscache in Step definition ItemsResponseCache. Context Revision:2;APIProxy:StoresInventory;Organization:kkalckstein-eval;Environment:prod
Examine todas as políticas ResponseCache no proxy de API específico onde ocorreu a falha. Identifique a política ResponseCache específica onde a cache inválida (identificada no passo n.º 1) é especificada no elemento
<CacheResource>
.Por exemplo, a seguinte política especifica o valor de
<CacheResource>
comoitemscache
, que corresponde ao que está na mensagem de erro:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ResponseCache async="false" continueOnError="false" enabled="true" name="ItemsResponseCache"> <DisplayName>ItemsResponseCache</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref="request.uri" type="string"/> </CacheKey> <CacheResource>itemscache</CacheResource> <Scope>Exclusive</Scope> <ExpirySettings> <ExpiryDate/> <TimeOfDay/> <TimeoutInSec ref="">3600</TimeoutInSec> </ExpirySettings> <SkipCacheLookup/> <SkipCachePopulation/> </ResponseCache>
Verifique se a cache (determinada no passo n.º 2) foi definida no ambiente específico (identificado no passo n.º 1).
Na IU do Apigee, navegue para APIs > Environment Configuration e verifique se a cache existe no separador Caches no ambiente específico. Se a cache não existir, essa é a causa do erro.
Por exemplo, repare na captura de ecrã abaixo que a cache denominada
itemscache
não existe.Uma vez que a cache denominada
itemscache
não está definida no ambienteprod
, é apresentado o seguinte erro:Invalid cache resource reference does_not_exist in Step definition Response-Cache-1. Context Revision:2;APIProxy:ResponseCache;Organization:kkalckstein-eval;Environment:prod
Resolução
Certifique-se de que o nome da cache especificado no elemento <CacheResource>
foi criado no ambiente onde quer implementar o proxy de API.
ResponseCacheStepAttachmentNotAllowedReq
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Deploying Revision revision_number to environment Response cache step definition response_cache_policy_name can not be attached more than once in the request path.
Exemplo de mensagem de erro
Error Deploying Revision 2 to test
Response cache step definition Response-Cache-1 can not be attached more than once in the request path.
Captura de ecrã de erro de exemplo
Causa
Este erro ocorre se a mesma política ResponseCache estiver anexada a vários caminhos de pedidos em quaisquer fluxos de um proxy de API.
Por exemplo, se tiver a mesma política ResponseCache anexada no Preflow dos pontos finais Proxy e Target, ocorre este erro.
Diagnóstico
Identifique o nome da política ResponseCache que está anexada mais do que uma vez. Pode encontrar estas informações na mensagem de erro. Por exemplo, no erro seguinte, o nome da política ResponseCache é Response‑Cache‑1.
Error Deploying Revision 2 to test Response cache step definition Response-Cache-1 can not be attached more than once in the request path.
Examine todos os fluxos de pedidos nos pontos finais de proxy e de destino do proxy de API onde ocorreu o erro. Se a mesma política ResponseCache estiver anexada em dois ou mais fluxos de pedidos, essa é a causa do erro.
No exemplo seguinte, a mesma política ResponseCache
Response-Cache-1
está configurada no caminho do pedido do PreFlow do ponto final do proxy predefinido e no PreFlow do ponto final de destino predefinido:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ProxyEndpoint name="default"> <Description/> <FaultRules/> <PreFlow name="PreFlow"> <Request> <Step> <Name>Response-Cache-1</Name> </Step> </Request> ... <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <TargetEndpoint name="default"> <Description/> <FaultRules/> <PreFlow name="PreFlow"> <Request/> <Response/> </PreFlow> <PostFlow name="PostFlow"> <Request> <Step> <Name>Response-Cache-1</Name> </Step> </Request> ...
Resolução
Certifique-se de que uma política ResponseCache está anexada apenas a um caminho de pedido em todos os fluxos do proxy de API.
Para corrigir o exemplo apresentado acima, remova a política ResponseCache Response-Cache-1
de um dos dois fluxos de pedidos.
ResponseCacheStepAttachmentNotAllowedResp
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Deploying Revision revision_number to environment Response cache step definition response_cache_policy_name can not be attached more than once in the response path.
Exemplo de mensagem de erro
Error Deploying Revision 2 to test
Response cache step definition Response-Cache-1 can not be attached more than once in the response path.
Captura de ecrã de erro de exemplo
Causa
Este erro ocorre se a mesma política ResponseCache estiver anexada a vários caminhos de resposta em quaisquer fluxos de um proxy de API.
Por exemplo, se tiver a mesma política ResponseCache anexada no Preflow da resposta dos pontos finais de proxy e de destino, ocorre este erro.
Diagnóstico
Identifique o nome da política ResponseCache que está anexada mais do que uma vez. Pode encontrar estas informações na mensagem de erro. Por exemplo, no erro seguinte, o nome da política ResponseCache é
Response-Cache-1
.Error Deploying Revision 2 to test Response cache step definition Response-Cache-1 can not be attached more than once in the response path.
Examine todos os fluxos de pedidos nos pontos finais de proxy e de destino do proxy de API onde ocorreu o erro. Se a mesma política ResponseCache estiver anexada em dois ou mais fluxos de respostas, essa é a causa do erro.
No exemplo seguinte, a mesma política ResponseCache
Response-Cache-1
está configurada no caminho de resposta do PreFlow do ponto final do proxy predefinido e no PreFlow do ponto final de destino predefinido:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ProxyEndpoint name="default"> <Description/> <FaultRules/> <PreFlow name="PreFlow"> <Request> <Step> <Name>Response-Cache</Name> </Step> </Request> <Response> <Step> <Name>Response-Cache-1</Name> </Step> </Response> </PreFlow> ... <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <TargetEndpoint name="default"> <Description/> <FaultRules/> <PreFlow name="PreFlow"> <Request/> <Response/> </PreFlow> <PostFlow name="PostFlow"> <Request/> <Response> <Step> <Name>Response-Cache-1</Name> </Step> </Response> </PostFlow> ...
Resolução
Certifique-se de que uma política ResponseCache está anexada apenas a um caminho de resposta em todos os fluxos do proxy de API.
Para corrigir o exemplo apresentado acima, remova a política ResponseCache Response-Cache-1
de um dos dois caminhos de resposta.
InvalidMessagePatternForErrorCode
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee falha com uma destas mensagens de erro:
Error Deploying Revision revision_number to environment Invalid message pattern found for error code steps.cache.InvalidSkipCacheLookUpCondition.
OU
Error Deploying Revision revision_number to environment Invalid message pattern found for error code steps.cache.InvalidSkipCachePopulationCondition.
Exemplo de mensagem de erro
Error Deploying Revision 2 to prod
Invalid message pattern found for error code steps.cache.InvalidSkipCacheLookUpCondition.
OU
Error Deploying Revision 2 to prod
Invalid message pattern found for error code steps.cache.InvalidSkipCachePopulationCondition.
Captura de ecrã de erro de exemplo
OU
Causa
Este erro ocorre se o elemento <SkipCacheLookup>
ou <SkipCachePopulation>
numa política ResponseCache contiver uma condição inválida.
Diagnóstico
Examine todas as políticas ResponseCache no proxy de API onde ocorreu o erro e verifique se existem políticas com condições especificadas para os elementos
<SkipCacheLookup>
e/ou<SkipCachePopulation>
.Verifique se a condição especificada para o elemento
<SkipCacheLookup>
e/ou<SkipCachePopulation>
é inválida. Se sim, essa é a causa do erro.No exemplo seguinte, o elemento
<SkipCachePopulation>
usa o operador JavaScript === para verificar se o valor e o tipo são iguais, o que é inválido.<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ResponseCache async="false" continueOnError="false" enabled="true" name="Response-Cache-1"> <DisplayName>Response Cache-1</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref="request.uri" type="string"/> </CacheKey> <Scope>Exclusive</Scope> <ExpirySettings> <ExpiryDate/> <TimeOfDay/> <TimeoutInSec ref="">3600</TimeoutInSec> </ExpirySettings> <CacheLookupTimeoutInSeconds>2</CacheLookupTimeoutInSeconds> <SkipCacheLookup>request.header.bypass-cache === "true"</SkipCacheLookup> </ResponseCache>
Uma vez que o operador
===
é inválido, é apresentado o seguinte erro:Invalid message pattern found for error code steps.cache.InvalidSkipCacheLookUpCondition.
Resolução
Certifique-se de que a condição especificada para os elementos <SkipCacheLookup>
e/ou <SkipCachePopulation>
é sempre válida.
Para corrigir a política ResponseCache de exemplo apresentada acima, pode modificar o <SkipCacheLookup>
para usar o operador =
:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ResponseCache async="false" continueOnError="false" enabled="true" name="Response-Cache-1">
<DisplayName>Response Cache-1</DisplayName>
<Properties/>
<CacheKey>
<Prefix/>
<KeyFragment ref="request.uri" type="string"/>
</CacheKey>
<Scope>Exclusive</Scope>
<ExpirySettings>
<ExpiryDate/>
<TimeOfDay/>
<TimeoutInSec ref="">3600</TimeoutInSec>
</ExpirySettings>
<CacheLookupTimeoutInSeconds>2</CacheLookupTimeoutInSeconds>
<SkipCacheLookup>request.header.bypass-cache = "true"</SkipCacheLookup>
</ResponseCache>
CacheNotFound
Mensagem de erro
A implementação do proxy de API através da IU ou da API Apigee resulta numa mensagem de erro como esta, e o estado de implementação do proxy de API é marcado como parcialmente implementado:
Error: Cache : cache_resource, not found in organization : organization__environment.
Exemplo de mensagem de erro
Error Cache : Response-Cache-1, not found in organization : kkalckstein-eval__prod
Causa
Este erro ocorre se a cache específica mencionada na mensagem de erro não tiver sido criada num componente do processador de mensagens específico.
Resolução
Contacte o apoio técnico do Apigee para receber assistência.