בדף הזה מוסבר איך לשלוח מדדים בצד הלקוח של gRPC ל-Cloud Monitoring כשמשתמשים ב-gRPC כדי ליצור אינטראקציה עם Cloud Storage באמצעות אחד מהממשקים הנתמכים הבאים:
ספריית הלקוח של Cloud Storage ב-Java, גרסה 2.41.0 ואילך
- מחבר Apache Beam ב-Dataflow, גרסה 2.2.26 ואילך
אפשר להשתמש במדדים בצד הלקוח כדי לעקוב אחרי הביצועים של אפליקציית הלקוח שמקיימת אינטראקציה עם Cloud Storage באמצעות gRPC. המדד בצד הלקוח שונה מהמדדים בצד השרת, שמספקים תובנות על הביצועים של Cloud Storage מנקודת המבט של צד השרת.
איך זה עובד
אתם יכולים להביע הסכמה לשליחת מדדים בצד הלקוח ל-Cloud Monitoring כשאתם משתמשים ב-gRPC כדי לבצע פעולות ב-Cloud Storage באמצעות אחד מהממשקים הנתמכים. אתם יכולים להציג מדדים בצד הלקוח באמצעות Metrics Explorer כדי לעקוב אחרי האינטראקציות בין Cloud Storage לבין לקוח ה-gRPC ולשפר אותן, לנהל את השימוש ולפתור צווארי בקבוק בביצועים ובעיות טכניות.
תמחור
המדדים בצד הלקוח של Cloud Storage לא כרוכים בתשלום, כלומר אתם יכולים לשלוח, לאחסן ולגשת למדדים בצד הלקוח של Cloud Storage בלי לצבור חיובים ב-Cloud Monitoring. למידע נוסף על מחירים, קראו את המאמר התמחור של Google Cloud Observability.
לפני שמתחילים
כדי להשתמש במדדים בצד הלקוח, קודם צריך לבצע את הפעולות הבאות:
מוודאים שספריית הלקוח או המחבר של Cloud Storage שבהם רוצים להשתמש תומכים ב-gRPC. ספריות הלקוח והמחברים הבאים של Cloud Storage תומכים ב-gRPC:
מפעילים את Cloud Monitoring API.
מפעילים את Cloud Storage API.
מגדירים את התפקידים וההרשאות שנדרשים כדי לשלוח מדדים בצד הלקוח.
התפקידים הנדרשים
כדי להגדיר את ההרשאות שנדרשות לשליחת מדדים בצד הלקוח של gRPC ל-Cloud Monitoring, צריך להקצות את התפקיד כתיבת מדדי מעקב (roles/monitoring.metricWriter) ב-IAM לחשבון השירות שמשמש את הלקוח של gRPC.
התפקיד המוגדר מראש הזה מכיל את ההרשאות שנדרשות כדי לשלוח מדדים בצד הלקוח של gRPC ל-Cloud Monitoring. כדי לראות את ההרשאות הנדרשות, עיינו בקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
monitoring.timeSeries.create
הרשאת ה-IAM הזו כלולה בתפקידים המוגדרים מראש הבאים של Cloud Storage:
- אדמין באחסון (
roles/storage.admin) - אדמין של אובייקטים באחסון (
roles/storage.objectAdmin) - משתמש באובייקטים באחסון (
roles/storage.objectUser)
יכול להיות שתוכלו לקבל את ההרשאות האלה גם בתפקידים בהתאמה אישית או בתפקידים מוגדרים מראש אחרים. למידע נוסף על התפקיד "כתיבת מדדים ב-Monitoring", קראו את המאמר בנושא IAM של roles/monitoring.metricWriter.
לתשומת ליבכם
אם אתם משתמשים בחיבור ל-Cloud Storage ב-Managed Service for Apache Spark, אתם צריכים להקצות את התפקיד Monitoring Metric Writer (
roles/monitoring.metricWriter) ב-IAM לחשבון השירות של המכונה הווירטואלית (VM) ב-Managed Service for Apache Spark.אם אתם משתמשים במחבר של Apache Beam ב-Dataflow, אתם צריכים להקצות את התפקיד Monitoring Metric Writer (
roles/monitoring.metricWriter) ב-IAM לחשבון השירות של ה-worker ב-Dataflow.
הצגת מדדים ב-Metrics Explorer
כדי לראות את המדדים בצד הלקוח של Cloud Storage gRPC ב-Metrics Explorer, פועלים לפי ההוראות הבאות.
נכנסים לדף Metrics Explorer במסוף Google Cloud .
בוחרים את הפרויקט שרוצים לראות את המדדים שלו.
בתפריט הנפתח מדד, לוחצים על בחירת מדד.
בסרגל החיפוש Filter by resource or metric name, מזינים את הערך
storage.googleapis.com/Clientאו מחפשים את המדד שרוצים להחיל לפי שם המדד ולוחצים על Apply. כדי להוסיף יותר ממדד אחד, לוחצים על Add query.Cloud Storage מחיל את המדדים על הפרויקט. אפשר לסנן או לצבור את המדדים באמצעות התפריטים הנפתחים הבאים:
כדי לבחור ולהציג קבוצת משנה של נתונים על סמך קריטריונים מסוימים, משתמשים בתפריט הנפתח Filter.
כדי לשלב כמה נקודות על הגרף לערך אחד ולראות תצוגה מסוכמת של המדדים, משתמשים בתפריט הנפתח צבירה.
מפעילים את האפליקציה למשך דקה לפחות לפני שבודקים אם פורסמו מדדים.
במאמר סקירה כללית של מרכזי בקרה מוסבר איך להציג את המדדים שהוספתם לפרויקט באמצעות מרכז בקרה.
תיאורי המדדים
בקטעים הבאים מפורטים מדדים בצד הלקוח של Cloud Storage, שבהם אפשר להשתמש כדי לעקוב אחרי הביצועים של לקוח ה-gRPC.
מדדי ניסיונות של לקוחות
המדדים הבאים אוספים נתוני ביצועים לגבי ניסיונות ספציפיים של לקוח לתקשר עם שרת. מדדים לכל ניסיון של הלקוח יכולים לעזור לכם למדוד את התנהגות הניסיונות החוזרים, לזהות צווארי בקבוק ולשפר את התקשורת בין הלקוח לשרת.
| המדד המלא | תיאור | סוג מכשיר | יחידה | מאפיינים |
|---|---|---|---|---|
storage.googleapis.com/client/grpc/client/attempt/started |
Preview. המספר הכולל של ניסיונות ה-RPC שהתחילו, כולל אלה שלא הושלמו. |
הגשת הצעה נגדית | {attempt} |
|
storage.googleapis.com/client/grpc/client/attempt/duration |
Preview. משך הזמן הכולל של ניסיון RPC, כולל הזמן שלוקח לבחור ערוץ משנה. |
היסטוגרמה | s |
|
storage.googleapis.com/client/grpc/client/attempt/sent_total_compressed_message_size |
Preview. מספר הבייטים הכולל, דחוסים אבל לא מוצפנים, שנשלחים בכל הודעות הבקשה, חוץ ממטא-נתונים לכל ניסיון RPC. הנתון הזה לא כולל בייטים של gRPC או של מסגור תעבורה. |
היסטוגרמה | By |
|
storage.googleapis.com/client/grpc/client/attempt/rcvd_total_compressed_message_size |
Preview. מספר הבייטים הכולל, דחוסים אבל לא מוצפנים, שהתקבלו בכל הודעות התגובה, חוץ ממטא-נתונים לכל ניסיון RPC. הנתון הזה לא כולל בייטים של gRPC או של מסגור תעבורה. |
היסטוגרמה | By |
|
מידע נוסף על כלים לכל ניסיון של לקוח זמין במסמכי התיעוד של מדדי OpenTelemetry ב-GitHub.
מדדים של שיחות בחשבון הלקוח
המדדים הבאים מספקים תצוגה מצטברת של כל מחזור החיים של קריאת לקוח לשרת. המדדים של קריאות הלקוח מספקים נתונים ברמה גבוהה על קריאות הלקוח, מדדי מעקב כדי להבין את דפוסי הקריאות, ועוזרים לזהות את תדירות השגיאות.
| המדד המלא | תיאור | סוג מכשיר | יחידה | מאפיינים |
|---|---|---|---|---|
storage.googleapis.com/client/grpc/client/call/duration |
Preview. מודד את הזמן מקצה לקצה שלוקח לספריית gRPC להשלים RPC מנקודת המבט של האפליקציה. |
היסטוגרמה | s |
|
מידע נוסף על כלים לכל קריאה של לקוח זמין במאמרי העזרה של מדדי OpenTelemetry ב-GitHub.
מדדים של חיישן עומס הבקשות
המדדים הבאים מספקים תובנות לגבי היעילות של השימוש של אפליקציית הלקוח בחיישן עומס הבקשות. מדדי חישת עומס של בקשות יכולים לעזור לכם לאזן את העומסים בשרת, לשפר את ניצול המשאבים ולקצר את זמני התגובה ללקוחות. המדדים הבאים זמינים רק בקישוריות ישירה.
| המדד המלא | תיאור | סוג מכשיר | יחידה | מאפיינים |
|---|---|---|---|---|
storage.googleapis.com/client/grpc/lb/rls/cache_entries |
Preview. מספר הרשומות במטמון של חיישן העומס של הבקשות. |
מד | {entry} |
|
storage.googleapis.com/client/grpc/lb/rls/cache_size |
Preview. הגודל הנוכחי של המטמון לחישת עומס הבקשות. |
מד | By |
|
storage.googleapis.com/client/grpc/lb/rls/default_target_picks |
Preview. מספר הבחירות של מאזן העומסים (LB) שנשלחו ליעד ברירת המחדל. |
הגשת הצעה נגדית | {pick} |
|
storage.googleapis.com/client/grpc/lb/rls/target_picks |
Preview. מספר הבחירות של איזון העומסים שנשלחו לכל יעד של חיישן עומס בקשות. אם היעד שמוגדר כברירת מחדל מוחזר גם על ידי השרת לחישת עומס של בקשות, קריאות RPC שנשלחות ליעד הזה מהמטמון נספרות במדד הזה, ולא במדד grpc.rls.default_target_picks. |
הגשת הצעה נגדית | {pick} |
|
storage.googleapis.com/client/grpc/lb/rls/failed_picks |
Preview. מספר הבחירות של LB שנכשלו בגלל בקשה שנכשלה לחישת עומס הבקשות או בגלל שהערוץ של חישת עומס הבקשות הוגבל. |
הגשת הצעה נגדית | {pick} |
|
מדדי לקוח של xDiscovery Service
המדדים הבאים מספקים תובנות לגבי האינטראקציה של אפליקציית הלקוח עם מישור הבקרה של שירות xDiscovery (xDS) כדי לגלות ולהגדיר חיבורים לשירותים לקצה העורפי. מדדי xDS יכולים לעזור לכם לעקוב אחרי זמן האחזור של בקשות השירות, לעקוב אחרי עדכוני ההגדרות ולשפר את הביצועים הכוללים של xDS.
המדדים הבאים זמינים רק בקישוריות ישירה.
| המדד המלא | תיאור | סוג מכשיר | יחידה | מאפיינים |
|---|---|---|---|---|
storage.googleapis.com/client/grpc/xds_client/connected |
Preview. בודק אם ללקוח xDS יש זרם ADS פעיל לשרת xDS. בשרת נתון, המדד הזה מוגדר כ-1 כשהסטרימינג נוצר בהתחלה. אם יש כשל בקישוריות או אם הסטרימינג של ADS נכשל בלי שמוצגת הודעת תגובה בהתאם ל-A57, המדד מוגדר כ-0. אחרי שמגדירים את הערך 0, המדד יאופס לערך 1 כשתתקבל התגובה הראשונה בסטרימינג של ADS. המדד הזה זמין רק בספריות הלקוח של Cloud ל-C++. |
מד | {bool} |
|
storage.googleapis.com/client/grpc/xds_client/resource_updates_invalid |
Preview. מספר המשאבים שהתקבלו ונחשבו לא תקינים. המדד הזה זמין רק בספריות הלקוח של Cloud ל-C++. |
הגשת הצעה נגדית | {resource} |
|
storage.googleapis.com/client/grpc/xds_client/resource_updates_valid |
Preview. מספר המשאבים שהתקבלו ונחשבו לתקינים, גם אם לא השתנו.
המדד הזה זמין רק בספריות הלקוח של Cloud ל-C++. |
הגשת הצעה נגדית | {resource} |
|
storage.googleapis.com/client/grpc/xds_client/resources |
Preview. מספר המשאבים של xDS. המדד הזה זמין רק בספריות הלקוח של Cloud ל-C++. |
מד | {resource} |
|
storage.googleapis.com/client/grpc/xds_client/server_failure |
Preview. מספר שרתי ה-xDS שכבר לא פועלים כמו שצריך, או שהם לא זמינים, עמוסים מדי או מספקים נתוני הגדרה שגויים או לא תקינים. המדד הזה זמין רק בספריות הלקוח של Cloud ל-C++. |
הגשת הצעה נגדית | {failure} |
|
מידע נוסף על מדדי לקוח xDS זמין במאמרי העזרה בנושא איזון עומסים גלובלי מבוסס-xDS ב-GitHub.
ביטול ההסכמה למדדים בצד הלקוח
אם רוצים, אפשר להפסיק את השימוש במדדים בצד הלקוח.
Java
public GrpcStorageOptions.Builder setEnableGrpcClientMetrics(false enableGrpcClientMetrics)
מידע נוסף זמין במאמר השיטה GrpcStorageOptions.Builder של המחלקה בספריות הלקוח של Cloud ל-Java למדדי לקוח של gRPC.
C++
כדי לבטל את ההסכמה למדדים בצד הלקוח ל-gRPC API באמצעות ספריות הלקוח של Cloud ל-C++, קראו את המאמר Struct EnableGrpcMetricsOption.
אם אתם משתמשים ב-Bazel כדי ליצור את האפליקציה ורוצים להשבית את המדדים בצד הלקוח, הגדירו את האפשרות enable_grpc_metrics ל-false בקובץ ה-build של האפליקציה.