בדף הזה יש סקירה כללית על איסוף מעקבים באמצעות OpenTelemetry. כדי לעקוב אחרי בקשות Spanner ולנפות באגים, אפשר להפעיל מעקבים בספריות הלקוח של Spanner. מעקב מצד הלקוח ומעקב מקצה לקצה יכולים לעזור לכם לעקוב אחרי הביצועים ולפתור בעיות.
המעקב מספק מידע רלוונטי לכל בקשה מלקוח, כמו:
טווחים עם חותמות זמן של מועד שליחת בקשת RPC על ידי הלקוח ומועד קבלת תגובת RPC על ידי הלקוח, כולל זמן האחזור שנגרם על ידי הרשת ומערכת הלקוח.
מאפיינים (צמדי מפתח/ערך) שמספקים מידע על הלקוח ועל ההגדרה שלו.
הערות עם אירועים חשובים בטווחים.
מידע נוסף על טווחים ומאפיינים זמין במאמרים Spans ו-Attributes במסמכי התיעוד של OpenTelemetry.
מעקב מקצה לקצה
בנוסף למעקב בצד הלקוח, אפשר להפעיל מעקב מקצה לקצה. מעקב מקצה לקצה עוזר לכם להבין ולנפות באגים בבעיות של זמן אחזור שספציפיות ל-Spanner, כמו הבעיות הבאות:
בודקים אם זמן האחזור נובע מזמן האחזור ברשת בין האפליקציה לבין Spanner, או אם זמן האחזור מתרחש בתוך Spanner.
מזהים את האזורים שדרכם מנותבות הבקשות של האפליקציה, ואם יש בקשה חוצת-אזורים. Google Cloud בקשה חוצה אזורים בדרך כלל מצביעה על זמני אחזור ארוכים יותר בין האפליקציה לבין Spanner.
כדי למנוע עומס יתר על Cloud Trace ולנהל את העלויות בצורה יעילה, יש הגבלה על מספר טווחי המעקב שאפשר לייצא ממעקב מקצה לקצה. למגבלה הזו אין השפעה על השימוש במעקב מקצה לקצה לצורך פתרון בעיות.
OpenTelemetry
ספריות הלקוח של Spanner תומכות באיסוף נתוני מעקב באמצעות ממשקי OpenTelemetry. OpenTelemetry היא מסגרת קוד פתוח לצפייה. OpenTelemetry מציע מגוון רחב של הגדרות, כמו כלי ייצוא לשרתי קצה ספציפיים, יחסי דגימה ומגבלות של טווחים.
ייצוא של עקבות באמצעות OTLP
כחלק מההגדרה של OpenTelemetry, משתמשים בכלי לייצוא נתונים כדי לשלוח נתוני מעקב לקצה עורפי של ניראות. מומלץ להשתמש בכלי לייצוא של OpenTelemetry Protocol (OTLP) ששולח נתונים באמצעות פרוטוקול OpenTelemetry. אפשר להגדיר את כלי הייצוא OTLP לשליחת עקבות ישירות אל קצה עורפי של ניראות (observability) שתומך ב-OTLP, כמו Cloud Trace באמצעות Telemetry
API, או אל collector של OpenTelemetry.
מגבלות
יש מגבלות מסוימות על עקבות ב-Spanner:
- האפשרות 'טווחים של מעקב' זמינה רק בספריות הלקוח של Java, Go, Node ו-Python.
- אפשר לייצא עקבות מקצה לקצה רק אל Cloud Trace.
תמחור
בנוסף לשימוש ב-Spanner, יכול להיות שיהיו חיובים על מעקב דרך קצה העורף של יכולת התצפית.
הטמעה של טווחים של עקבות ב-backend של כלי התצפית כרוכה בתשלום. לדוגמה, אם אתם משתמשים ב-Cloud Trace כקצה העורפי, אתם מחויבים בהתאם לתמחור של Cloud Trace.
כדי להבין טוב יותר את החיוב, כדאי להתחיל עם יחס דגימה קטן של נתוני מעקב, בהתאם לתנועה שלכם.
המאמרים הבאים
כדי להגדיר מעקב מצד הלקוח ומעקב מקצה לקצה, אפשר לעיין במאמר הגדרת איסוף נתוני מעקב באמצעות OpenTelemetry.