הצגת המדדים

בנושא הזה מוסבר איך לצפות במדדים של Apigee hybrid בלוח בקרה של Stackdriver.

מידע על Stackdriver

מידע נוסף על מדדים, מרכזי בקרה ו-Stackdriver זמין במאמרים הבאים:

הפעלת מדדים היברידיים

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

מידע על שמות ותוויות של מדדים היברידיים

כשמפעילים את Hybrid, המערכת מאכלסת באופן אוטומטי את המדדים של Stackdriver. קידומת שם הדומיין של המדדים שנוצרים על ידי Hybrid היא:

apigee.googleapis.com/

לדוגמה, המדד /proxy/request_count מכיל את המספר הכולל של הבקשות שהתקבלו על ידי proxy ל-API. לכן שם המדד ב-Stackdriver הוא:

apigee.googleapis.com/proxy/request_count

ב-Stackdriver אפשר לסנן ולקבץ נתונים של מדדים על סמך תוויות. חלק מהתוויות מוגדרות מראש, ואחרות נוספות באופן מפורש על ידי Hybrid. בקטע Available metrics שבהמשך מפורטים כל המדדים ההיברידיים הזמינים וכל התוויות שנוספו במיוחד למדד שאפשר להשתמש בהן לסינון ולקיבוץ.

הצגת מדדים

בדוגמה הבאה אפשר לראות איך מציגים מדדים ב-Stackdriver:
  1. פותחים את Metrics Explorer של Monitoring בדפדפן. אם אתם כבר במסוף Stackdriver, אתם יכולים גם לבחור באפשרות Metrics explorer.
  2. בקטע Find resource type and metric, מאתרים ובוחרים את המדד שרוצים לבדוק. בוחרים מדד ספציפי מתוך Available metrics או מחפשים מדד. לדוגמה, מחפשים את proxy/latencies:

    הזנת מדד

  3. בוחרים את המדד הרצוי.
  4. מחילים מסננים. אפשרויות הסינון של כל מדד מפורטות במדדים זמינים. לדוגמה, למדד proxy_latencies, אפשרויות הסינון הן: org=org_name.
  5. בתרשים מוצג המדד שנבחר.
  6. לוחצים על Save.

יצירת מרכז בקרה

מרכזי בקרה הם דרך אחת לצפייה ולניתוח של נתוני מדדים שחשובים לכם. ב-Stackdriver יש מרכזי בקרה מוגדרים מראש למשאבים ולשירותים שבהם אתם משתמשים, ואפשר גם ליצור מרכזי בקרה בהתאמה אישית.

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

בדוגמה הבאה מוסבר איך ליצור מרכז שליטה ב-Stackdriver ואז להוסיף תרשימים כדי לראות נתוני מדדים:

  1. פותחים את Metrics Explorer ב-Monitoring בדפדפן ובוחרים באפשרות Dashboards.
  2. לוחצים על + יצירת מרכז שליטה.
  3. נותנים שם למרכז הבקרה. לדוגמה: תנועה בבקשות לשרת proxy היברידי
  4. לוחצים על אישור.
  5. כדי להוסיף תרשים למרכז הבקרה, מבצעים את השלבים הבאים:

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

מדדים זמינים

בטבלאות הבאות מפורטים מדדים לניתוח תנועת פרוקסי.

מדדי תנועה של שרת proxy, יעד ושרת

שירות Prometheus אוסף ומעבד מדדים (כפי שמתואר במאמר איסוף מדדים) לגבי תנועה של proxy, יעד ושרת.

בטבלה הבאה מתוארים המדדים והתוויות שבהם נעשה שימוש ב-Prometheus. התוויות האלה משמשות לרשומות ביומן המדדים.

