ההגדרה של שגיאת הפריסה נכשלה

כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של Apigee X.
מידע

תיאור הבעיה

הפריסה של שרת proxy של API או גרסאות של זרימה משותפת דרך ממשק המשתמש של Edge או ממשק ה-API לניהול נכשלת עם שגיאה מסוג ההגדרה נכשלה.

הודעת שגיאה

תוצג הודעת שגיאה בממשק המשתמש של Edge כפי שמוצג כאן:

The revision is deployed, but traffic cannot flow.
com.apigee.kernel.exceptions.spi.UncheckedException{ code = application.bootstrap.FailedToConfigure, message = Configuration failed, associated contexts = []}

לפניכם צילום מסך של הודעת שגיאה לדוגמה שנצפתה בממשק המשתמש של Edge:

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

הפריסה של שרת proxy ל-API יכולה להיכשל עם השגיאה 'ההגדרה נכשלה' מסיבות רבות ושונות. הטבלה הבאה מפרטת כמה סיבות נפוצות לשגיאה הזו :

הסיבה תיאור הוראות לפתרון בעיות הרלוונטיות
חסר סיווג Java במדיניות בנושא יתרונות מרכזיים של Java מחלקת Java חסרה בקובץ ה-JAR שאליו מפנה המדיניות JavaCallout. משתמשי ענן פרטי של Edge
שימוש באופרנדים שגויים בתנאים בתהליך העבודה אופנות/ביטויים שנעשה בהם שימוש באחד או יותר מצדי האופרטורים שבתנאים האלה לא תקינים.
שם מארח לא חוקי במדיניות של יומן ההודעות לא ניתן לפענח את שם המארח שמוגדר במדיניות MessageLogging או שהוא כולל תווים מיוחדים לא רצויים.
שם KeyValueMap לא חוקי KeyValueMap לא חוקי או ריק במדיניות KeyValueMapOperations ב-API של שרת Proxy.

