Apigee Edge belgelerini görüntülüyorsunuz.
.
Git:
Apigee X belgeleri. bilgi
InvalidCacheResourceReference
Hata Mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
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]
Örnek Hata Mesajı
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
Örnek Hata Ekran Görüntüsü
Neden
Bu hata, PopulateCache politikasındaki <CacheResource>
öğesi, API proxy'sinin dağıtıldığı ortamda var olmayan bir ada ayarlanırsa ortaya çıkar.
Teşhis
PopulateCache politikasının adını, politikanın
<CacheResource>
öğesinde kullanılan geçersiz önbelleği ve hatanın oluştuğu ortamı tanımlayın. Bu öğelerin tümünü hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada PopulateCache politikasının adıPopulateCache-Token
, geçersiz önbelleğin adıtokencache
, ortam adı isetest
şeklindedir.Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Başarısız PopulateCache politika XML'ini inceleyin ve
<CacheResource>
öğesi için belirtilen önbellek adının hata mesajıyla eşleşip eşleşmediğini doğrulayın.Bu örnekte,
<CacheResource>
öğesinde belirtilen önbellek adıtokencache
şeklindedir:<?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>
Önbelleğin (1. adımda belirlenir) ilgili ortamda (1. adımda tanımlanır) tanımlanıp tanımlanmadığını doğrulayın.
Edge kullanıcı arayüzünde YÖNETİCİ > Ortam > test edin ve önbelleğin, Ortam Yapılandırması'nın Önbellekler sekmesinde olup olmadığını kontrol edin. Önbellek mevcut değilse hatanın nedeni budur.
Örneğin, aşağıdaki ekran görüntüsünde
tokencache
adlı önbelleğin bulunmadığına dikkat edin.tokencache
adlı önbellektest
ortamında tanımlanmadığından hata mesajını alırsınız:Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Çözünürlük
PopulateCache politikasının <CacheResource>
öğesinde belirtilen önbelleğin, API proxy'sini dağıtmak istediğiniz ortamda oluşturulduğundan emin olun.
Önbelleğin nasıl oluşturulacağıyla ilgili bilgi için Ortam önbelleği oluşturma ve düzenleme başlıklı makaleye bakın.
CacheNotFound
Hata Mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge management API aracılığıyla dağıtılması sonucunda şu şekilde bir hata mesajı görüntülenir ve API Proxy'sinin dağıtım durumu kısmen dağıtıldı olarak işaretlenir:
Error: Cache : cache_resource, not found in organization : organization__environment.
Örnek Hata Mesajı
Error Cache : configCache, not found in organization : kkalckstein-eval__test
Neden
Bu hata, hata mesajında belirtilen belirli önbellek için Mesaj İşleyici bileşeninde oluşturulmuş olabilir. Mesaj İşlemci, Apigee Edge üzerinden API trafiği akışını işleyen dahili bir Uç bileşenidir.
Çözünürlük
Private Cloud kullanıcısıysanız lütfen aşağıdaki talimatları uygulayın:
API proxy dağıtımlarını listeleyin ve hangi mesaj işleyicilerin
steps.cache.CacheNotFound
hatasına sahip olduğunu belirleyin.curl -u $USERID:$USERPASSWORD http://
:8080/v1/organizations/ /environments/ /apis/ /revisions/ /deployments Örnek Çıkış
{ "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" ...
steps.cache.CacheNotFound
hatasını gördüğünüz Mesaj İşleyici'nin UUID'lerini not edin. UUID'ye karşılık gelen Mesaj İşleyici'nin ana makine adını/IP adresini tanımlayın.Belirtilen İleti İşleyen'e giriş yapın ve aşağıdaki komutu kullanarak yeniden başlatın:
apigee-service edge-message-processor restart
Herkese Açık Bulut kullanıcısıysanız veya sorun Private Cloud ile ilgiliyse yardım almak için Apigee Destek Ekibi ile iletişime geçin.