שם המדד תווית שימוש
/proxy/request_count method המספר הכולל של בקשות לשרת proxy של API שהתקבלו.
/proxy/response_count method response_code המספר הכולל של תגובות proxy ל-API שהתקבלו.
/proxy/latencies method המספר הכולל של אלפיות השנייה שנדרשו כדי להגיב לקריאה. הזמן הזה כולל את התקורה של proxy ל-API של Apigee ואת הזמן של שרת היעד.
/target/request_count method

target_type

target_endpoint

המספר הכולל של בקשות שנשלחו ליעד של ה-proxy.
/target/response_count method

response_code

target_type

target_endpoint

המספר הכולל של התגובות שהתקבלו מיעד ה-proxy.
/target/latencies method

response_code

target_type

target_endpoint

המספר הכולל של אלפיות השנייה שנדרשו כדי להגיב לקריאה. הזמן הזה לא כולל את התקורה של proxy ל-API של Apigee.
/policy/latencies policy_name המספר הכולל של אלפיות השנייה שנדרשו להפעלת המדיניות הזו.
/server/fault_count source

המספר הכולל של תקלות באפליקציית השרת.

לדוגמה, שם האפליקציה יכול להיות apigee-runtime,‏ apigee-synchronizer או apigee-udca. אפשר להשתמש בתווית pod_name כדי לסנן את התוצאות לפי אפליקציה.

/server/nio state מספר השקעים הפתוחים.
/server/num_threads מספר השרשורים הפעילים שאינם שרשורי daemon בשרת.
/server/request_count method

type

המספר הכולל של בקשות שהתקבלו על ידי אפליקציית השרת.

לדוגמה, שם האפליקציה יכול להיות apigee-runtime,‏ apigee-synchronizer או apigee-udca. אפשר להשתמש בתווית pod_name כדי לסנן את התוצאות לפי אפליקציה.

/server/response_count method

response_code
type

המספר הכולל של תגובות שנשלחו על ידי אפליקציית השרת.

לדוגמה, שם האפליקציה יכול להיות apigee-runtime,‏ apigee-synchronizer או apigee-udca. אפשר להשתמש בתווית pod_name כדי לסנן את התוצאות לפי אפליקציה.

/server/latencies method

response_code
type

זמן האחזור הוא זמן האחזור באלפיות השנייה שנוצר על ידי אפליקציית השרת.

לדוגמה, שם האפליקציה יכול להיות apigee-runtime,‏ apigee-synchronizer או apigee-udca. אפשר להשתמש בתווית pod_name כדי לסנן את התוצאות לפי אפליקציה.

/upstream/request_count method

type

מספר הבקשות שנשלחו מאפליקציית השרת לאפליקציית ה-upstream שלה.

לדוגמה, עבור apigee-synchronizer, מישור הבקרה נמצא במעלה הזרם. לכן, upstream/request_count עבור apigee-synchronizer הוא מדד שמציין את הבקשות ש-apigee-synchronizer שלח למישור הבקרה.

/upstream/response_count method

response_code

type

מספר התגובות שהתקבלו מאפליקציית השרת מהאפליקציה במעלה הזרם.

לדוגמה, עבור apigee-synchronizer, מישור הבקרה נמצא במעלה הזרם. לכן, upstream/response_count עבור apigee-synchronizer הוא מדד שמציין את הבקשות ש-apigee-synchronizer קיבל ממישור הבקרה.

/upstream/latencies method

response_code
type

זמן האחזור שנוצר באפליקציית השרת במעלה הזרם באלפיות השנייה.

לדוגמה, עבור apigee-synchronizer, מישור הבקרה נמצא במעלה הזרם. לכן upstream/latencies עבור apigee-synchronizer הוא מדד שמציין את זמן האחזור ממישור הבקרה.

מדדי UDCA

שירות Prometheus אוסף ומעבד מדדים (כפי שמתואר במאמר בנושא איסוף מדדים) עבור שירות UDCA, בדיוק כמו שהוא עושה עבור שירותים היברידיים אחרים.

