Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
InvalidTimeout
Hata Mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtılması şu hata mesajıyla başarısız olur:
Error Saving Revision revision_number CacheLookupTimeoutInSeconds value value should be greater than zero.
Örnek Hata Mesajı
Error Saving Revision 2
CacheLookupTimeoutInSeconds -1 value should be greater than zero.
Örnek Hata Ekran Görüntüsü
Neden
LookupCache politikasının <CacheLookupTimeoutInSeconds>
öğesi negatif bir sayıya ayarlanırsa API proxy'sinin dağıtımı başarısız olur.
Örneğin, <CacheLookupTimeoutInSeconds>
öğesi -1
ise API proxy'sinin dağıtımı başarısız olur.
Teşhis
LookupCache politikasında
<CacheLookupTimeoutInSeconds>
öğesi için belirtilen geçersiz değeri belirleyin. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada<CacheLookupTimeoutInSeconds>
öğesi için kullanılan geçersiz değer-1
şeklindedir:CacheLookupTimeoutInSeconds -1 value should be greater than zero.
Hatanın oluştuğu API Proxy'sinde bulunan tüm LookupCache politikalarını inceleyin.
<CacheLookupTimeoutInSeconds>
öğesinin belirtildiği bir veya daha fazla LookupCache politikası olabilir.<CacheLookupTimeoutInSeconds>
öğesi için geçersiz değerin (yukarıdaki 1. adımda tanımlanır) belirtildiği LookUpCache politikasını belirleyin.Örneğin, aşağıdaki politika yapılandırması, hata mesajıyla eşleşen
-1
tutarındaki<CacheLookupTimeoutInSeconds>
değerini belirtir:<?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>
<CacheLookupTimeoutInSeconds>
negatif bir tam sayı olarak belirtilirse hatanın nedeni budur.
Çözünürlük
LookupCache politikasının <CacheLookupTimeoutInSeconds>
öğesi değerinin her zaman negatif olmayan bir tam sayı olarak belirtildiğinden emin olun.
Yukarıda gösterilen örnek LookupCache politikasını düzeltmek için <CacheLookupTimeoutInSeconds>
öğesini 30
olarak değiştirebilirsiniz.
<?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
Hata Mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtılması şu hata mesajıyla başarısız olur:
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]
Örnek Hata Mesajı
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
Örnek Hata Ekran Görüntüsü
Neden
Bu hata, <CacheResource>
öğesi API proxy'sinin dağıtıldığı ortamda mevcut olmayan bir ada ayarlanırsa ortaya çıkar.
Teşhis
LookupCache politikasının
<CacheResource>
öğesinde kullanılan geçersiz önbelleği ve hatanın oluştuğu ortamı tanımlayın. Bu öğelerin ikisini de hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada geçersiz önbelleğin adıtokencache
, ortam adı isetest
şeklindedir.Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Hatanın oluştuğu API Proxy'sinde bulunan tüm LookupCache politikalarını inceleyin. Geçersiz önbelleğin (1. adımda tanımlanır)
<CacheResource>
öğesinde belirtildiği belirli LookupCache politikasını tanımlayın.Örneğin, aşağıdaki politika
<CacheResource>
değerinitokencache
olarak belirtir ve bu hata mesajıyla eşleşir:<?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>
Önbelleğin (1. adımda belirlenir) belirli 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 bölümüne gidin ve Ortam Yapılandırması'nın Önbellekler sekmesinde önbelleğin olup olmadığını kontrol edin. Önbellek yoksa hatanın nedeni budur.
Örneğin, aşağıdaki ekran görüntüsünde
tokencache
adlı önbelleğin var olmadığına dikkat edin.tokencache
adlı önbellektest
ortamında tanımlanmadığı için şu hatayı alırsınız:Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
Çözünürlük
<CacheResource>
öğesinde belirtilen önbellek adının, 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ı aşağıdaki gibi bir hata mesajıyla sonuçlanır ve API Proxy'sinin dağıtım durumu kısmen dağıtılmış 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 bahsedilen belirli önbellek, belirli bir İleti İşleyici bileşeninde oluşturulmamışsa oluşur.
Çö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 İşleyicilerinde
steps.cache.CacheNotFound
hatasının 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özlemlediğiniz İleti İşleyici'nin UUID'lerini not edin. UUID ile ilişkilendirilmiş Mesaj İşleyici'nin ana makine adını/IP adresini tanımlayın.İlgili İleti İşleyiciye giriş yapın ve aşağıdaki komutu kullanarak yeniden başlatın:
apigee-service edge-message-processor restart
Public Cloud kullanıcısıysanız veya sorun Private Cloud'da devam ediyorsa yardım için Apigee Destek Ekibi ile iletişime geçin.