פתרון בעיות שקשורות לשגיאות בפריסת מדיניות של ביטול תוקף של מטמון

אתם צופים במסמכי התיעוד של Apigee ושל Apigee Hybrid.
לעיון במסמכי התיעוד של Apigee Edge.

InvalidCacheResourceReference

הודעת השגיאה

פריסת ה-proxy ל-API דרך ממשק המשתמש או ה-API של Apigee נכשלת ומוצגת הודעת השגיאה הבאה:

Error Deploying Revision revision_number to environment
Invalid cache resource reference [cache_resource] in Step definition [invalidate_cache_policy_name]. Context Revision:[revision_number];APIProxy:[apiproxy_name];Organization:[organization];Environment:[environment]

הודעת שגיאה לדוגמה

Error Deploying Revision 2 to test
Invalid cache resource reference tokencache in Step definition InvalidateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test

דוגמה לצילום מסך של שגיאה

שגיאה בפריסת גרסה 2 לבדיקה.

מטרה

השגיאה הזו מתרחשת אם הרכיב <CacheResource> במדיניות InvalidateCache מוגדר לשם שלא קיים בסביבה שבה מתבצעת הפריסה של proxy ל-API.

אבחון

  1. מזהים את השם של מדיניות InvalidateCache, את המטמון הלא תקין שנעשה בו שימוש ברכיב <CacheResource> של מדיניות InvalidateCache ואת הסביבה שבה השגיאה התרחשה. כל הפריטים האלה מופיעים בהודעת השגיאה. לדוגמה, בשגיאה הבאה, שם המדיניות InvalidateCache הוא InvalidateCache-Token, שם המטמון הלא תקין הוא tokencache ושם הסביבה הוא test.

    Invalid cache resource reference tokencache in Step definition InvalidateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
    
  2. בודקים את קובץ ה-XML של המדיניות InvalidateCache שנכשלת ומוודאים ששם המטמון שצוין לרכיב <CacheResource> זהה לזה שמופיע בהודעת השגיאה.

    בדוגמה הזו, שם המטמון שצוין ברכיב <CacheResource> הוא tokencache:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <InvalidateCache async="false" continueOnError="false" enabled="true" name="InvalidateCache-Token">
        <DisplayName>InvalidateCache-Token</DisplayName>
        <Properties/>
        <CacheKey>
            <Prefix/>
            <KeyFragment ref=""/>
        </CacheKey>
        <CacheResource>tokencache</CacheResource>
        <Scope>Exclusive</Scope>
        <CacheContext>
            <APIProxyName/>
            <ProxyName>default</ProxyName>
            <TargetName>default</TargetName>
        </CacheContext>
        <PurgeChildEntries>false</PurgeChildEntries>
    </InvalidateCache>
    
  3. בודקים אם המטמון (שנקבע בשלב 1) הוגדר בסביבה הספציפית (שזוהתה בשלב 1).

    בממשק המשתמש של Apigee, עוברים אל ADMIN > Environment > test (ניהול > סביבה > בדיקה) ובודקים אם המטמון קיים בכרטיסייה Caches (מטמונים) של Environment Configuration (הגדרת סביבה). אם המטמון לא קיים, זו הסיבה לשגיאה.

    לדוגמה, בצילום המסך שלמטה אפשר לראות שהמטמון בשם tokencache לא קיים.

    תיבת הדו-שיח Environment Configuration.

    מכיוון שהמטמון שנקרא tokencache לא מוגדר בסביבת test, מוצגת השגיאה:

    Invalid cache resource reference tokencache in Step definition InvalidateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
    

רזולוציה

מוודאים שהמטמון שצוין ברכיב <CacheResource> של מדיניות InvalidateCache נוצר בסביבה שבה רוצים לפרוס את ה-proxy ל-API.

CacheNotFound

הודעת השגיאה

פריסת proxy ל-API דרך ממשק המשתמש או ה-API של Apigee מניבה הודעת שגיאה כמו זו, וסטטוס הפריסה של proxy ל-API מסומן כפריסה חלקית:

Error: Cache : cache_resource, not found in organization : organization__environment.

הודעת שגיאה לדוגמה

Error Cache : configCache, not found in organization : kkalckstein-eval__test

מטרה

השגיאה הזו מתרחשת אם המטמון הספציפי שמוזכר בהודעת השגיאה לא נוצר ברכיב ספציפי של מעבד ההודעות. מעבד הודעות הוא רכיב פנימי שמעבד את זרימת תנועת ה-API דרך Apigee.

רזולוציה

לקבלת עזרה, אפשר לפנות אל התמיכה של Apigee.