בטבלה הבאה מתוארים המדדים והתוויות שבהם נעשה שימוש ב-Prometheus בנתוני המדדים של UDCA. התוויות האלה משמשות לרשומות ביומן המדדים.

שם המדד תווית שימוש
/udca/server/local_file_oldest_ts dataset

state

חותמת הזמן, באלפיות השנייה מאז תחילת ראשית זמן יוניקס, של הקובץ הכי ישן במערך הנתונים.

הערך הזה מחושב כל 60 שניות, והוא לא משקף את המצב בזמן אמת. אם הכלי UDCA מעודכן ואין קבצים שממתינים להעלאה בזמן חישוב המדד הזה, הערך יהיה 0.

אם הערך הזה ממשיך לגדול, סימן שהקבצים הישנים עדיין נמצאים בדיסק.

/udca/server/local_file_latest_ts dataset

state

חותמת הזמן, באלפיות שנייה מאז תחילת ראשית זמן יוניקס (Unix Epoch), של הקובץ האחרון בדיסק לפי מצב.

הערך הזה מחושב כל 60 שניות, והוא לא משקף את המצב בזמן אמת. אם הכלי UDCA מעודכן ואין קבצים שממתינים להעלאה בזמן חישוב המדד הזה, הערך יהיה 0.

/udca/server/local_file_count dataset

state

ספירה של מספר הקבצים בדיסק במאגר איסוף הנתונים.

הערך האידיאלי הוא קרוב ל-0. ערך גבוה ועקבי מצביע על כך שהקבצים לא מועלים או שהכלי UDCA לא מצליח להעלות אותם מספיק מהר.

הערך הזה מחושב כל 60 שניות, והוא לא משקף את המצב של ה-UDCA בזמן אמת.

/udca/server/total_latencies dataset

מרווח הזמן בשניות בין יצירת קובץ הנתונים לבין העלאה מוצלחת של קובץ הנתונים.

הקטגוריות יהיו 100ms,‏ 250ms,‏ 500ms,‏ 1s,‏ 2s,‏ 4s,‏ 8s,‏ 16s,‏ 32s ו-64s.

היסטוגרמה של זמן האחזור הכולל מזמן יצירת הקובץ ועד לזמן ההעלאה המוצלחת.

/udca/server/upload_latencies dataset

הזמן הכולל, בשניות, שבו הכלי UDCA העלה קובץ נתונים.

הקטגוריות יהיו 100ms,‏ 250ms,‏ 500ms,‏ 1s,‏ 2s,‏ 4s,‏ 8s,‏ 16s,‏ 32s ו-64s.

במדדים יוצג היסטוגרמה של זמן האחזור הכולל של ההעלאה, כולל כל השיחות במעלה הזרם.

/udca/upstream/http_error_count service

dataset

response_code

המספר הכולל של שגיאות HTTP שנתקלו בהן ב-UDCA. המדד הזה שימושי כדי לקבוע איזה חלק מהתלות החיצונית של UDCA נכשל ומאיזו סיבה.

השגיאות האלה יכולות להופיע בשירותים שונים (getDataLocation, Cloud storage, Token generator) ובמערכי נתונים שונים (כמו api ו-trace) עם קודי תגובה שונים.

/udca/upstream/http_latencies service

dataset

זמן האחזור של שירותים במעלה הזרם, בשניות.

הקטגוריות יהיו 100ms,‏ 250ms,‏ 500ms,‏ 1s,‏ 2s,‏ 4s,‏ 8s,‏ 16s,‏ 32s ו-64s.

היסטוגרמה של זמן האחזור משירותים במעלה הזרם.

/udca/upstream/uploaded_file_sizes dataset

גודל הקובץ שמועלה לשירותי Apigee, בבייטים.

הקטגוריות יהיו 1KB,‏ 10KB,‏ 100KB,‏ 1MB,‏ 10MB,‏ 100MB ו-1GB.

היסטוגרמה של גודל הקובץ לפי מערך נתונים, ארגון וסביבה.

