בדף הזה מוסבר איך לשלוח מדדים בצד הלקוח של gRPC ל-Cloud Monitoring כשמשתמשים ב-gRPC כדי ליצור אינטראקציה עם Cloud Storage באמצעות אחד מהממשקים הנתמכים הבאים:
ספריית הלקוח של Cloud Storage ב-Java, גרסה 2.41.0 ואילך
אפשר להשתמש במדדים בצד הלקוח כדי לעקוב אחרי הביצועים של אפליקציית הלקוח שמקיימת אינטראקציה עם Cloud Storage באמצעות gRPC. המדד בצד הלקוח שונה מהמדדים בצד השרת, שמספקים תובנות על הביצועים של Cloud Storage מנקודת המבט של צד השרת.
איך זה עובד
אתם יכולים להביע הסכמה לשליחת מדדים בצד הלקוח ל-Cloud Monitoring כשאתם משתמשים ב-gRPC כדי לבצע פעולות ב-Cloud Storage באמצעות אחד מהממשקים הנתמכים.
תמחור
המדדים בצד הלקוח של 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, שבהם אפשר להשתמש כדי לעקוב אחרי הביצועים של לקוח ה-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 של האפליקציה.