פתרון בעיות בנושא זמן ריצה של המדיניות בנושא זרימה של יתרונות מרכזיים

מוצג המסמך של Apigee Edge.
עוברים אל מסמכי תיעוד של Apigee X.
מידע

SharedFlowNotFound

קוד שגיאה

flow.SharedFlowNotFound

גוף התגובה לשגיאה

{
    "fault": {
        "faultstring": "Shared Flow shared_flow_name Not Found",
        "detail": {
            "errorcode": "flow.SharedFlowNotFound"
        }
    }
}

סיבות אפשריות

הסיבות האפשריות לשגיאה הזו הן:

הסיבה תיאור
תהליך העבודה המשותף לא זמין התהליך המשותף לא קיים.
תהליך העבודה המשותף לא נפרס התהליך המשותף קיים אבל הוא לא נפרס.

הסיבה: תהליך העבודה המשותף לא זמין

במדיניות בנושא יתרונות מרכזיים של זרימה, אם התהליך המשותף שמוגדר ברכיב <SharedFlowBundle> לא קיים בסביבה, השגיאה הזו תופיע.

לדוגמה, אם הרכיב <SharedFlowBundle> במדיניות ההסבר על תהליך הזרימה מכיל תהליך משותף שנקרא SharedFlow_Sample ואם התהליך המשותף הזה לא קיים בסביבה, השגיאה תתרחש.

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

{
    "fault": {
        "faultstring": "Shared Flow SharedFlow_Sample Not Found",
        "detail": {
            "errorcode": "flow.SharedFlowNotFound"
        }
    }
}

אבחון

  1. מזהים את התהליך המשותף שלא קיים. אפשר למצוא אותו ברכיב faultstring בתשובה לשגיאה. לדוגמה, בfaultstring הבא, שם התהליך המשותף הוא SharedFlow_Sample:

    "faultstring": "Shared Flow SharedFlow_Sample Not Found"

  2. בודקים את כל כללי המדיניות של קריאות ל-Flow בשרת ה-API המחובר הספציפי שבו אירעה התקלה. בודקים אם קיימת מדיניות מסוג 'יתרונות מרכזיים של זרימה' שבה רכיב <SharedFlowBundle> מצוין עם שם הזרימה שזוהה בשלב 1 שלמעלה.

    לדוגמה, המדיניות הבאה מציינת את הערך <SharedFlowBundle> בתור SharedFlow_Sample, שתואם לערך שבמחרוזת השגיאה.

    <FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout">
       <DisplayName>Auth Flow Callout</DisplayName>
       <SharedFlowBundle>SharedFlow_Sample</SharedFlowBundle>
    </FlowCallout>
    
  3. בממשק המשתמש של Edge, בודקים אם תהליך העבודה המשותף הזה קיים בקטע APIs > Shared Flows. אם היא לא קיימת, זו הסיבה לשגיאה. (הערה: בממשק המשתמש החדש של Edge, אפשר למצוא את התהליכים המשותפים בכרטיסייה 'פיתוח').

    לדוגמה, בצילום המסך למטה, התהליך המשותף SharedFlow_Sample לא קיים.

    מכיוון שהתהליך המשותף הזה לא קיים, מופיע קוד השגיאה:

    flow.SharedFlowNotFound
    

רזולוציה

מוודאים שהתהליך המשותף שצוין ברכיב <SharedFlowBundle> במדיניות ההסבר על זרימה קיים ופרוס בסביבה הספציפית שבה מתבצעת בקשת ה-API.

אפשר לבחור באחת מהדרכים הבאות כדי לטפל בבעיה:

  1. יוצרים תהליך משותף בשם SharedFlow_Sample כפי שמוצג בהמשך ופורסים את סביבת הבדיקה באופן הבא:

  2. להשתמש בתהליך משותף שכבר קיים שנפרס בסביבת הבדיקה במדיניות בנושא יתרונות מרכזיים של זרימה. לדוגמה, אפשר לציין SharedFlow_demo במדיניות של קריאה לפעולה ב-Flow.

    <FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout">
      <DisplayName>Auth Flow Callout</DisplayName>
      <SharedFlowBundle>SharedFlow_demo</SharedFlowBundle>
    </FlowCallout>
    

    אם תבצעו קריאה ל-API בסביבת הבדיקה, השגיאה לא תופיע יותר כי הקריאה ל-Flow Callout מופיעה גם בסביבת הבדיקה.

הסיבה: תהליך העבודה המשותף לא נפרס

אם התהליך המשותף שצוין ברכיב <SharedFlowBundle> של המדיניות בנושא יתרונות מרכזיים של זרימה לא נפרס, השגיאה הזו תתרחש.

לדוגמה, אם הרכיב <SharedFlowBundle> במדיניות של בקשה להצעת מחיר בזרימה מכיל תהליך משותף בשם SharedFlow_example שאינו נפרס בסביבה הספציפית שבה נשלחת בקשת ה-API, השגיאה תתרחש.

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

{
    "fault": {
        "faultstring": "Shared Flow Shared-Flow_example Not Found",
        "detail": {
            "errorcode": "flow.SharedFlowNotFound"
        }
    }
}

אבחון

  1. מזהים את התהליך המשותף שלא נפרס. אפשר למצוא את זה ברכיב faultstring של תגובת השגיאה. לדוגמה, בfaultstring הבא, שם התהליך המשותף הוא Shared-Flow_example:

    "faultstring": "Shared Flow Shared-Flow_example Not Found"

  2. בודקים אם התהליך המשותף פרוס בממשק המשתמש של Edge.

    לדוגמה, בצילום המסך הבא תוכלו לראות שהתהליך המשותף SharedFlow_example קיים אבללא פרוס.

    מכיוון שהתהליך המשותף לא נפרס, תקבלו את קוד השגיאה:

    flow.SharedFlowNotFound
    

רזולוציה

מוודאים שהתהליך המשותף שצוין ברכיב <SharedFlowBundle> במדיניות ההסבר על זרימה קיים ופרוס בסביבה הספציפית שבה מתבצעת בקשת ה-API.

כדי לתקן את הדוגמה שלמעלה, פורסים את התהליך המשותף שנקרא SharedFlow_example בסביבת הבדיקה הבאה:

אם תבצעו קריאה ל-API לסביבת הבדיקה, לא תראו יותר כי הסבר על הזרימה נפרס גם בסביבת הבדיקה.