/udca/upstream/uploaded_file_count dataset מספר הקבצים שהכלי UDCA העלה לשירותי Apigee.

חשוב לדעת:

  • הערך של מערך הנתונים event צריך להמשיך לגדול.
  • ערך מערך הנתונים api צריך להמשיך לגדול אם יש תנועה קבועה בארגון או בסביבה.
  • הערך של קבוצת הנתונים trace צריך לעלות כשמשתמשים בכלי המעקב של Apigee כדי לנפות באגים או לבדוק את הבקשות.
/udca/disk/used_bytes dataset

state

הנפח שתופסים קובצי הנתונים בדיסק של ה-pod לאיסוף נתונים, בבייטים.

עלייה בערך הזה לאורך זמן:

  • ready_to_upload מציין שהסוכן מפגר.
  • failed מציין שהקבצים מצטברים בדיסק ולא מועלים. הערך הזה מחושב כל 60 שניות.
/udca/server/pruned_file_count dataset

state

מספר הקבצים שנמחקו כי הזמן שחלף מאז היצירה שלהם (TTL) חרג מסף שהוגדר. מערך הנתונים יכול לכלול API, מעקב ואחרים, והמצב יכול להיות UPLOADED,‏ FAILED או DISCARDED.
/udca/server/retry_cache_size dataset

ספירה של מספר הקבצים, לפי מערך נתונים, שהכלי UDCA מנסה להעלות שוב.

אחרי 3 ניסיונות חוזרים לכל קובץ, הכלי UDCA מעביר את הקובץ לספריית המשנה /failed ומסיר אותו מהמטמון הזה. עלייה בערך הזה לאורך זמן מעידה על כך שהמטמון לא מתרוקן, וזה קורה כשהקבצים מועברים לספריית המשנה /failed אחרי 3 ניסיונות חוזרים.

מדדים של Cassandra

שירות Prometheus אוסף ומעבד מדדים (כפי שמתואר במאמר בנושא איסוף מדדים) עבור Cassandra, בדיוק כמו שהוא עושה עבור שירותים היברידיים אחרים.

בטבלה הבאה מתוארים המדדים והתוויות שבהם נעשה שימוש ב-Prometheus בנתוני המדדים של Cassandra. התוויות האלה משמשות לרשומות ביומן המדדים.

שם המדד (לא כולל הדומיין) תווית שימוש
/cassandra/process_max_fds המספר המקסימלי של מתארי קבצים פתוחים.
/cassandra/process_open_fds פותחים מתארים של קבצים.
/cassandra/jvm_memory_pool_bytes_max pool השימוש המקסימלי בזיכרון של JVM במאגר.
/cassandra/jvm_memory_pool_bytes_init pol השימוש הראשוני בזיכרון של JVM במאגר.
/cassandra/jvm_memory_bytes_max area השימוש המקסימלי בזיכרון הערימה של JVM.
/cassandra/process_cpu_seconds_total זמן השימוש במעבד של המשתמש והמערכת בשניות.
/cassandra/jvm_memory_bytes_used area שימוש בזיכרון ערימה (heap) של מכונה וירטואלית של Java‏ (JVM).
/cassandra/compaction_pendingtasks unit פעולות דחיסה שלא הושלמו ב-SSTable של Cassandra. מידע נוסף זמין במאמר בנושא דחיסה.
/cassandra/jvm_memory_bytes_init area השימוש הראשוני בזיכרון הערימה של JVM.
/cassandra/jvm_memory_pool_bytes_used pool שימוש בזיכרון של מאגר JVM.
/cassandra/jvm_memory_pool_bytes_committed pool השימוש בזיכרון שהוקצה למאגר JVM.
/cassandra/clientrequest_latency scope

unit

זמן האחזור של בקשת קריאה בטווח האחוזון ה-75 במיקרו-שניות.
/cassandra/jvm_memory_bytes_committed area השימוש בזיכרון ערימה (heap) ב-JVM.