שלבים נפוצים לאבחון

  1. בודקים את סטטוס הפריסות לתיקון הספציפי של שרת ה-proxy של ה-API שלגביו מופיעה שגיאת הפריסה באמצעות ה-API שבהמשך:

    curl -v <management-server-host>:<port#>/v1/runtime/organizations/<org-name>/environments/<env-name>/apis/<apiproxy-name>/revisions/deployments -u <user>
    
  2. הנה פלט לדוגמה מה-API שלמעלה:

    "server" : [ { 
    "error" : "com.apigee.kernel.exceptions.spi.UncheckedException{ code = application.bootstrap.FailedToConfigure, message = Configuration failed, associated contexts = []}", 
    "status" : "error", 
    "type" : [ "message-processor" ], 
    "uUID" : "0a20926c-f4bf-401b-af84-05fd84b9f492" 
    }, { 
    "error" : "com.apigee.kernel.exceptions.spi.UncheckedException{ code = application.bootstrap.FailedToConfigure, message = Configuration failed, associated contexts = []}", 
    "status" : "error", 
    "type" : [ "message-processor" ], 
    "uUID" : "f2ee6ab4-a108-4465-a7ba-b56530d8e3fc" 
    }, { 
    "error" : "com.apigee.kernel.exceptions.spi.UncheckedException{ code = application.bootstrap.FailedToConfigure, message = Configuration failed, associated contexts = []}", 
    "status" : "error", 
    "type" : [ "message-processor" ], 
    "uUID" : "0f41991e-b310-4e77-aac5-5fdb150ef9f6" 
    },
    
  3. הודעת השגיאה "ההגדרה נכשלה" תופיע בכל אחד ממעבדי ההודעות בפלט של סטטוס הפריסה.

  4. צריך להתחבר לאחד ממעבדי ההודעות ולבדוק את היומן /opt/apigee/var/log/edge-message-processor/logs/system.log. בודקים אם יש שגיאות במהלך הפריסה של שרת ה-API של שרת ה-proxy.

  5. בהתאם לשגיאה או לחריגה שזוהו ביומן של מעבד ההודעות, עליך לבצע את השלבים המתאימים לפתרון הבעיה ולפתור אותה.

  6. בקטעים הבאים מצוינים כמה מהחריגים הנפוצים ביותר שמובילים לשגיאת הפריסה 'ההגדרה נכשלה', והוראות לפתרון הבעיות.

הסיבה: חסר סיווג Java במדיניות בנושא יתרונות מרכזיים של Java

אבחון

  1. ביומנים של מעבד ההודעות, אם מופיעה הודעת חריגה כלשהי עם ההודעה "לא הצלחנו ליצור את מחלקת Javaיתרונות מרכזיים" במהלך הפריסה של API Proxy (DeployEvent), כמוצג בהמשך, המשיכו לשלב 2. אם זה לא המצב, עיינו במאמר אופרנדים שגויים המשמשים בתנאים בתהליך זרימת התנאים.
  2. מעבד ההודעות מציג את החריג הבא במהלך הפריסה של שרת ה-API של שרת ה-proxy:

    2017-10-10 05:02:42,330 Apigee-Main-5 ERROR MESSAGING.CONFIGURATION - MessageProcessorServiceImpl.configure() : error configuring config events [DeployEvent{organization='myorg', application='oauth2', applicationRevision='14', deploymentSpec=basepath=/;env=dev;, deploymentID=null}] 
    com.apigee.kernel.exceptions.spi.UncheckedException: Failed to instantiate the JavaCallout Class com.something.apigee.callout.crypto.main.SecretCallout 
    at com.apigee.steps.javacallout.JavaCalloutStepDefinition.newInstance(JavaCalloutStepDefinition.java:89) ~[javacallout-1.0.0.jar:na] 
    at com.apigee.messaging.runtime.StepDefinition.getStepDefinitionExecution(StepDefinition.java:230) ~[message-processor-1.0.0.jar:na] 
    …
    <snipped>
    
  3. הודעת השגיאה בחריגה שלמעלה מציינת שלא ניתן ליצור מופע של מחלקת JavaCallout com.something.apigee.callout.crypto.main.SecretCallout. השגיאה הזו בדרך כלל מתרחשת כשהמחלקה הספציפית לא זמינה בקובץ JAR שצוין במדיניות JavaCallout או בקובצי ה-JAR התלויים שלה.

  4. צריך לבדוק את קובץ ה-JAR שהכיל את כל המחלקות שקשורות לחבילה com.something.apigee.callout.crypto.main ולוודא שהמחלקה הספציפית com.something.apigee.callout.crypto.main.SecretCallout חסרה.

רזולוציה

  1. מוסיפים את המחלקה החסרה לקובץ ה-JAR הספציפי ומעלים את קובץ ה-JAR.
  2. פורסים מחדש את שרת ה-proxy של ה-API.
  3. בדוגמה שלמעלה, פתרנו את הבעיה כך:
    1. מתבצעת הוספה של המחלקה com.something.apigee.callout.crypto.main.SecretCallout החסרה לקובץ ה-JAR.
    2. העלאת קובץ ה-JAR המעודכן ופריסה מחדש של שרת ה-API Proxy.

הסיבה: אופרנדים שגויים בשימוש עם אופרטורים בזרימת התנאי

אבחון

  1. אם ביומנים של מעבד ההודעות מופיעה com.apigee.expressions.parser.ParseException במהלך הפריסה של שרת proxy ל-API או של תהליך משותף, כפי שמוצג בהודעות לדוגמה שבהמשך, צריך להמשיך לשלב 2. אם לא, יש לעבור לגורם הבא בנושא שם מארח לא חוקי במדיניות יומן ההודעות.

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

    com.apigee.expressions.parser.ParseException: Both the operands for EQUALS expression should be data expressions
    
    
  2. נביט בדוגמה הבאה כדי להבין איך לאבחן את הבעיה.

    דוגמה : הערך של מאפיין <Operator> שמזינים עבור ביטוי <Operator> צריך להיות ביטויי נתונים

  3. מעבד ההודעות מציג את החריג הבא במהלך הפריסה של זרימה משותפת:

    2017-11-23 09:11:04,498  Apigee-Main-6 ERROR MESSAGING.RUNTIME - AbstractConfigurator.loadXMLConfigurations() : Unable to Load default for path /organizations/myorg/apiproxies/Introspection/revisions/12/sharedflows/default
    2017-11-23 09:11:04,499  Apigee-Main-6 ERROR MESSAGING.RUNTIME - Application.sync() :  sync error for Introspection and revision 12
    2017-11-23 09:11:04,499  Apigee-Main-6 ERROR MESSAGING.RUNTIME - Application.sync() :  Actual Error
    com.apigee.expressions.parser.ParseException: Both the operands for EQUALS expression should be data expressions
        at com.apigee.expressions.parser.ExpressionParser.buildExpressionTree(ExpressionParser.java:337) ~[expressions-1.0.0.jar:na]
        at com.apigee.expressions.parser.ExpressionParser.parse(ExpressionParser.java:24) ~[expressions-1.0.0.jar:na]
        at com.apigee.expressions.parser.ExpressionParser.parseLogicExpression(ExpressionParser.java:28) ~[expressions-1.0.0.jar:na]
        at com.apigee.messaging.runtime.Step.getExpression(Step.java:67) ~[message-processor-1.0.0.jar:na]
        at com.apigee.messaging.runtime.Step.handleAdd(Step.java:58) ~[message-processor-1.0.0.jar:na]
        at com.apigee.messaging.runtime.SharedFlowRuntime.addStep(SharedFlowRuntime.java:81) ~[message-processor-1.0.0.jar:na] … <snipped>
    
  4. הודעת השגיאה ב-Parseחריגה - "Both the operands for EQUALS expression should be data expressions" מציינת שקיימת בעיה עם תנאי הכולל שווה ל-(=), לא שווה ל-(!=) או נתונים סטטיסטיים עם (=|).

  5. בוחנים את התנאים בכל 'זרימות התנאים' שכוללים את האופרטור הספציפי שצוין בהודעת השגיאה, ובודקים אם קיימות הבעיות הבאות:

    1. הביטויים בכל צד של האופרטור הם מאותו הסוג. לדוגמה, אם יש משתנה מחרוזת בצד ימין של האופרטור, בצד שמאל צריך להיות משתנה מחרוזת נוסף או ערך מחרוזת נוסף.
    2. נעשה שימוש במשתנים חוקיים בין האופרטורים.
    3. יש רווח בין האופרטור לכל אחד מהביטויים.

  6. אם אחד או יותר מהקריטריונים האלה לא מתקיים, יוצג לך הערך "Both the operands for EQUALS expression should be data expressions" כחריג.

  7. נבחן דוגמה כדי להבין את הבעיה. לפניכם דוגמה למצב שגיאה

    <Condition>
               (fault.name = "invalid_access_token") or(fault.name = "ApiKeyNotApproved")
    </Condition>
    
  8. בדוגמה זו ניתן לראות שאין רווח בין האופרטור "or" לבין התנאי הבא. לכן כשמנתחים את התנאי השני, הביטוי הראשון נחשב "or(fault.name" לאופרטור EQUALS. שם המשתנה הזה אינו חוקי, ולכן הוא לא נחשב כביטוי נתונים חוקי. כתוצאה מכך, תקבל את החריגה הבאה:

    com.apigee.expressions.parser.ParseException: Both the operands for EQUALS expression should be data expressions
    
    

רזולוציה

  1. צריך לוודא שתמיד יש ביטויים מתאימים של נתונים בכל צד של האופרטורים.
  2. בדוגמה שלמעלה, הפתרון היה להבטיח שיש רווח אחרי האופרטור "or", כפי שמתואר בקטע הקוד:

    <Condition>
               (fault.name = "invalid_access_token") or (fault.name = "ApiKeyNotApproved")
    </Condition>
    
    

שם מארח לא חוקי במדיניות MessageLogging

אבחון

  1. ביומנים של מעבד ההודעות, אם מופיעה הודעת חריג כלשהי בהודעה "שם מארח לא חוקי" במהלך הפריסה של שרת proxy ל-API או של תהליך משותף, כמו שמוצג בהמשך, יש להמשיך לשלב 2. אם לא, יש לעבור לסיבה הבאה לשם KeyValueMap לא חוקי.

    com.apigee.rest.framework.ValidationException: Invalid syslog config: Invalid HostName 'splunkprod.myorg.com/' for Syslog handler
    
  2. כדי להבין איך לפתור את הבעיה ואיך לפתור אותה, נבחן את שתי הדוגמאות הבאות.

דוגמה 1: שם המארח מכיל תו מיוחד לא רצוי

  1. מעבד ההודעות מציג את החריג הבא במהלך הפריסה של שרת ה-API של שרת ה-proxy:

      2018-01-20 02:12:13,535 Apigee-Main-3 ERROR MESSAGING.CONFIGURATION - MessageProcessorServiceImpl.configure() : error configuring config events [DeployEvent{organization='myorg', application='providersearch', applicationRevision='4', deploymentSpec=basepath=/;env=prod;, deploymentID=null}] 
      com.apigee.rest.framework.ValidationException: Invalid syslog config: Invalid HostName 'splunkprod.myorg.com/' for Syslog handler 
      at com.apigee.messaging.runtime.destinations.SyslogDestination.<init>(SyslogDestination.java:44) ~[message-processor-1.0.0.jar:na] 
      at com.apigee.messaging.runtime.destinations.SysLoggerFactory.getInstance(SysLoggerFactory.java:39) ~[message-processor-1.0.0.jar:na]
      at com.apigee.messaging.runtime.destinations.DestinationRegistry.newDestination(DestinationRegistry.java:44) ~[message-processor-1.0.0.jar:na] 
      ...<snipped>
    
  2. המקרה החריג שלמעלה מראה שהפריסה נכשלת עקב 'שם מארח לא חוקי '<שם מארח>' עבור handler של Syslog. הערך הזה מציין ששם המארח שנעשה בו שימוש במדיניות MessageLogging הוא שם מארח לא חוקי.

  3. בדיקת החריגה ביומן של מעבד ההודעות מראה בקפידה שיש תו מיוחד לא רצוי '/' בסוף שם המארח 'splunkprod.myorg.com/'.

  4. התו המיוחד הלא רצוי הזה היה הסיבה לשגיאת הפריסה.

רזולוציה

  1. יש לשנות את מדיניות MessageLogging כדי להסיר תווים מיוחדים לא רצויים כדי לפתור את הבעיה.
  2. בדוגמה שלמעלה, התו המיוחד "/" הוסר מהמדיניות MessageLogging. הבעיה נפתרה.

דוגמה 2: שם מארח לא מפוענח

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

    2017-12-22 00:13:49,057 Apigee-Main-87446 INFO MESSAGING.CONFIGURATION - MessageProcessorServiceImpl.configure() : configuring [DeployEvent{organization='myorg', application='myapi', applicationRevision='42', deploymentSpec=basepath=/;env=dev;, deploymentID=null}] 
    
    2017-12-22 00:13:49,318 Apigee-Main-87446 ERROR c.a.p.h.d.DNSCachedAddress - DNSCachedAddress.refresh() : Unable to resolve host : input-prd.cloud.splunk.com: Name or service not known 
    
    2017-12-22 00:13:49,323 Apigee-Main-87446 ERROR MESSAGING.RUNTIME - AbstractConfigurator.handleUpdate() : Fatal error deploying proxy: {} 
    com.apigee.rest.framework.ValidationException: Invalid syslog config: Invalid HostName 'input-prd.cloud.splunk.com' for Syslog handler 
    at com.apigee.messaging.runtime.destinations.SyslogDestination.<init>(SyslogDestination.java:44) ~[message-processor-1.0.0.jar:na] 
    at com.apigee.messaging.runtime.destinations.SysLoggerFactory.getInstance(SysLoggerFactory.java:39) ~[message-processor-1.0.0.jar:na] 
    at com.apigee.messaging.runtime.destinations.DestinationRegistry.newDestination(DestinationRegistry.java:44) ~[message-processor-1.0.0.jar:na] 
    at com.apigee.steps.messagelogging.MessageLoggingStepDefinition.populateDestinations(MessageLoggingStepDefinition.java:118) ~[message-logging-1.0.0.jar:na] 
    at com.apigee.steps.messagelogging.MessageLoggingStepDefinition.handleAdd(MessageLoggingStepDefinition.java:99) ~[message-logging-1.0.0.jar:na] 
    …
    <snipped> 
    
  2. המקרה החריג שלמעלה מראה שהפריסה נכשלת עקב 'שם מארח לא חוקי '<שם מארח>' עבור handler של Syslog.

  3. אם קוראים את השורה שמעל החריגה, אפשר לראות שמעבד ההודעות לא מצליח לפענח את שם המארח 'input-prd.cloud.splunk.com' שצוין במדיניות MessageLogging.

  4. כדי לוודא זאת, אפשר לנסות להשתמש ב-telnet לשם המארח וליציאה # שנעשה בהם שימוש במדיניות יומן ההודעות.

    1. עליך לבדוק את מדיניות MessageLogging בגרסה הספציפית של ה-API Proxy ולאמת את שם המארח ואת מספר היציאה שבהם נעשה שימוש. בדוגמה למעלה, שם ה-API של שרת ה-proxy: myapi, מהדורה: 42.

      המדיניות בנושא MessageLogging

        <MessageLogging async="false" continueOnError="false" enabled="true" name="Log-To-Splunk">
            <DisplayName>Log-To-Splunk</DisplayName>
            <Syslog>
                <Message>Message.id = {request.header.id}</Message>
                <Host>input-prd.cloud.splunk.com</Host>
                <Port>2900</Port>
                <Protocol>TCP</Protocol>
                <SSLInfo>
                    <Enabled>true</Enabled>
                </SSLInfo>
            </Syslog>
        </MessageLogging>
      
    2. Telnet למארח עם יציאה ספציפית. בדוגמה הזו, ניסינו את telnet וקיבלנו את אותה הודעת שגיאה שמופיעה ביומן של מעבד ההודעות:

      telnet input-prd.cloud.splunk.com 2900 
      telnet: input-prd.cloud.splunk.com: Name or service not known 
      input-prd.cloud.splunk.com: Host name lookup failure
      
  5. זוהי הוכחה ברורה שלא ניתן לפענח את שם המארח.

רזולוציה

  1. יש לשנות את מדיניות MessageLogging כדי להשתמש בשם המארח החוקי.

אם הבעיה נמשכת, יש לעבור למאמר יש לאסוף פרטי אבחון.

הסיבה: שם KeyValueMap לא חוקי

אבחון

  1. ביומנים של מעבד ההודעות, אם מופיעה הודעת חריגה עם ההודעה "KeyValueMap name is invalid" במהלך הפריסה של שרת proxy ל-API או של תהליך משותף, כמו שמוצג בהמשך, המשיכו לשלב 2. אם לא, עליכם לעבור אל חובה לאסוף פרטי אבחון.

    com.apigee.rest.framework.ValidationException: Invalid syslog config: Invalid HostName 'splunkprod.myorg.com/' for Syslog handler
    
  2. נביט בדוגמה הבאה כדי להבין איך לפתור את הבעיה ואיך לפתור אותה.

  3. דוגמה ליומן של מעבד הודעות שמציג את החריגה עם ההודעה 'שם KeyValueMap לא חוקי', שמובילה לשגיאה במהלך הפריסה של שרת ה-API של ה-API

    2018-02-27 14:14:50,318  Apigee-Main-6 ERROR MESSAGING.RUNTIME - AbstractConfigurator.handleUpdate() : Fatal error deploying proxy: {}
    com.apigee.keyvaluemap.KeyValueMapApiException: KeyValueMap name  is invalid
            at com.apigee.keyvaluemap.service.legacy.KeyValueMapServiceImpl.validateMapName(KeyValueMapServiceImpl.java:125) ~[keyvaluemap-1.0.0.jar:na]
            at com.apigee.keyvaluemap.service.legacy.KeyValueMapServiceImpl.createOrUpdateKeyValueMap(KeyValueMapServiceImpl.java:185) ~[keyvaluemap-1.0.0.jar:na]
            at com.apigee.steps.keyvaluemapoperations.KeyValueMapOperationsStepDefinition.digest(KeyValueMapOperationsStepDefinition.java:180) ~[keyvaluemap-operations-1.0.0.jar:na]
            at com.apigee.steps.keyvaluemapoperations.KeyValueMapOperationsStepDefinition.handleAdd(KeyValueMapOperationsStepDefinition.java:197) ~[keyvaluemap-operations-1.0.0.jar:na]
            at com.apigee.entities.AbstractConfigurator.handleUpdate(AbstractConfigurator.java:130) [config-entities-1.0.0.jar:na]
            at com.apigee.messaging.runtime.Application.handleUpdate(Application.java:229) [message-processor-1.0.0.jar:na]
    
    2018-02-27 14:14:50,344  Apigee-Main-6 ERROR BOOTSTRAP - RuntimeConfigurationServiceImpl.dispatchToListeners() : RuntimeConfigurationServiceImpl.dispatchToListeners : Error occurred while dispatching the request DeployEvent{organization='myorg', application='CustomerAPI', applicationRevision='1', deploymentSpec=basepath=/;env=test;, deploymentID=null} to com.apigee.application.bootstrap.listeners.MessageProcessorBootstrapListener@5009d06e
    com.apigee.keyvaluemap.KeyValueMapApiException: KeyValueMap name  is invalid
            at com.apigee.keyvaluemap.service.legacy.KeyValueMapServiceImpl.validateMapName(KeyValueMapServiceImpl.java:125) ~[keyvaluemap-1.0.0.jar:na]
            at com.apigee.keyvaluemap.service.legacy.KeyValueMapServiceImpl.createOrUpdateKeyValueMap(KeyValueMapServiceImpl.java:185) ~[keyvaluemap-1.0.0.jar:na]
            at com.apigee.steps.keyvaluemapoperations.KeyValueMapOperationsStepDefinition.digest(KeyValueMapOperationsStepDefinition.java:180) ~[keyvaluemap-operations-1.0.0.jar:na]
            at com.apigee.steps.keyvaluemapoperations.KeyValueMapOperationsStepDefinition.handleAdd(KeyValueMapOperationsStepDefinition.java:197) ~[keyvaluemap-operations-1.0.0.jar:na]
            at com.apigee.entities.AbstractConfigurator.handleUpdate(AbstractConfigurator.java:130) ~[config-entities-1.0.0.jar:na]
            at com.apigee.messaging.runtime.Application.handleUpdate(Application.java:229) ~[message-processor-1.0.0.jar:na]
    
  4. החריג השני שלמעלה מציין ששגיאת הפריסה אירעה עבור שרת proxy של ממשק ה-API: CustomerAPI, גרסה: 1.

  5. אם תבדקו את ה-Stacktrace, תוכלו לראות ששגיאה זורקת במהלך ביצוע המדיניות KeyValuMapOperations.

  6. בדקתי את חבילת ה-API של שרת ה-API וגיליתי שיש מדיניות KeyValuMapOperations אחת שכוללת את הקוד כמו בדוגמה הבאה:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <KeyValueMapOperations async="false" continueOnError="false" enabled="true" name="Pulling-Keys" mapIdentifier="">
     <DisplayName>Pulling Keys</DisplayName>
     <Properties/>
     <ExclusiveCache>false</ExclusiveCache>
    
    
  7. כפי שמתואר למעלה, ל-mapIdentifier, שמציין את שם KeyValueMap, יש מחרוזת ריקה. שם KeyValueMap לא יכול להיות מחרוזת ריקה. זו הייתה הסיבה לשגיאה בפריסה.

רזולוציה

  1. עליך לשנות את המדיניות של KeyValueMapOperations כך שיהיה שם חוקי הולם ל-KeyValueMap.
  2. בדוגמה שלמעלה, פתרנו את הבעיה בכך ששינינו את KeyValueMapOperations כך ששם KeyValueMap יהיה "MyKeyValueMap" כפי שמוצג למטה:

      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
      <KeyValueMapOperations async="false" continueOnError="false" enabled="true" name="Pulling-Keys" mapIdentifier="MyKeyValueMap">
        <DisplayName>Pulling Keys</DisplayName>
        <Properties/>
        <ExclusiveCache>false</ExclusiveCache>
    

חובה לאסוף פרטי אבחון

אם הבעיה נמשכת גם אחרי שביצעתם את ההוראות שלמעלה, יש לאסוף את פרטי האבחון הבאים. צריך לפנות לתמיכה של Apigee Edge ולספק להם את המידע שנאסף.

  1. הפלט של הפקודה

    curl -v <management-server-host>:<port #>/v1/runtime/organizations/<org-name>/environments/<env-name>/apis/<apiproxy-name>/revisions/deployments -u <user>
    
  2. יומנים של מעבד ההודעות

    /opt/apigee/var/log/edge-message-processor/logs/system.log
    
  3. פרטים על הקטעים ב-Playbook שכבר נוסו וכל תובנות אחרות שיעזרו לנו לפתור את הבעיה במהירות.