Google Cloud Observability כולל שירותי יכולת תצפית שעוזרים להבין את ההתנהגות, התקינות והביצועים של האפליקציות, כולל אפליקציות מבוססות-סוכנים. הבנה של התנהגות האפליקציות ושל אופן החיבור בין הרכיבים עוזרת לצפות שינויים לא צפויים, לזהות אותם ולהגיב להם במהירות וביעילות.
המסמך הזה כולל את הפרטים הבאים:
- הגדרות של מונחים כמו ניראות (observability), ניראות של סוכן (agent) וניראות של אפליקציה ו-APM.
- היתרונות של שירותי ניראות (observability) בפיתוח ובשמירה של אפליקציות אמינות.
- איך Google Cloud Observability עוזר לכם לעקוב אחרי התקינות של האפליקציות והתשתית ולשמור עליה.
- השלבים לתחילת העבודה עם יכולת התבוננות ב-Google Cloud.
ניראות (observability)
יכולת התבוננות (Observability) היא גישה מקיפה לאיסוף ולניתוח של נתוני טלמטריה כדי לעזור לכם להבין את מצב האפליקציות שלכם, כולל אפליקציות מבוססות-סוכנים, ואת סביבת ההפעלה שלהן. נתוני טלמטריה כוללים נתוני יומן, נתוני מדדים ונתוני מעקב. הוא יכול לכלול גם נתונים אחרים שהאפליקציות שלכם יוצרות, כמו הנחיות ותשובות. נתוני טלמטריה מספקים את המידע שדרוש כדי להבין את התקינות והביצועים של האפליקציות.
- נתוני מדדים
- נתוני מדדים הם נתונים מספריים לגבי תקינות או ביצועים שהמערכת מודדת במרווחי זמן קבועים – למשל, ניצול CPU וחביון בקשות. שינויים לא צפויים בנתוני המדדים עשויים להצביע על בעיה שצריך לבדוק. עם הזמן, תוכלו גם לנתח דפוסים כדי להבין את דפוסי השימוש ולצפות את צורכי המשאבים.
- נתוני יומן
יומן הוא רשומה שנוצרת של פעילות המערכת או האפליקציה לאורך זמן. כל יומן הוא אוסף של רשומות ביומן עם חותמת זמן, וכל רשומה ביומן מתארת אירוע ספציפי.
נתוני יומן לרוב מכילים מידע עשיר ומפורט שעוזר להבין מה קרה בחלק מסוים של האפליקציה. עם זאת, נתוני יומן לא מראים בצורה יעילה איך שינוי ברכיב באפליקציה אחד קשור לפעילות ברכיבים אחרים. נתוני מעקב יכולים לגשר על הפער הזה.
- נתוני מעקב
Trace מייצג את הנתיב של בקשה ברכיבים של האפליקציה המבוזרת. כלומר, כל מעקב מייצג פעולה אחת מקצה לקצה. עקבות מורכבים מטווחים, שהם רשומות של פונקציה או פעולה יחידה, ולכן הם מאפשרים לעקוב אחרי זרימת הבקשות ולבדוק את נתוני ההשהיה. המידע הזה יכול לעזור לכם לזהות את המקור לבעיה.
באפליקציות שמבוססות על סוכנים, המעקב מתעד את הפעולות שהסוכן מבצע. לדוגמה, אפשר לתעד שיחות של MCP באמצעות כלי המעקב.
- נתונים אחרים
כדי לקבל תובנות נוספות, אפשר לנתח נתוני יומן, נתוני מדדים ונתוני מעקב, יחד עם מידע רלוונטי אחר. לדוגמה, תווית שמציינת את חומרת האירוע או מזהה לקוח בנתוני היומן מספקת הקשר שימושי לפתרון בעיות ולניפוי באגים.
ניראות של סוכנים
יכולת הצפייה בנציג וירטואלי מתייחסת לשיטות להבנת המצב הפנימי וההתנהגות של סוכני תוכנה, במיוחד סוכנים מבוססי-AI שנבנו באמצעות מודלים גדולים של שפה (LLM). סוכני AI הם לא דטרמיניסטיים ומורכבים. לכן, יכולת התצפית חיונית כדי להבין, לנפות באגים, להעריך ולשפר את הביצועים, הבטיחות והמהימנות שלהם.
Google Cloud תומך בשיפור יכולת הצפייה באפליקציות באמצעות Application Monitoring, שיוצר מרכזי בקרה שמציגים נתוני טלמטריה, נתוני מדדים של משאבי AI ומידע כמו אירועים פתוחים. מידע נוסף זמין בקטע Agent and application observability in Google Cloud במסמך הזה.
ניראות של אפליקציות ו-APM
מעקב אחרי ביצועי אפליקציות (APM) מאפשר לעקוב אחרי הביצועים, הזמינות וחוויית המשתמש של אפליקציות תוכנה, כולל אפליקציות מבוססות-סוכנים, לאבחן אותם ולנהל אותם. מערכת APM בדרך כלל מספקת לוחות בקרה שבהם מוצגים נתוני טלמטריה ושירותים שעוקבים אחרי נתוני טלמטריה. המערכות האלה עוזרות לכם לזהות כשלים.
יכולת התבוננות באפליקציה משתמשת בנתוני טלמטריה כדי ליצור תובנות שיעזרו לכם להבין את ההתנהגות של האפליקציות שלכם.
Google Cloud תומך בשיפור יכולת הצפייה באפליקציות באמצעות Application Monitoring, שיוצר מרכזי בקרה שמציגים נתוני טלמטריה, נתוני מדדים של משאבי AI ומידע כמו אירועים פתוחים. מידע נוסף זמין בקטע Agent and application observability in Google Cloud במסמך הזה.
שירותי ניראות (observability)
שירותי יכולת צפייה אוספים, מנתחים ומשווים נתוני טלמטריה, כמו נתוני יומן, נתוני מדדים ונתוני מעקב. הם מספקים את היכולות הבאות כדי לעזור לכם לשמור על מהימנות האפליקציה:
- איתור בעיות באופן יזום לפני שהן משפיעות על המשתמשים.
- לפתור בעיות מוכרות ובעיות חדשות.
- ניפוי באגים באפליקציות במהלך הפיתוח.
- להבין את ההשפעה של השינויים על האפליקציות.
- לגלות תובנות חדשות באמצעות ניתוח נתונים.
כדי לקרוא מידע נוסף על שיטות עבודה מומלצות בנושא אמינות, כולל עקרונות ושיטות עבודה שקשורים ליכולת צפייה, אפשר לקרוא את הספר Site Reliability Engineering: How Google Runs Production Systems. הנושאים כוללים מעקב אחר מערכות מבוזרות, התראות ופתרון בעיות.
Google Cloud Observability
השירותים ב-Google Cloud Observability עוזרים לכם לאסוף, לנתח ולקשר נתוני טלמטריה מהאפליקציות ומהתשתית הבסיסית. השירותים האלה מספקים גם הגדרות ברירת מחדל מובנות שיעזרו לכם להתחיל. לדוגמה, Application Monitoring יוצר לוחות בקרה ומפות טופולוגיה לאפליקציות, לשירותים ולעומסי העבודה שרשומים ב-מרכז האפליקציות.
איסוף אוטומטי של נתוני טלמטריה
Monitoring, Logging ו-Trace הם שירותים שמופעלים כברירת מחדל כשיוצרים פרויקט ב- Google Cloud . השירותים האלה מספקים את היכולות העיקריות לאיסוף, לניתוח ולהצגה חזותית של נתוני הטלמטריה:
- איסוף אוטומטי של נתוני טלמטריה עבור רוב Google Cloud השירותים.
- איסוף אוטומטי של יומני ביקורת עבור רוב השירותים של Google Cloud.
- לספק שירותי ויזואליזציה, כולל לוחות בקרה וכלי לניתוח טלמטריה, שמאפשרים לכם לראות ולבדוק את נתוני הטלמטריה. לדוגמה, Trace explorer מאפשר לכם לראות עקבות, טווחים ומטא נתונים, כולל הנחיות ותגובות מולטימודאליות. מידע נוסף זמין במאמר בנושא הצגה של נתוני טלמטריה.
- לספק שירותי ניתוח מבוססי SQL לנתוני היומן ולנתוני המעקב. לדוגמה, אתם יכולים להשתמש ב-BigQuery כדי להשוות כתובות URL בנתוני היומן שלכם למערך נתונים ציבורי של כתובות URL זדוניות ידועות.
- לספק מעקב אחרי אפליקציות ומעקב אחרי טלמטריה. לדוגמה, אפשר ליצור מדיניות התראות שתשלח לכם התראות כשנתוני היומן או נתוני המדדים יעמדו בתנאים שתגדירו. אפשר גם להשתמש בניטור סינתטי כדי לבדוק את הביצועים של האפליקציות.
איסוף נתוני טלמטריה מהאפליקציות שבהן הוטמעו כלי מדידה. הוספת קוד למעקב היא קוד שמוסיפים לאפליקציה כדי לשלוח נתוני טלמטריה.
כדי להוסיף לאפליקציה כלי מדידה, מומלץ להשתמש במסגרת מדידה ניטרלית ובעלת קוד פתוח, כמו OpenTelemetry, במקום בממשקי API או בספריות לקוח ספציפיים לספקים ולמוצרים. מידע על המסגרות האלה זמין במאמרים בנושא מדידה ויכולת צפייה ובחירת גישה למדידה.
ניראות של סוכנים ואפליקציות
המעקב אחרי אפליקציות ב- Google Cloud מספק ניראות של סוכן וניראות של אפליקציה. השירות הזה מספק לוחות בקרה ומפות טופולוגיה שמאפשרים לכם להבין את תקינות הביצועים של האפליקציות, השירותים ועומסי העבודה שלכם ב-מרכז האפליקציות. הוא גם יוצר ומציג מדדים כמו שיעורי שגיאות ושימוש באסימונים למשאבי AI. כדי ליצור את המדדים האלה, התכונה 'מעקב אחר ביצועי אפליקציות' מסננת ומצברת את נתוני העקבות באמצעות תוויות ואירועים ספציפיים לאפליקציה, בהתאם למוסכמות הסמנטיות של OpenTelemetry GenAI.
כדי לקבל תובנות לגבי הסוכנים, מומלץ ליצור אותם באמצעות המסגרת של הערכה לפיתוח סוכנים (ADK). ה-ADK מסתמך על OpenTelemetry, ולכן נתוני הטלמטריה שהוא יוצר עקביים עם המוסכמות הסמנטיות של OpenTelemetry GenAI.
כדי לנפות באגים, לעקוב אחרי עלויות או לנתח את התנהגות הסוכן – כולל סוכנים מ-Gemini Enterprise Agent Platform, מ-Agent Gateway ומ-Model Armor – אתם צריכים נתונים של יומנים, מדדים ומעקב:
- יומנים מספקים מידע על אירועים ושגיאות.
- המדדים מאפשרים לכם לעקוב אחרי זמן האחזור והשימוש באסימונים.
- הנתונים האלה מספקים מידע על נתיבי הביצוע, והמערכת מנתחת אותם כדי להפיק מדדים כמו מספר הקריאות למודל או השימוש הכולל בטוקנים. המדדים הנגזרים האלה מספקים תובנות לגבי הביצועים וההתנהגות של הנציגים. מידע נוסף זמין במאמר בנושא צפייה במשאבי AI.
- נתוני ההנחיות והתשובות מאפשרים לכם להעריך את איכות הסוכן ואת תהליך קבלת ההחלטות שלו באמצעות שירות ההערכה של AI גנרטיבי.
לוח הבקרה של ניטור האפליקציות מציג רשימה של שירותים ועומסי עבודה של האפליקציה, כמו אפליקציות Gemini Enterprise, סוכנים של Gemini Enterprise Agent Platform ושרתי MCP:
אפשר לזהות שירותים ועומסי עבודה סוכניים באמצעות סוג התשתית או הסוג הפונקציונלי של מרכז האפליקציות. עמודת הסוג הפונקציונלי מוסתרת כברירת מחדל.
דוגמאות קוד:
תמיכה בזיהוי שגיאות
Error Reporting מנתח רשומות ביומן מ-Cloud Logging כדי למצוא שגיאות. כשError Reporting מוצא שגיאות, הוא מוסיף הערות לרשומות היומן שקשורות לשגיאות ויוצר קבוצת שגיאות. כדאי לעיין בקבוצות השגיאות האלה כדי לזהות את הסיבה לשגיאה ואת ההיסטוריה שלה.
תמיכה ביצירת פרופילים
Cloud Profiler מאפשר לכם לנתח את השימוש במעבד (CPU) ובשימוש בזיכרון באפליקציות שלכם כדי לזהות הזדמנויות לשיפור הביצועים.
קדימה, מתחילים
בקטע הזה מוסבר איך להכיר את התכונות של יכולת הצפייה ב- Google Cloud.
כדאי לנסות את המדריכים להתחלה מהירה
כדאי לנסות את המדריכים למתחילים כדי להכיר את השירותים הזמינים.
צפייה בנתונים שנאספים באופן אוטומטי
רוב Google Cloud השירותים יוצרים באופן אוטומטי נתוני יומן ונתוני מדדים. המשמעות היא שתוכלו להתחיל לצפות בחלק מנתוני יכולת התצפית של שירותים נתמכים ב- Google Cloud ללא הגדרות נוספות.
- חלק מהשירותים, כמו Google Kubernetes Engine (GKE), Compute Engine ו-Cloud SQL, מספקים לוחות בקרה שמוגדרים כברירת מחדל במסוף Google Cloud כדי להציג נתונים של יכולת צפייה בהקשר של השירות. Google Cloud
- שירותי Compute Engine, GKE ו-Cloud Run יוצרים נתוני מדדים של המערכת ונתוני יומנים כברירת מחדל. מגדירים את איסוף הנתונים הנוספים.
- פונקציות של Cloud Run ו-App Engine יוצרות באופן אוטומטי נתוני מדדים, נתוני יומן ונתוני מעקב.
אפשר גם ליצור תרשים של נתוני מדדים שנאספו ב-Metrics Explorer, לצפות בנתוני יומן ב-Logs Explorer או לצפות בנתוני מעקב ב-Trace. כדי לבדוק נתונים קשורים ביחד, אפשר ליצור מרכזי בקרה בהתאמה אישית. לדוגמה, אפשר ליצור מרכז שליטה שכולל נתוני יומן, נתוני מדד לבדיקת ביצועים ומדיניות התראות למכונות וירטואליות.
הגדרת מכונות וירטואליות ב-Compute Engine לאיסוף נתונים נוספים
כברירת מחדל, במכונות וירטואליות ב-Compute Engine נאספים רק נתונים של מדדים בסיסיים של המערכת ונתוני יומנים. עם זאת, אפשר להתקין את Ops Agent כדי לאסוף נתוני טלמטריה נוספים מהאפליקציות ומהמופעים של Compute Engine לצורך פתרון בעיות, מעקב אחר ביצועים והתראות. סוכן התפעול הוא לא אפליקציה שמבוססת על סוכנים. במקום זאת, מדובר בתוכנה דטרמיניסטית שאוספת נתוני טלמטריה.
- איסוף אוטומטי של נתוני מדדים של המארח, כמו נתוני מדדים של מעבד, מעבד גרפי, זיכרון ותהליך.
- איסוף אוטומטי של נתוני יומן מערכת, כמו syslog ממכונות וירטואליות של Linux ויומן האירועים של Windows ממכונות וירטואליות של Windows.
- אפשר לצפות באפליקציות באמצעות:
- שילובים עם אפליקציות של צד שלישי לתוכנות פופולריות כמו Postgres, MongoDB ו-Java Virtual Machine. השילובים האלה כוללים לוחות בקרה מוגדרים מראש וכללי מדיניות בנושא התראות.
- נתוני מדדים של Prometheus
- נתוני מדדים ונתוני מעקב של OpenTelemetry Protocol (OTLP)
- נתונים מיומן היישומים
- סיכום של נתוני הטלמטריה שנאספו זמין במאמר סקירה כללית על סוכן תפעול.
הגדרת אשכולות GKE לאיסוף נתונים נוספים
כברירת מחדל, אשכולות GKE שולחים נתוני יומן מערכת ונתונים של מדדי מערכת אל Logging ו-Monitoring. השירות המנוהל של Google Cloud ל-Prometheus מטפל באיסוף של נתוני מדדים מצד שלישי ונתוני מדדים שהוגדרו על ידי המשתמש.
- אתם יכולים להשתמש בחבילות נתונים של מדדי יכולת צפייה כדי להבין את המצב של האפליקציות ומשאבי האשכול שלכם. לדוגמה, נתוני מדדים של רמת הבקרה שימושיים ליצירת יעדי זמינות (SLO) כדי לעקוב אחרי זמינות השירות והחביון.
- מעקב אחרי אפליקציות של צד שלישי כמו Postgres, MongoDB ו-Redis. השילובים האלה מספקים מרכזי בקרה מוגדרים מראש ומדיניות התראות.
הגדרת Cloud Run לאיסוף נתונים בהתאמה אישית
אם יש לכם שירות Cloud Run שכותב נתוני מדדים של Prometheus, אתם יכולים להשתמש ב-Prometheus sidecar כדי לשלוח את נתוני המדדים ל-Cloud Monitoring.
אם שירות Cloud Run כותב נתוני מדדים של OTLP, אפשר להשתמש ב-OpenTelemetry sidecar. דוגמה מופיעה במדריך לאיסוף נתוני מדדים של OTLP באמצעות קובץ ה-sidecar.