מוצג המסמך של Apigee Edge.
עוברים אל
מסמכי תיעוד של Apigee X. מידע
מהו כלי המעקב?
Trace הוא כלי לפתרון בעיות ולמעקב אחרי שרתי proxy ל-API שפועלים ב-Apigee Edge. Trace מאפשר לבדוק את הפרטים של כל שלב בתהליך proxy ל-API.
בסרטון הזה מוצג היכרות עם כלי המעקב.
איך להשתמש במעקב
קל להשתמש ב-Trace. אתם מתחילים סשן של מעקב, ואז מבצעים קריאה ל-API לפלטפורמת Edge, וקוראים את התוצאות.
- גישה לדף שרתי ה-proxy ל-API, כמו שמתואר בהמשך.
Edge
כדי לגשת לדף שרתי ה-proxy ל-API באמצעות ממשק המשתמש של Edge:
- נכנסים לחשבון בכתובת apigee.com/edge.
- בוחרים באפשרות פיתוח > שרתי proxy ל-API בסרגל הניווט הימני.
Classic Edge (ענן פרטי)
כדי לגשת לדף שרתי ה-proxy ל-API באמצעות ממשק המשתמש של Classic Edge:
- יש להיכנס אל
http://ms-ip:9000
, כאשר ms-ip הוא כתובת ה-IP או שם ה-DNS של הצומת של שרת הניהול. - בוחרים באפשרות APIs > ממשקי API ל-API בסרגל הניווט העליון.
- בוחרים שרת proxy ל-API בדף שרתי proxy ל-API.
- צריך לוודא שה-API שרוצים לעקוב אחריו פרוס.
- לוחצים על Trace כדי לעבור לתצוגה של כלי המעקב.
- משתמשים בתפריט הנפתח Deployment to Trace כדי לבחור אילו ואת גרסת ה-Proxy שאחריה רוצים לעקוב.
- לוחצים על התחלת סשן מעקב. כשסשן המעקב פעיל, שרת ה-proxy ל-API
מתעדת את הפרטים של כל שלב בצינור עיבוד הנתונים. בזמן שסשן המעקב פועל,
הודעות ונתונים הקשריים נאספים מתנועה בזמן אמת.
- אם לא זורמת תנועה בזמן אמת דרך שרת ה-proxy, פשוט שולחים בקשה
ל-API. אפשר להשתמש בכל כלי שרוצים לשלוח בו את הבקשה, כמו curl, Postman או
בכל כלי מוכר. לחלופין, אפשר לשלוח את הבקשה ישירות מכלי המעקב עצמו. צריך רק להזין
את כתובת ה-URL ולוחצים על שליחה. הערה: אפשר לשלוח בקשת GET רק מ-
כלי המעקב, אבל לא בקשת POST.
הערה: סשן Trace יכול לתמוך ב-10 עסקאות של בקשה/תשובה לכל שמעבד הודעות באמצעות ה-proxy ל-API שנבחר. בענן של Edge, עם 2 מעבדי הודעות טיפול בתנועת גולשים, יש תמיכה ב-20 עסקאות של בקשות/תגובה. סשן מעקב באופן אוטומטי יפסיק לאחר 10 דקות אם לא עוצרים אותו באופן ידני.
- אחרי שמקבלים מספיק בקשות, לוחצים על הפסקת המעקב סשן.
- בתפריט הימני מוצגת רשימה של טרנזקציות של בקשה/תשובה שתועדו. לוחצים על אחד או יותר עסקאות כדי לצפות בתוצאות מפורטות.
איך לקרוא מעקב
כלי המעקב מורכב משני חלקים עיקריים, מפת העסקאות ופרטי השלב:
- במפת העסקאות נעשה שימוש בסמלים כדי לסמן כל פריט בולט שלב המתרחש במהלך טרנזקציה של שרת proxy ל-API, כולל הפעלת מדיניות, צעדים ומעברים. כדי לראות סיכום, מעבירים את העכבר מעל סמל כלשהו מידע. השלבים בתהליך הבקשה מופיעים בחלק העליון של מפת העסקאות והתגובה. את שלבי הזרימה למטה.
- הקטע פרטי השלב ברשימות הכלים מידע על העיבוד הפנימי של שרת ה-proxy, כולל משתנים שהוגדרו או נקראו, בכותרות של בקשות ותשובות, ועוד הרבה יותר. לחץ על סמל כלשהו כדי לראות פרטי השלב של השלב הזה.
הנה מפה של כלי מעקב לדוגמה, עם התווית של הפלחים העיקריים לעיבוד של שרת ה-proxy:
מפת העסקאות של כלי המעקב
מפת העסקאות מקרא
בטבלה הבאה מתוארת כוונת הסמלים שיוצגו בעסקה מפה הסמלים האלה מסמנים כל אחד משלבי העיבוד הבולטים בתהליך ה-Proxy.
סמלים של מפת העסקאות
אפליקציית הלקוח ששולחת בקשה ל-ProxyEndpoint של שרת ה-proxy ל-API. | |
המעגלים מסמנים נקודות קצה למעבר בתהליך ה-Proxy. הם נמצאים שם הבקשה מגיעה מהלקוח, כשהבקשה עוברת ליעד, כשהתגובה חוזר מהיעד, וכשהתגובה חוזרת ללקוח. | |
העמודות הגבוהות מציינות את ההתחלה של מקטע זרימה בתהליך ה-Proxy של ה-API. זרימה הפלחים הם: בקשה ל-ProxyEndpoint, בקשה ל-TargetEndpoint, תגובת TargetEndpoint תגובת ProxyEndpoint. פלח כולל את הזרימה מראש, את הזרימה המותנית ואת PostFlow. מידע נוסף זמין במאמר הגדרת תהליכי עבודה אפשר לקבל מידע נוסף. |
|
מעיד על כך שפעולות של Analytics התרחשו ברקע. |
|
זרם מותנה שהתוצאה שלו היא True. למבוא לתהליכים מותנים: ראו הגדרת תהליכי עבודה. חשוב לזכור שחלק מהתנאים נוצרים על ידי Edge. לדוגמה, הדוגמה הבאה היא שבו Edge משתמש כדי לבדוק אם אירעה שגיאה נקודת קצה לשרת proxy: ((error.state equals PROXY_REQ_FLOW) or (error.state equals
PROXY_RESP_FLOW))
|
|
זרימה מותנית שהתוצאה שלה היא False. למבוא לתכונה מותנית ראו את המאמר הגדרת תהליכים. חשוב לזכור שחלק מהתנאים נוצרים על ידי Edge. לדוגמה, הדוגמה הבאה היא שבו Edge משתמש כדי לבדוק אם אירעה שגיאה נקודת קצה יעד: (((error.state equals TARGET_REQ_FLOW) or (error.state equals
TARGET_RESP_FLOW)) or ((error.state equals REQ_SENT) or (error.state equals
RESP_START)))
|
|
מדיניות. לכל סוג מדיניות יש סמל ייחודי. ההודעה הזו מיועדת ל-AssignMessage המדיניות בנושא הסמלים האלה מאפשרים לראות איפה המדיניות מופעלת בסדר הנכון ואם הם מצליחים או לא. אפשר ללחוץ על סמל מדיניות כדי לראות את התוצאות ואם הם צפויים או לא. לדוגמה, ניתן לראות אם ההודעה ישתנה בצורה תקינה או אם הוא נשמר במטמון. ביצוע כללי המדיניות מצוין באופן ברור על ידי וסימנייה. במקרה של שגיאה, יוצג סימן קריאה אדום . טיפ: שימו לב להסבר הקצר או לקו הזמן כדי לראות אם יש מדיניות כלשהי התהליך נמשך יותר זמן מהצפוי. |
|
מופיע כאשר יעד הקצה העורפי הוא אפליקציית Node.js. צפייה סקירה כללית של Node.js ב-Apigee Edge. | |
יעד הקצה העורפי שנקרא על ידי שרת ה-proxy של ה-API. | |
קו הזמן מציין כמה זמן (באלפיות שנייה) לקח זמן העיבוד הושלם. השוואת פלחי הזמן שחלפו עוזרת לבודד את כללי המדיניות משך ההפעלה הארוך ביותר שמאט את הקריאות ל-API. | |
אפסילון מציין טווח זמן הקטן מאלפית שנייה. | |
מושבת. מופיעה על סמל מדיניות כשהמדיניות מושבתת. אפשר להשבית מדיניות באמצעות ה-API הציבורי. ראו הסבר על תצורה של שרת proxy ל-API. |
|
שגיאה. מופיע בסמל מדיניות כשהתנאי של שלב המדיניות מוערך כ-False (מידע נוסף זמין בקטע משתנים ותנאים של זרימה), או בסמל המדיניות IncreaseFault בכל פעם שמופעלת מדיניות IncreaseFault. | |
בוצע דילוג. מופיעה בסמל של מדיניות כשהמדיניות לא הופעלה מאחר שהשלב שהתנאי שלו מוגדר כ-False. מידע נוסף זמין בקטע תנאים ומשתנים של זרימה אפשר לקבל מידע נוסף. |
הבנה פרטי השלב
החלק פרטי השלב בכלי מספק מידע רב על המצב לשרת ה-proxy בכל שלב עיבוד. הנה חלק מהפרטים שמופיעים ב'פרטי השלב'. לוחצים על כל סמל בכלי המעקב כדי לראות פרטים על השלב שנבחר, או משתמשים הלחצנים הבא/הקודם כדי לעבור משלב אחד לשלב אחר.
פרטי שלב | תיאור |
נקודת קצה לשרת proxy | מציין איזה תהליך של ProxyEndpoint נבחר לביצוע. לשרת proxy ל-API יכול להיות מספר נקודות קצה של שרת proxy בעלות שם. |
משתנים |
בתיבת הדו-שיח הזו מפורטים משתני הזרימה שנקראו והוקצו על ידי מדיניות. גם ניהול מצב של שרת proxy באמצעות משתני זרימה. הערה:
|
כותרות של בקשות | ליצירת רשימה של הכותרות של בקשת ה-HTTP. |
בקשת תוכן | הצגת הגוף של בקשת ה-HTTP. |
מאפיינים | המאפיינים מייצגים את המצב הפנימי של שרת ה-proxy ל-API. האירועים האלה לא מוצגים על ידי כברירת מחדל. |
נקודת קצה (endpoint) יעד | מציין איזו נקודת קצה (TargetEndpoint) נבחרה להפעלה. |
כותרות של תשובות | מציינת את הכותרות של תגובת ה-HTTP. |
תוכן התשובה | הצגת הגוף של תגובת ה-HTTP. |
PostClientFlow | מציג מידע על PostClientFlow, המופעל אחרי הבקשה הוחזרה לאפליקציית הלקוח שממנה נשלחה הבקשה. אפשר לצרף רק כללי מדיניות MessageLogging PostClientFlow. PostClientFlow משמש כרגע בעיקר למדידת הזמן מרווח הזמן בין חותמות הזמן של ההתחלה והסיום של הודעת התשובה. |
שיפור הקלטה של הודעות באמצעות מסננים
אפשר לסנן אילו בקשות יופיעו בכלי המעקב על ידי ציון כותרת או שאילתה ערכי הפרמטרים. מסננים מאפשרים לטרגט שיחות ספציפיות שאולי גורמות לבעיות. לדוגמה, יכול להיות שתצטרכו להתמקד בבקשות שכוללות תוכן או בקשות ספציפיים מאפליקציות או משותפים ספציפיים. אפשר לסנן לפי:
- כותרות HTTP – הגבלת המעקב רק לקריאות שמכילות הכותרת. זו דרך טובה לעזור לך לפתור בעיות. אפשר לשלוח כותרת אל של אפליקציה ולבקש ממנו לכלול אותה בשיחה שגורמת לבעיות. ואז Apigee Edge תקליטו רק שיחות עם הכותרת הספציפית הזו, כדי שתוכלו לבדוק את התוצאות.
- פרמטרים של שאילתה – רק קריאות עם ערך ספציפי של פרמטר יתועדו.
דברים שצריך לדעת על תכונת הסינון
- צריך להפעיל מחדש את סשן המעקב אחרי ציון פרמטרים של סינון במסנן .
- הפונקציה AND חלה על הפרמטרים של המסננים. כל צמדי השם/ערך של השאילתה ו/או הכותרת שצוינו חייב להופיע בבקשה להתאמה מוצלחת.
- אין תמיכה בהתאמת תבניות בכלי 'מסננים'.
- הפרמטרים והערכים של המסננים הם תלויי אותיות רישיות (case-sensitive).
איך יוצרים מעקב לסנן
- אם פועל סשן מעקב, צריך להפסיק אותו בלחיצה על הפסקת המעקב סשן.
- לוחצים על מסננים בפינה הימנית העליונה של כלי המעקב כדי להרחיב
שדה מסננים.
- בשדה 'מסננים', מציינים את פרמטר השאילתה ו/או את ערכי הכותרת שרוצים לסנן
מופעלת. בדוגמה הזו אנחנו מציינים שני פרמטרים של שאילתה שלפיה יתבצע הסינון. שני הפרמטרים חייבים להיות
מופיע בבקשה להתאמה מוצלחת.
- מתחילים את פעילות המעקב.
- שולחים קריאה לממשקי ה-API. רק בקשות שכוללות את כל הכותרות ו/או השאילתה שצוינו הפרמטרים יוצרים התאמה מוצלחת.
בדוגמה שלמעלה, הקריאה הזו ל-API תופיע במעקב:
http://docs-test.apigee.net/cats?name=Penny&breed=Calico
אבל הפעולה הזו לא:
http://docs-test.apigee.net/cats?name=Penny
ניפוי באגים באמצעות Trace
אפליקציית Trace מאפשרת לכם לראות הרבה פרטים פנימיים על שרת proxy ל-API. לדוגמה:
- אפשר לראות במבט חטוף אילו כללי מדיניות פועלים כראוי ואילו נכשלים.
- נניח שהבחנתם באחד ממרכזי השליטה של Analytics שאחד מממשקי ה-API שלכם מבחינים בירידה חריגה בביצועים. עכשיו אפשר להשתמש במעקב כדי לזהות איפה שמתרחש בצוואר הבקבוק. נתוני המעקב מציינים את הזמן, באלפיות השנייה, שנדרש לכל אירוע כדי להשלים את העיבוד. אם גיליתם ששלב אחד נמשך יותר מדי זמן, אפשר לבצע תיקונים פעולה.
- בפרטי השלב אפשר לבדוק את הכותרות שנשלחות לקצה העורפי, להציג משתנים שהוגדרו על ידי מדיניות, וכו'.
- אימות הנתיב הבסיסי מאפשר לכם לוודא שהמדיניות מעבירה את ההודעה לכתובת הנכונה השרת.
בחירה של אפשרויות התצוגה
צריך לבחור את אפשרויות התצוגה של פעילות המעקב.
אפשרות | תיאור |
הצגת כללי מדיניות מושבתים | הצגת כל מדיניות שהושבתה. אפשר להשבית מדיניות באמצעות ה-API הציבורי. צפייה הסבר על הגדרות של שרת proxy ל-API. |
הצגת השלבים שדילגת עליהם | הצגת כל השלבים שדילגת עליהם. שלב שדילג עליו מתרחש כשהמדיניות לא בוצעה כי תנאי השלב מוערך כ-False. מידע נוסף זמין בקטע תנאים ומשתנים של זרימה אפשר לקבל מידע נוסף. |
הצגת כל FlowInfos | צרו ייצוג של מעברים בתוך מקטע זרימה. |
השוואה אוטומטית של השלב שנבחר | השוואה בין השלב שנבחר לשלב הקודם. ניתן להשבית את האפשרות הזו כדי לראות רק את הפריטים שנבחרו שלב אחד. |
הצגת המשתנים | הצגה או הסתרה של משתנים שנקראו או הוקצו ערך. |
הצגת המאפיינים | המאפיינים מייצגים את המצב הפנימי של שרת ה-proxy ל-API. (מוסתר כברירת מחדל). |
מתבצעת הורדה של תוצאות המעקב
אפשר להוריד קובץ XML של תוצאות המעקב הגולמיות כדי להציג ולחפש במצב אופליין מתוך טקסט עם הרשאת עריכה. הקובץ מציג את הפרטים המלאים של סשן ההאזנה, כולל התוכן של את כל הכותרות, המשתנים וכללי המדיניות.
כדי להוריד, לוחצים על הורדת סשן Trace.
הצגת בקשות כ-curl
אחרי שעוקבים אחרי קריאה ל-API שבוצעה לשרת יעד, אפשר לראות את הבקשה כ-curl הפקודה. האפשרות הזו שימושית במיוחד לניפוי באגים מכמה סיבות:
- שרת ה-proxy ל-API עשוי לשנות את הבקשה, לכן כדאי לראות איך בקשה משרת ה-proxy שרת היעד שונה מהבקשה המקורית. פקודת curl מייצגת את בקשה.
- במטענים ייעודיים (payloads) גדולים יותר של הודעות, ה-Curl מאפשר לראות את כותרות ה-HTTP ואת ההודעות. התוכן במקום אחד. (כרגע ההגבלה היא כ-1,000 תווים. לקבלת טיפ על מעבר למגבלה הזו, הפוסט הזה לקהילה).
מטעמי אבטחה, תכונת ה-curl מבצעת אנונימיזציה של הכותרת 'HTTP Authorization'.
כדי לראות בקשות כ-curl אחרי שקריאה ל-API מגיעה ב-Trace, בוחרים באפשרות 'Request sent to (הבקשה נשלחה אל) שרת יעד" בשלב התרשים של מפת העסקאות, לוחצים על Show curl. הלחצן בקטע 'הבקשה נשלחה לשרת היעד' בחלונית 'פרטים של שלב'.
שימוש ב-Trace בתמיכה של Apigee
כברירת מחדל, Apigee Edge מאפשר לתמיכה של Apigee להשתמש בכלי Trace עבור שרתי proxy של ה-API כדי לספק תמיכה. אפשר להשבית את האפשרות הזו בכל שלב. עם זאת, השבתת האפשרות הזו עלולה להגביל את היכולת של התמיכה ב-Apigee לספק לך תמיכה.
כדי להשבית את התמיכה של Apigee בכלי Trace:
- נכנסים אל https://apigee.com/edge.
- בוחרים באפשרות ניהול > פרטיות ואבטחה בסרגל הניווט הימני.
- לוחצים על המתג הפעלת תמיכה ב-Apigee כדי לעקוב כדי להשבית את השימוש בכלי Trace על ידי תמיכת Apigee.