פתרון בעיות שקשורות לשגיאות בפריסת המדיניות של StatStats Collector

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

UnsupportedDatatype

הודעת שגיאה

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

Error Deploying Revision [revision_number]
StatisticsCollection [datatype]: Datatype Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is unsupported . Context [context].

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

Error Saving Revision 1
StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.

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

סיבה

אם סוג המשתנה שצוין באמצעות המאפיין ref ברכיב <Statistic> של מדיניות Statistics Collector (איסוף נתונים סטטיסטיים) לא נתמך, הפריסה של proxy ל-API תיכשל.

סוגי הנתונים הנתמכים הם string,‏ integer,‏ float,‏ long,‏ double ו-boolean.

לדוגמה, אם סוג המשתנה מוגדר כ-char ברכיב <Statistic> של מדיניות Statistics Collector, פריסת ה-proxy ל-API תיכשל.

אבחון

  1. מזהים את מדיניות Statistics Collector (איסוף נתונים סטטיסטיים) ב-API Proxy הספציפי שבו התרחשה השגיאה.
  2. מזהים את סוג הנתונים שלא נתמך שנעשה בו שימוש במדיניות של כלי איסוף הנתונים הסטטיסטיים. אפשר למצוא את המידע הזה בהודעת השגיאה. לדוגמה, בשגיאה הבאה, סוג הנתונים שלא נתמך הוא char:

    StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
    
  3. מוודאים שמאפיין הסוג שמשמש במדיניות של הכלי לתיעוד נתונים סטטיסטיים שנכשלה תואם לסוג הנתונים שזוהה בהודעת השגיאה (שלב 2 למעלה). לדוגמה, במדיניות הבאה סוג הנתונים הוא char, שזהה למה שמופיע בהודעת השגיאה:

    <StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1">
      <DisplayName>Statistics Collector 1</DisplayName>
      <Statistics>
          <Statistic name="statName" ref="varName" type="char">defaultStatValue</Statistic>
      </Statistics>
    </StatisticsCollector>
    
  4. אם מאפיין הסוג לא שייך לסוג נתונים נתמך, זו הסיבה לשגיאה.

    בדוגמה של מדיניות Statistics Collector שמוצגת למעלה, המאפיין type מוגדר כ-char, שאינו נתמך. לכן, פריסת ה-API Proxy נכשלת עם השגיאה:

    StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
    

רזולוציה

צריך לוודא שסוג הנתונים של המשתנים שצוינו במאפייני ה-ref ברכיבי <Statistic> של מדיניות Statistics Collector נתמך ותקין. לדוגמה:

<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1">
    <DisplayName>Statistics Collector 1</DisplayName>
    <Statistics>
        <Statistic name="statName" ref="varName" type="string">defaultStatValue</Statistic>
    </Statistics>
</StatisticsCollector>

InvalidName

הודעת שגיאה

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

Error Deploying Revision [revision_number]
StatisticsCollection: Name: [name] conflicts with system defined variables. Context policy: [policy_name]

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

Error Saving Revision 1
StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.

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

סיבה

אם השם שמשמש להפניה לנתונים שנאספו עבור המשתנה שצוין ומוגדר ברכיב <Statistic> של מדיניות Statistics Collector (איסוף נתונים סטטיסטיים) מתנגש עם משתנה שמוגדר על ידי המערכת, פריסת ה-proxy ל-API תיכשל.

חלק מהמשתנים המוכרים שמוגדרים על ידי המערכת הם organization ו-environment.

לדוגמה, אם מאפיין השם מוגדר כ-organization ברכיב <Statistic> של מדיניות Statistics Collector, פריסת ה-proxy ל-API תיכשל.

