Estás viendo la documentación de Apigee Edge.
Ve a la
Documentación de Apigee X. información
InvalidTimeout
Mensaje de error
La implementación del proxy de API a través de la IU de Edge o de la API de Edge Management falla y muestra el siguiente mensaje de error:
Error Saving Revision revision_number CacheLookupTimeoutInSeconds value value should be greater than zero.
Ejemplo de mensaje de error
Error Saving Revision 2
CacheLookupTimeoutInSeconds -1 value should be greater than zero.
Captura de pantalla de error de ejemplo
Causa
Si el elemento <CacheLookupTimeoutInSeconds>
de una política LookupCache está configurado como un número negativo, la implementación del proxy de API falla.
Por ejemplo, si el elemento <CacheLookupTimeoutInSeconds>
es -1
, la implementación del proxy de API falla.
Diagnóstico
Identifica el valor no válido especificado para el elemento
<CacheLookupTimeoutInSeconds>
en la política LookupCache. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el valor no válido que se usa para el elemento<CacheLookupTimeoutInSeconds>
es-1
:CacheLookupTimeoutInSeconds -1 value should be greater than zero.
Examina todas las políticas LookupCache en el proxy de API específico donde ocurrió la falla. Puede haber una o más políticas de LookupCache en las que se especifique el elemento
<CacheLookupTimeoutInSeconds>
. Identifica la política LookUpCache en la que se especifica el valor no válido (identificado en el paso 1) para el elemento<CacheLookupTimeoutInSeconds>
.Por ejemplo, la siguiente configuración de política especifica el valor de
<CacheLookupTimeoutInSeconds>
de-1
, que coincide con el mensaje de error:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <LookupCache async="false" continueOnError="false" enabled="true" name="LookupCache-Token"> <DisplayName>LookupCache-Token</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref="request.queryparam.client_id"/> </CacheKey> <CacheLookupTimeoutInSeconds>-1</CacheLookupTimeoutInSeconds> <Scope>Exclusive</Scope> <ExpirySettings> <TimeoutInSec>3600</TimeoutInSec> </ExpirySettings> <AssignTo>usertoken</AssignTo> </LookupCache>
Si se especifica
<CacheLookupTimeoutInSeconds>
como un número entero negativo, esa es la causa del error.
Solución
Asegúrese de que el valor del elemento <CacheLookupTimeoutInSeconds>
de la política LookupCache siempre se especifique como un número entero no negativo.
Para corregir la política de ejemplo LookupCache que se muestra arriba, puedes modificar el elemento <CacheLookupTimeoutInSeconds>
y establecerlo en 30
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<LookupCache async="false" continueOnError="false" enabled="true" name="LookupCache-Token">
<DisplayName>LookupCache-Token</DisplayName>
<Properties/>
<CacheKey>
<Prefix/>
<KeyFragment ref="request.queryparam.client_id"/>
</CacheKey>
<CacheResource>tokencache</CacheResource>
<CacheLookupTimeoutInSeconds>30</CacheLookupTimeoutInSeconds>
<Scope>Exclusive</Scope>
<ExpirySettings>
<TimeoutInSec>3600</TimeoutInSec>
</ExpirySettings>
<AssignTo>usertoken</AssignTo>
</LookupCache>
InvalidCacheResourceReference
Mensaje de error
La implementación del proxy de API a través de la IU de Edge o de la API de Edge Management falla y muestra el siguiente mensaje de error:
Error Deploying Revision revision_number to environment Invalid cache resource reference [cache_resource] in Step definition [populate_cache_policy_name]. Context Revision:[revision_number];APIProxy:ResponseCache;Organization:[organization];Environment:[environment]
Ejemplo de mensaje de error
Error Deploying Revision 2 to test
Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Captura de pantalla de error de ejemplo
Causa
Este error ocurre si el elemento <CacheResource>
se configuró en un nombre que no existe en el entorno en el que se implementa el proxy de API.
Diagnóstico
Identifica la caché no válida que se usa en el elemento
<CacheResource>
de la política LookupCache y el entorno en el que se produjo el error. Puedes encontrar ambos elementos en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la caché no válida estokencache
y el nombre del entorno estest
.Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Examina todas las políticas LookupCache en el proxy de API específico donde ocurrió la falla. Identifica la política LookupCache específica en la que se especifica la caché no válida (identificada en el paso 1) en el elemento
<CacheResource>
.Por ejemplo, en la siguiente política, se especifica el valor de
<CacheResource>
comotokencache
, que coincide con el mensaje de error:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <LookupCache async="false" continueOnError="false" enabled="true" name="LookupCache-Token"> <DisplayName>LookupCache-Token</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref="request.queryparam.client_id"/> </CacheKey> <CacheResource>tokencache</CacheResource> <CacheLookupTimeoutInSeconds/> <Scope>Exclusive</Scope> <ExpirySettings> <TimeoutInSec>3600</TimeoutInSec> </ExpirySettings> <AssignTo>usertoken</AssignTo> </LookupCache>
Verifica si la caché (determinada en el paso 1) se definió en el entorno específico (identificado en el paso 1).
En la IU de Edge, navega a ADMINISTRADOR > Entorno > test y comprueba si existe la caché en la pestaña Caches de Environment Configuration. Si la caché no existe, esa es la causa del error.
Por ejemplo, observa en la captura de pantalla a continuación que la caché llamada
tokencache
no existe.Debido a que la caché llamada
tokencache
no está definida en el entornotest
, aparecerá el siguiente error:Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Solución
Asegúrate de que el nombre de caché especificado en el elemento <CacheResource>
se haya creado en el entorno en el que quieres implementar el proxy de API.
Consulta Crea y edita una caché de entorno para obtener información acerca de cómo crear la caché.
CacheNotFound
Mensaje de error
La implementación del proxy de API a través de la IU de Edge o de la API de administración de Edge genera un mensaje de error como este, y el estado de implementación del proxy de API se marca como implementado de forma parcial:
Error: Cache : cache_resource, not found in organization : organization__environment.
Ejemplo de mensaje de error
Error Cache : configCache, not found in organization : kkalckstein-eval__test
Causa
Este error se genera si la caché específica que se menciona en el mensaje de error no se creó en un componente específico del procesador de mensajes.
Solución
Si eres usuario de la Nube privada, sigue las instrucciones que se indican a continuación:
Enumera las implementaciones del proxy de API y determina qué Message Processor tienen el error
steps.cache.CacheNotFound
.curl -u $USERID:$USERPASSWORD http://
:8080/v1/organizations/ /environments/ /apis/ /revisions/ /deployments Resultado de muestra:
{ "aPIProxy" : "TestCache", "environment" : [ { "configuration" : { "basePath" : "/", "configVersion" : "SHA-512:45d3f39783414d3859bf2dec4135d8f5f9960ee6b2d361db2799c82693a8e3f8b95dbbb37c547eb3c0a3819d8ca51727f390502bcaefdf1f113263521a9023b6", "steps" : [ ] }, "name" : "prod", "server" : [ { "pod" : { "name" : "pod1", "region" : "us-central1" }, "status" : "deployed", "type" : [ "message-processor" ], "uUID" : "f2e5e34a-5630-43a9-8fef-48a5b9da76d1" }, { "pod" : { "name" : "pod1", "region" : "us-central1" }, "status" : "deployed", "type" : [ "message-processor" ], "uUID" : "879a6538-a5e0-4503-b142-9cb2b4e0623d" }, { "error" : "Cache : configCache, not found in organization : kkalckstein-eval__test", "errorCode" : "steps.cache.CacheNotFound", "status" : "error", "type" : [ "message-processor" ], "uUID" : "a8f9ce0b-c32d-48a9-b26c-9c75d8bf467d" }, ... "state" : "deployed" } ], "name" : "2", "organization" : "kkalckstein-eval" ...
Observa los UUID del Message Processor en el que se observa el error
steps.cache.CacheNotFound
. Identifica el nombre de host o la dirección IP del Message Processor asociado con el UUID.Accede al Message Processor específico y reinícialo con el siguiente comando:
apigee-service edge-message-processor restart
Si eres usuario de la nube pública o si el problema persiste en la nube privada, comunícate con el equipo de asistencia de Apigee para obtener ayuda.