אתם צופים במסמכי התיעוד של Apigee Edge.
אפשר לעיין במסמכי התיעוד של Apigee X. מידע
InvalidTimeout
הודעת השגיאה
פריסת ה-proxy ל-API דרך ממשק המשתמש של Edge או דרך Edge management API נכשלת עם הודעת השגיאה הבאה:
Error Saving Revision revision_number CacheLookupTimeoutInSeconds value value should be greater than zero.
הודעת שגיאה לדוגמה
Error Saving Revision 2
CacheLookupTimeoutInSeconds -1 value should be greater than zero.
דוגמה לצילום מסך של שגיאה

סיבה
אם <CacheLookupTimeoutInSeconds> element של LookupCache policy מוגדר למספר שלילי, הפריסה של ה-proxy ל-API נכשלת.
לדוגמה, אם רכיב <CacheLookupTimeoutInSeconds> הוא -1, הפריסה של proxy ל-API תיכשל.
אבחון
מזהים את הערך הלא חוקי שצוין לרכיב
<CacheLookupTimeoutInSeconds>במדיניות LookupCache. המידע הזה מופיע בהודעת השגיאה. לדוגמה, בשגיאה הבאה, הערך הלא תקין שמשמש לרכיב<CacheLookupTimeoutInSeconds>הוא-1:CacheLookupTimeoutInSeconds -1 value should be greater than zero.בודקים את כל כללי המדיניות של LookupCache ב-API Proxy הספציפי שבו התרחשה הכשל. יכול להיות שיש מדיניות LookupCache אחת או יותר שבהן מצוין הרכיב
<CacheLookupTimeoutInSeconds>. מזהים את מדיניות LookUpCache שבה הערך הלא תקין (שזוהה בשלב 1 למעלה) מוגדר לרכיב<CacheLookupTimeoutInSeconds>.לדוגמה, הגדרת המדיניות הבאה מציינת את הערך
<CacheLookupTimeoutInSeconds>של-1, שמתאים להודעת השגיאה:<?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>מוגדר כמספר שלם שלילי, זו הסיבה לשגיאה.
רזולוציה
צריך לוודא שהערך של רכיב <CacheLookupTimeoutInSeconds> במדיניות LookupCache תמיד מצוין כמספר שלם לא שלילי.
כדי לתקן את המדיניות של LookupCache שמוצגת בדוגמה שלמעלה, אפשר לשנות את הרכיב <CacheLookupTimeoutInSeconds> ל-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
הודעת השגיאה
פריסת ה-proxy ל-API דרך ממשק המשתמש של Edge או דרך Edge management API נכשלת עם הודעת השגיאה הבאה:
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]
הודעת שגיאה לדוגמה
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
דוגמה לצילום מסך של שגיאה

סיבה
השגיאה הזו מתרחשת אם הרכיב <CacheResource> מוגדר לשם שלא קיים בסביבה שבה מתבצעת הפריסה של proxy ל-API.
אבחון
מזהים את המטמון הלא תקין שנעשה בו שימוש ברכיב
<CacheResource>של מדיניות LookupCache ואת הסביבה שבה השגיאה התרחשה. שני הפריטים האלה מופיעים בהודעת השגיאה. לדוגמה, בשגיאה הבאה, שם המטמון הלא תקין הואtokencacheושם הסביבה הואtest.Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:testבודקים את כל כללי המדיניות של LookupCache ב-API Proxy הספציפי שבו התרחשה הכשל. מזהים את מדיניות LookupCache הספציפית שבה מצוין המטמון הלא תקין (שזוהה בשלב 1) ברכיב
<CacheResource>.לדוגמה, במדיניות הבאה הערך של
<CacheResource>הואtokencache, שזהה להודעת השגיאה:<?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>בודקים אם המטמון (שנקבע בשלב 1) הוגדר בסביבה הספציפית (שזוהתה בשלב 1).
בממשק המשתמש של Edge, מנווטים אל ADMIN > Environment > test (אדמין > סביבה > בדיקה) ובודקים אם המטמון קיים בכרטיסייה Caches (מטמונים) של Environment Configuration (הגדרת סביבה). אם המטמון לא קיים, זו הסיבה לשגיאה.
לדוגמה, בצילום המסך שלמטה אפשר לראות שהמטמון בשם
tokencacheלא קיים.
מכיוון שהמטמון שנקרא
tokencacheלא מוגדר בסביבתtest, מוצגת השגיאה:Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
רזולוציה
מוודאים ששם המטמון שצוין ברכיב <CacheResource> נוצר בסביבה שבה רוצים לפרוס את proxy ל-API.
במאמר יצירה ועריכה של מטמון סביבה מוסבר איך ליצור את המטמון.
CacheNotFound
הודעת השגיאה
פריסה של שרת proxy ל-API דרך ממשק המשתמש של Edge או דרך Edge Management API מובילה להודעת שגיאה כמו זו, וסטטוס הפריסה של שרת ה-proxy ל-API מסומן כפריסה חלקית:
Error: Cache : cache_resource, not found in organization : organization__environment.
הודעת שגיאה לדוגמה
Error Cache : configCache, not found in organization : kkalckstein-eval__test
סיבה
השגיאה הזו מתרחשת אם המטמון הספציפי שמוזכר בהודעת השגיאה לא נוצר ברכיב ספציפי של מעבד ההודעות.
רזולוציה
אם אתם משתמשים ב-Private Cloud, אתם צריכים לפעול לפי ההוראות הבאות:
מציגים את הפריסות של ה-proxy ל-API וקובעים אילו מעבדי בקשות כוללים את השגיאה
steps.cache.CacheNotFound.curl -u $USERID:$USERPASSWORD http://
:8080/v1/organizations/ /environments/ /apis/ /revisions/ /deployments פלט לדוגמה
{ "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" ...רושמים את מספרי ה-UUID של מעבד ההודעות שבו מופיעה השגיאה
steps.cache.CacheNotFound. מזהים את שם המארח או את כתובת ה-IP של מעבד ההודעות שמשויך ל-UUID.מתחברים למעבד ההודעות הספציפי ומפעילים אותו מחדש באמצעות הפקודה הבאה:
apigee-service edge-message-processor restart
אם אתם משתמשים ב-Public Cloud או אם הבעיה נמשכת ב-Private Cloud, פנו אל התמיכה של Apigee לקבלת עזרה.