אבחון

  1. מזהים את מדיניות Statistics Collector שבה אירעה השגיאה ואת השם של רכיב <Statistic> שמתנגש עם משתנה שהוגדר על ידי המערכת. שני הפריטים האלה מופיעים בהודעת השגיאה. לדוגמה, בשגיאה הבאה, שם המדיניות הוא StatCollector, השם של רכיב <Statistic> שמתנגש עם המשתנה שהוגדר על ידי המערכת הוא organization:

    StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
    
  2. מוודאים שהשם של רכיב <Statistic> שמשמש ב-XML של מדיניות איסוף הנתונים שנכשל זהה לשם שמופיע בהודעת השגיאה (שלב 1 למעלה). לדוגמה, במדיניות הבאה השם מוגדר כ-organization ברכיב <Statistic>, שזהה למה שמופיע בהודעת השגיאה:

    <StatisticsCollector name="StatCollector">
      <Statistics>
          <Statistic name="organization" ref="organization" type="string">myorg</Statistic>
          <Statistic name="traffic" ref="traffic" type="string">999999</Statistic>
      </Statistics>
    </StatisticsCollector>
    
  3. בודקים את ההגדרה של כל אחד מהרכיבים <Statistic>. אם יש רכיב <Statistic> כלשהו שבו המאפיין name מתנגש עם משתנה מערכת, זו הסיבה לשגיאה.

בדוגמה למדיניות של Statistics Collector שמוצגת למעלה, המאפיין name של <Statistic> שבו נעשה שימוש הוא organization, שהוא במקרה שם של משתנה מערכת. לכן, פריסת ה-API Proxy נכשלת עם השגיאה:

StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.

רזולוציה

מוודאים שהשם של רכיב <Statistic> שמשמש להפניה לנתונים שנאספו עבור המשתנה שצוין, שהוגדר ברכיב <Statistic> במדיניות של הכלי לאיסוף נתונים סטטיסטיים, לא זהה למשתנים שהוגדרו על ידי המערכת. לדוגמה:

<StatisticsCollector name="StatCollector">
    <Statistics>
        <Statistic name="org" ref="org" type="string">myorg</Statistic>
        <Statistic name="traffic" ref="traffic" type="string">999999</Statistic>
    </Statistics>
</StatisticsCollector>

DatatypeMissing

הודעת שגיאה

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

Error Deploying Revision [revision_number]
StatisticsCollection [ref]: Datatype of Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is missing . Context [context].

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

Error Deploying Revision 2 to test
StatisticsCollection product.id: Datatype of Revision:2;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is missing. Context {2}.

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

סיבה

אם חסר הסוג של המשתנה שצוין באמצעות המאפיין ref ברכיב <Statistic> של מדיניות Statistics Collector (איסוף נתונים סטטיסטיים), הפריסה של proxy ל-API תיכשל.

אבחון

  1. מזהים את מדיניות Statistics Collector בשרת ה-proxy הספציפי של ה-API שבו התרחשה השגיאה.
  2. בודקים את ההגדרה של כל אחד מרכיבי <Statistic> ב-XML של מדיניות Statistics Collector שנכשלה. אם יש רכיבי <Statistic> שחסר בהם מאפיין הסוג, זו הסיבה לשגיאה.

דוגמה למדיניות של כלי לאיסוף נתונים סטטיסטיים:

  <StatisticsCollector name="publishPurchaseDetails"
      <Statistics>
          <Statistic name="productID" ref="product.id">999999</Statistic>
          <Statistic name="price" ref="product.price" type="string">1000</Statistic>
      </Statistics>
  </StatisticsCollector>
  

בדוגמה של מדיניות Statistics Collector שמוצגת למעלה, אפשר לראות שמאפיין הסוג חסר בשני רכיבי <Statistic>. לכן, הפריסה של שרת ה-proxy של ה-API נכשלת.

רזולוציה

מוודאים שמאפיין הסוג של המשתנה שצוין על ידי מאפיין ref ברכיב <Statistic> של מדיניות Statistics Collector תמיד מצוין ושסוג הנתונים שלו נתמך.

סוגי הנתונים הנתמכים הם string,‏ integer,‏ float,‏ long,‏ double ו-boolean.

לדוגמה:

<StatisticsCollector name="publishPurchaseDetails">
    <Statistics>
        <Statistic name="productID" ref="product.id" type="string">999999</Statistic>
        <Statistic name="price" ref="product.price"  type="string">1000</Statistic>
    </Statistics>
</StatisticsCollector>