מוצג המסמך של 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>
של מדיניות אוסף הנתונים הסטטיסטיים אינו נתמך, הפריסה של שרת ה-proxy ל-API תיכשל.
סוגי הנתונים הנתמכים הם string
, integer
, float
, long
, double
ו-boolean
.
לדוגמה, אם סוג המשתנה מצוין כ-char
ברכיב <Statistic>
של המדיניות 'אוסף הנתונים הסטטיסטיים', הפריסה של שרת ה-proxy ל-API תיכשל.
אבחון
- מזהים את המדיניות בנושא אוסף הנתונים הסטטיסטיים בשרת ה-proxy הספציפי ל-API שבו התרחש הכשל.
מזהים את סוג הנתונים שלא נתמך במדיניות בנושא אוסף הנתונים הסטטיסטיים. אפשר למצוא את המידע הזה בהודעת השגיאה. לדוגמה, בשגיאה הבאה, סוג הנתונים שלא נתמך הוא
char
:StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
מוודאים שמאפיין הסוג שנעשה בו שימוש במדיניות של אוסף הנתונים הסטטיסטיים שנכשלו תואם לסוג הנתונים שזוהה בהודעת השגיאה (שלב 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>
אם המאפיין type אינו מסוג נתונים נתמך, זו הסיבה לשגיאה.
במדיניות לדוגמה של אוסף הנתונים הסטטיסטיים שמוצגת למעלה, חשוב לזכור שהמאפיין
type
מוגדר בתורchar
, והיא לא נתמכת. לכן, הפריסה של ה-Proxy ל-API נכשלה עם השגיאה:StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
רזולוציה
חשוב לוודא שסוג הנתונים של המשתנים שצוינו על ידי מאפייני ה-ref ברכיבי <Statistic>
של המדיניות בנושא אוסף הנתונים הסטטיסטיים נתמך ותקף. לדוגמה:
<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>
של מדיניות אוסף הנתונים הסטטיסטיים מתנגש עם משתנה בהגדרת המערכת, הפריסה של שרת ה-proxy ל-API תיכשל.
חלק מהמשתנים הידועים של המערכת הם organization
ו-environment
.
לדוגמה, אם מאפיין השם מצוין בתור organization
ברכיב <Statistic>
של המדיניות 'איסוף נתונים סטטיסטיים', הפריסה של שרת ה-proxy ל-API תיכשל.
אבחון
מאתרים את המדיניות של אוסף הנתונים הסטטיסטיים שבה התרחשה השגיאה ואת השם של רכיב
<Statistic>
שמתנגש עם משתנה בהגדרת המערכת. שני הפריטים האלה מופיעים בהודעת השגיאה. לדוגמה, בשגיאה הבאה, שם המדיניות הואStatCollector
, שם הרכיב<Statistic>
שמתנגש עם המשתנה שהוגדר על ידי המערכת הואorganization
:StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
צריך לוודא ששם הרכיב
<Statistic>
שנעשה בו שימוש במדיניות של אוסף הנתונים הסטטיסטיים שנכשלה תואם לשם שצוין בהודעת השגיאה (שלב 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>
צריך לבדוק את ההגדרה של כל אחד מהרכיבים
<Statistic>
. אם יש רכיב<Statistic>
שבו המאפייןname
מתנגש עם משתנה מערכת, זו הסיבה לשגיאה.
במדיניות לדוגמה של אוסף הנתונים הסטטיסטיים שמוצגת למעלה, חשוב לזכור שמאפיין השם שבו נעשה שימוש ב-<Statistic>
הוא organization
, שהוא שם של משתנה מערכת. לכן, הפריסה של שרת ה-proxy ל-API נכשלה עם השגיאה:
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>
של מדיניות אוסף הנתונים הסטטיסטיים, הפריסה של שרת ה-proxy ל-API תיכשל.
אבחון
- מזהים את המדיניות בנושא אוסף הנתונים הסטטיסטיים בשרת ה-proxy הספציפי ל-API שבו התרחש הכשל.
- צריך לבדוק את ההגדרה של כל אחד מהרכיבים
<Statistic>
ב-XML של המדיניות של אוסף הנתונים הסטטיסטיים שנכשלו. אם יש רכיבי<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>
במדיניות לדוגמה של אוסף הנתונים הסטטיסטיים שמוצגת למעלה, שימו לב שמאפיין הסוג חסר בשני הרכיבים מסוג <Statistic>
. לכן, הפריסה של ה-Proxy ל-API נכשלת.
רזולוציה
חשוב לוודא שמאפיין הסוג של המשתנה שצוין על ידי המאפיין ref
ברכיב <Statistic>
של המדיניות בנושא אוסף הנתונים הסטטיסטיים מוגדר תמיד, ושהוא מסוג נתונים נתמך.
סוגי הנתונים הנתמכים הם 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>