אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X. מידע
מה
מאפשר לכם לאסוף נתונים סטטיסטיים לגבי נתונים בהודעה, כמו מזהה מוצר, מחיר, פעולת REST, כתובת URL של לקוח ויעד ואורך ההודעה. הנתונים יכולים להגיע ממשתני זרימה שהוגדרו מראש על ידי Apigee או ממשתנים מותאמים אישית שהגדרתם.
הנתונים הסטטיסטיים מועברים לשרת הניתוח, שמנתח את הנתונים ומפיק דוחות. אתם יכולים לראות את הדוחות באמצעות ממשק הניהול של Edge או Edge API.
דוגמאות
דוגמה בסיסית
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="productID" ref="product.id" type="string">999999</Statistic> <Statistic name="price" ref="product.price" type="string">0</Statistic> </Statistics> </StatisticsCollector>
בדוגמה הזו, אתם אוספים מידע סטטיסטי על שני משתנים מותאמים אישית: product.id ו-product.price. בכל בקשה, המדיניות של כלי איסוף הנתונים הסטטיסטיים כותבת את הערך של שני המשתנים האלה לשרת הניתוח.
בדוגמה הזו מוגדר גם ערך ברירת מחדל אופציונלי לכל משתנה, כאשר ערך ברירת המחדל של product.id הוא 999999 וערך ברירת המחדל של product.price הוא 0. אם משתנה לא מוגדר ולא מציינים ערך ברירת מחדל, לא מתבצעת הקלטה של נתונים עבור המשתנה. אם מציינים ערך ברירת מחדל, הערך הזה מתועד כשהמשתנה לא מוגדר.
אחרי איסוף הנתונים הסטטיסטיים, אפשר להשתמש בממשק המשתמש או ב-API של Edge Management כדי לאחזר את הנתונים הסטטיסטיים. כשמאחזרים נתונים סטטיסטיים, מתייחסים לנתונים שנאספו עבור המשתנים האלה כ-productID ו-price, בהתאמה.
גישה לנתונים סטטיסטיים
בדוגמה הזו, משתמשים ב-Edge Management API כדי להציג את הנתונים הסטטיסטיים של האוסף שנקרא productID. הבקשה הזו יוצרת דוח בהתאמה אישית של מזהי מוצרים על סמך סכום מספרי ההודעות שנשלחו לכל מזהה מוצר בכל יום. מחליפים את שם הארגון במשתנה {org_name}, ואת כתובת האימייל והסיסמה של החשבון ב-Apigee Edge במשתנה email:password.
מגדירים את הפרמטר timeRange כך שיכלול את מרווח הזמן שבו הנתונים נאספו. כברירת מחדל, אי אפשר לגשת לנתונים בני יותר משישה חודשים מהתאריך הנוכחי. אם רוצים לגשת לנתונים מלפני יותר משישה חודשים, צריך לפנות לתמיכה של Apigee Edge.
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/environments/test/stats/productID?"select=sum(message_count)&timeRange=1/19/2015%2000:00~6/21/2015%2000:00&timeUnit=day"
-u email:password
בתגובה, השדה name מכיל את מזהה המוצר, והערך מראה את מספר הבקשות לכל יום:
{
"environments" : [ {
"dimensions" : [ {
"metrics" : [ {
"name" : "sum(message_count)",
"values" : [ {
"timestamp" : 1353369600000,
"value" : "4.0"
} ]
} ],
"name" : "52"
}, {
"metrics" : [ {
"name" : "sum(message_count)",
"values" : [ {
"timestamp" : 1353369600000,
"value" : "19.0"
} ]
} ],
"name" : "14"
}, ...
} ],
"metaData" : {
"samplingRate" : "100"
}
}חילוץ נתונים לאיסוף
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ExtractVariables async="false" continueOnError="false" enabled="true" name="GetWeatherData"> <VariablePrefix>weather</VariablePrefix> <XMLPayload> <Namespaces> <Namespace prefix="yweather">http://xml.weather.yahoo.com/ns/rss/1.0</Namespace> </Namespaces> <Variable name="location" type="string"> <XPath>/rss/channel/yweather:location/@city</XPath> </Variable> <Variable name="condition" type="string"> <XPath>/rss/channel/item/yweather:condition/@text</XPath> </Variable> </XMLPayload> </ExtractVariables>
מדיניות איסוף הנתונים הסטטיסטיים מחייבת שהנתונים שנאספים יאוחסנו במשתנים. המשתנים האלה יכולים להיות מוגדרים מראש על ידי Apigee, או משתנים מותאמים אישית שאתם מגדירים.
בדוגמה הזו, משתמשים במדיניות Extract Variables כדי לחלץ נתונים ממטען ייעודי (payload) של XML שמכיל מידע על מזג האוויר. המדיניות הזו:
- מחולץ שם העיר ונכתב למשתנה בשם weather.location
- הפעולה מחלצת את התנאים הנוכחיים וכותבת אותם למשתנה בשם weather.condition
לאחר מכן תוכלו להשתמש במדיניות של כלי איסוף הנתונים הסטטיסטיים כדי לאסוף מידע על המשתנים, כמו שמוצג בהמשך:
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="weatherLocation" ref="weather.location" type="string"></Statistic> <Statistic name="weatherCondition" ref="weather.condition" type="string"></Statistic> </Statistics> </StatisticsCollector>
הדרכה מלאה שמראה איך לחלץ נתונים ממטען ייעודי (payload) של XML עבור מדיניות Statistics Collector זמינה במאמר ניתוח תוכן של הודעות API באמצעות Analytics בהתאמה אישית.
מידע על המדיניות בנושא כלי לאיסוף נתונים סטטיסטיים
כשמבצעים את המדיניות של Statistics Collector, היא מתעדת את הערך הנוכחי של משתנה אחד או יותר. המשתנים האלה יכולים להיות משתני זרימה שהוגדרו מראש על ידי Apigee או משתנים מותאמים אישית שאתם מגדירים. הנתונים האלה נכתבים בשרת ניתוח הנתונים של Edge.
כדי לגשת לנתונים הסטטיסטיים שנאספים על ידי המדיניות, משתמשים ב-Edge API או בממשק המשתמש לניהול Edge. לדוגמה, אפשר להשתמש בממשק המשתמש של Edge Management כדי ליצור דוח בהתאמה אישית שמציג את הנתונים שנאספו במגוון פורמטים.
מדריך מלא לשימוש במדיניות של כלי איסוף נתונים סטטיסטיים זמין במאמר ניתוח תוכן של הודעות ב-API באמצעות ניתוח נתונים בהתאמה אישית.
איפה כדאי להציב את המדיניות
אפשר להציב מדיניות של Statistics Collector בזרימת הבקשות או התשובות של שרת proxy של API. עם זאת, אם מציבים כמה כללי מדיניות של Statistics Collector בשרת proxy, הכלל האחרון שמופעל קובע את הנתונים שנכתבים בשרת Analytics, והנתונים שנכתבים על ידי כל כללי המדיניות הקודמים של Statistics Collector אובדים.
תרחיש אחד שבו יכול להיות שיש לכם כמה כללי מדיניות של Statistics Collector ב-proxy ל-API הוא אם יש לכם אחד בזרימת הבקשה או התגובה, ועוד אחד ב-fault handler. אם מתרחשת תקלה ב-proxy ל-API, אז ה-Statistics Collector ב-fault handler קובע את הנתונים שנאספים. אפשר להשתמש ב-Statistics Collector כדי לתעד מידע על התקלה, או לתעד כל מידע אחר שלדעתכם נחוץ. הכלי לאיסוף נתונים סטטיסטיים ב-fault handler קובע את הנתונים שנאספים, בלי קשר לשאלה אם הכלי לאיסוף נתונים סטטיסטיים בבקשה/בתגובה כבר הופעל או לא.
מידע נוסף זמין במאמר בנושא טיפול בשגיאות.
הפניה לרכיב
בהפניה לרכיב מתוארים הרכיבים והמאפיינים של מדיניות Statistics Collector.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1"> <DisplayName>Statistics Collector 1</DisplayName> <Statistics> <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic> </Statistics> </StatisticsCollector>
מאפיינים של <StatisticsCollector>
<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Stats-1">
בטבלה הבאה מתוארים מאפיינים שמשותפים לכל רכיבי ההורה של המדיניות:
| מאפיין | תיאור | ברירת מחדל | נוכחות |
|---|---|---|---|
name |
השם הפנימי של המדיניות. הערך של המאפיין אפשר להשתמש ברכיב |
לא רלוונטי | חובה |
continueOnError |
צריך להגדיר את הערך יש להגדיר ל- |
false | אופציונלי |
enabled |
צריך להגדיר את הערך צריך להגדיר את הערך |
true | אופציונלי |
async |
המאפיין הזה הוצא משימוש. |
false | הוצא משימוש |
<DisplayName> רכיב
צריך להשתמש בנוסף למאפיין name כדי להוסיף תווית למדיניות
עורך proxy של ממשק משתמש לניהול עם שם אחר בשפה טבעית.
<DisplayName>Policy Display Name</DisplayName>
| ברירת מחדל |
לא רלוונטי אם משמיטים את הרכיב הזה, הערך של המאפיין |
|---|---|
| נוכחות | אופציונלי |
| סוג | מחרוזת |
רכיב <Statistics>/<Statistic>
<Statistics> <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic> </Statistics>
| מאפיין | תיאור | ברירת מחדל | נוכחות |
|---|---|---|---|
| שם |
השם שמשמש להפניה לנתונים שנאספו עבור המשתנה שצוין. כשצופים בנתוני ניתוח, משתמשים בשם הזה כדי להפנות לנתונים שנאספו לגבי המשתנה שצוין במאפיין אם המשתנה שצוין על ידי הגבלות על שמות ההגבלות הבאות על שמות חלות על משתני ניתוח נתונים בהתאמה אישית:
|
לא רלוונטי | חובה |
| ref |
משתנה הזרימה שעבורו אתם אוספים נתונים סטטיסטיים. המשתנה הזה יכול להיות משתנה זרימה שהוגדר מראש על ידי Apigee, או משתנה מותאם אישית שהגדרתם ב-proxy ל-API. מאפיין ה-ref מפנה לעיתים קרובות למשתנה מותאם אישית שמוגדר על ידי המדיניות Extract Variables (חילוץ משתנים). מידע נוסף זמין במאמר Extract Variables policy. |
לא רלוונטי | חובה |
| סוג |
מציין את סוג הנתונים של המשתנה שמוגדר במאפיין ref. הערכים התקינים הם: string/integer/float/long/double/boolean. לגבי נתונים מסוג מחרוזת, צריך להפנות לנתונים הסטטיסטיים כמאפיין בדוח מותאם אישית. לסוגי נתונים מספריים (integer/float/long/double), אפשר להפנות לנתונים הסטטיסטיים בדוח מותאם אישית כמאפיין או כמדד. מידע נוסף זמין במאמר בנושא ניהול דוחות בהתאמה אישית. אפשר להשמיט את הערך של type רק אם ref מתייחס למשתנה זרימה מוגדר מראש של Apigee או אם הסוג מוצהר במטען ה-XML של מדיניות Extract Variables. |
מחרוזת | אופציונלי |
הפניה לשגיאה
בקטע הזה מוסבר על הודעות השגיאה ומשתני התהליך שמוגדרים כשהמדיניות הזו מפעילה שגיאה. חשוב לדעת את המידע הזה אם אתם מפתחים כללי תקלה לשרת proxy. מידע נוסף זמין במאמרים מידע שחשוב לדעת על שגיאות מדיניות וטיפול בכשלים.
שגיאות זמן ריצה
ללא.
שגיאות בפריסה
| שם השגיאה | סיבה | תיקון |
|---|---|---|
UnsupportedDatatype |
אם הסוג של המשתנה שצוין במאפיין ref ברכיב <Statistic> של מדיניות Statistics Collector לא נתמך, הפריסה של שרת ה-API המחובר תיכשל. סוגי הנתונים הנתמכים הם string, integer, float, long, double ו-boolean. |
build |
InvalidName |
אם השם שמשמש להפניה לנתונים שנאספו עבור המשתנה שצוין, שמוגדר ברכיב <Statistic> של מדיניות Statistics Collector, מתנגש עם משתנה שהוגדר על ידי המערכת, הפריסה של שרת ה-API העקיף נכשלת. חלק מהמשתנים המוגדרים במערכת הם organization ו-environment. |
build |
DatatypeMissing |
אם סוג המשתנה שצוין במאפיין ref ברכיב <Statistic> של מדיניות Statistics Collector חסר, הפריסה של שרת ה-API proxy נכשלת. |
build |
משתני תקלה
ללא.
סכימה
כל סוג מדיניות מוגדר על ידי סכימת XML (.xsd). סכימות מדיניות זמינות ב-GitHub.
נושאים קשורים
מידע נוסף זמין בדפים הבאים: