<ph type="x-smartling-placeholder"></ph>
Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur
Apigee X-Dokumentation. Weitere Informationen
InvalidCacheResourceReference
Fehlermeldung
Die Bereitstellung des API-Proxys über die Edge-Benutzeroberfläche oder die Edge-Verwaltungs-API schlägt mit der folgenden Fehlermeldung fehl:
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:[apiproxy_name];Organization:[organization];Environment:[environment]
Beispiel für Fehlermeldung
Error Deploying Revision 2 to test
Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Beispiel für einen Fehler-Screenshot
Ursache
Dieser Fehler tritt auf, wenn für das Element <CacheResource>
in der Richtlinie "PopulateCache" ein Name angegeben ist, der in der Umgebung, in der der API-Proxy bereitgestellt wird, nicht vorhanden ist.
Diagnose
Identifizieren Sie den Richtlinienname "PopulateCache", den im Cache der Datei
<CacheResource>
verwendeten ungültigen Cache und die Umgebung, in der der Fehler aufgetreten ist. Sie finden alle diese Elemente in der Fehlermeldung. Beispiel: Im folgenden Fehler lautet der Name der PopulateCache-RichtliniePopulateCache-Token
, der Name des ungültigen Cachestokencache
und der Umgebungsnametest
.Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Untersuchen Sie den fehlgeschlagenen XML-Code der PopulationCache-Richtlinie und prüfen Sie, ob der für das
<CacheResource>
-Element angegebene Cache-Name mit der Fehlermeldung übereinstimmt.In diesem Beispiel lautet der im
<CacheResource>
-Element angegebene Cachenametokencache
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <PopulateCache async="false" continueOnError="false" enabled="true" name="PopulateCache-Token"> <DisplayName>PopulateCache-Token</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref="request.queryparam.client_id"/> </CacheKey> <CacheResource>tokencache</CacheResource> <Scope>Exclusive</Scope> <ExpirySettings> <TimeoutInSec>3600</TimeoutInSec> </ExpirySettings> <Source>token</Source> </PopulateCache>
Prüfen Sie, ob der Cache (in Schritt #1 ermittelt) in der spezifischen Umgebung (in Schritt #1 identifiziert) definiert wurde.
Navigieren Sie in der Edge-Benutzeroberfläche zu ADMIN > Umgebung > Test und prüfen Sie auf dem Tab Caches der Umgebungskonfiguration, ob der Cache vorhanden ist. Wenn der Cache nicht vorhanden ist, ist dies die Ursache des Fehlers.
Beachten Sie beispielsweise im folgenden Screenshot, dass der Cache mit dem Namen
tokencache
nicht existiert.Da der Cache mit dem Namen
tokencache
nicht in dertest
-Umgebung definiert ist, wird dieser Fehler ausgegeben:Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Lösung
Achten Sie darauf, dass der Cache im Element <CacheResource>
der PopulateCache-Richtlinie in der Umgebung erstellt wurde, in der Sie den API-Proxy bereitstellen möchten.
Informationen zum Erstellen des Cache finden Sie unter Erstellen und Bearbeiten eines Umgebungscaches.
CacheNotFound
Fehlermeldung
Die Bereitstellung des API-Proxys über die Edge-Benutzeroberfläche oder die Edge-Verwaltungs-API führt zu einer Fehlermeldung wie dieser und der Bereitstellungsstatus des API-Proxys wird als teilweise bereitgestellt markiert:
Error: Cache : cache_resource, not found in organization : organization__environment.
Beispiel für Fehlermeldung
Error Cache : configCache, not found in organization : kkalckstein-eval__test
Ursache
Dieser Fehler tritt auf, wenn der in der Fehlermeldung erwähnte Cache nicht auf einer bestimmten Message Processor-Komponente erstellt wurde. Ein Message Processor ist eine interne Edge-Komponente, die den Fluss des API-Traffics durch Apigee Edge verarbeitet.
Auflösung
Wenn Sie Private Cloud-Nutzer sind, gehen Sie so vor:
Listen Sie die API-Proxy-Bereitstellungen auf und ermitteln Sie, bei welchen Message Processor der Fehler
steps.cache.CacheNotFound
auftritt.curl -u $USERID:$USERPASSWORD http://
:8080/v1/organizations/ /environments/ /apis/ /revisions/ /deployments Beispielausgabe
{ "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" ...
Notieren Sie sich die UUID(s) des Message Processor, in der der Fehler
steps.cache.CacheNotFound
auftritt. Identifizieren Sie den Hostnamen bzw. die IP-Adresse des Message Processor gemäß der UUID.Melden Sie sich beim jeweiligen Message Processor an und starten Sie ihn mit dem folgenden Befehl neu:
apigee-service edge-message-processor restart
Wenn Sie Public Cloud nutzen oder das Problem bei Private Cloud weiterhin besteht, wenden Sie sich an den Apigee-Support.