אתם יכולים להגדיר את האפליקציות האג'נטיות שלכם שמתקשרות עם שרתי Google Cloud MCP מרוחקים, כך שהשרתים האלה יוכלו ליצור יחידות לוגיות למעקב שמתעדות את סטטוס השיחות. אחר כך תוכלו להשתמש ב-Cloud Trace, ששומר ומנתח טווחים שמתעדים קריאות לכלים, הפעלות של שיטות, הנחיות ותשובות, כדי להבין את ההתנהגות של האפליקציות שלכם שמבוססות על סוכנים.
טווח מתעד פונקציה או פעולה יחידה שמהווה חלק מפעולה גדולה יותר מקצה לקצה. Trace מייצג פעולה אחת מקצה לקצה ומורכב מ-spans. לכן, יומן מעקב מספק מידע על רצף הפונקציות שנקראו ועל זמן האחזור הכולל, בעוד שיחידה לוגית למעקב מספקת מידע על הסטטוס ועל זמן האחזור של פונקציה ספציפית.
מידע על כלים
כלים מאפשרים לסוכן לאסוף מידע מחוץ לנתוני האימון שלו, בדרך כלל באמצעות אינטראקציה עם ממשקי API חיצוניים. בעזרת שרתי MCP של Google Cloud, אפליקציות מבוססות-סוכנים יכולות להפעיל כלים שמפעילים Google Cloud שיטות API. לדוגמה, האפליקציה יכולה להפעיל את הכלי list_log_entries כדי לאחזר נתונים עדכניים מיומן.
Model Context Protocol (MCP) הוא מפרט שמגדיר דרך סטנדרטית לסוכני AI לתקשר עם כלים חיצוניים, מקורות נתונים ומשאבים, ולקיים איתם אינטראקציות. רשימה מלאה של מוצרים שכוללים שרת MCP וקישורים למאמרי העזרה שלהם זמינה כאן.
איך מעבירים הקשר של מעקב לשרת MCP
בדפי העזרה של MCP, כמו העזרה בנושא list_log_entries, יש דוגמה לפקודה curl שאפשר להשתמש בה כדי לשלוח בקשות HTTP לכלי. מטען ה-JSON (payload) שנשלח בבקשה דומה לזה:
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "NAME",
"arguments": {
// provide these details according to the tool's MCP specification
}
},
"id": 1
}
הערך בשדה name הוא שם הכלי, כמו list_log_entries.
השדה arguments מכיל את המידע שנדרש כדי שהפעולה תשלים את הבקשה.
תקן ה-MCP מגדיר שדה _meta, שמאפשר ללקוחות ולשרתים לצרף מטא-נתונים לאינטראקציות שלהם. לקוחות ושרתים יכולים להשתמש בשדה הזה כדי להעביר את הקשר של המעקב:
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "NAME",
"arguments": {
// provide these details according to the tool's MCP specification
},
"_meta": {
"traceparent": "00-TRACE_ID-PARENT_SPAN_ID-SAMPLED_FLAG",
"tracestate": "Vendor specific information."
},
},
"id": 1
}
הנתונים של _meta כוללים את השדה traceparent. הפורמט של הערך בשדה הזה מוגדר על ידי הכותרת traceparent של World Wide Web Consortium (W3C). הערך כולל את:
- גרסה של מפרט
traceparent(00). - המזהה של המעקב (TRACE_ID).
- המזהה של הטווח שקורא (PARENT_SPAN_ID).
- האם הטווח שקורא דגם דגם את הבקשה (SAMPLED_FLAG). הערך של השדה הזה הוא
01אם בוצעה דגימה ו-00אם לא בוצעה דגימה.
השדה tracestate מכיל מידע ספציפי לספק לצורך מעקב.
מגבלות
הקשר של מעקב צריך להיות בהתאם לתקן W3C Trace Context, וצריך להגדיר את הדגל
sampledלערך 1.שרתי MCP מרוחקים של Google Cloud יכולים ליצור טווח יחיד לפעולה
tools/call, אבל הם לא יוצרים טווחים לסוגים אחרים של פעולות או טווחי צאצא לפעולהtools/call.שרתי MCP מרוחקים של Google Cloud יוצרים טווח רק כשהבקשה מאומתת, מורשית ועוברת בדיקות פנימיות אחרות.
שרתי MCP שתומכים במעקב
בקטע הזה מפורטים שרתי ה-MCP ו-Google Google Cloud המרוחקים שתומכים במעקב. הוא גם מתאר איך שרתי MCP באירוח עצמי יכולים ליצור טווחים של מעקב.
שרתים באירוח עצמי
מומלץ להגדיר את שרתי ה-MCP המתארחים באופן עצמאי כך שישלחו נתוני טלמטריה לפרויקט Google Cloud .
אם אתם משתמשים ב-Python, המכשיר יכול ליצור טווחים עבור פעולות tools/call. מידע נוסף זמין במאמר ביצוע אינסטרומנטציה לשרת MCP באירוח עצמי באמצעות OpenTelemetry.
שרתי Google ו- Google Cloud MCP מרוחקים שתומכים במעקב
המוצרים הבאים מכילים אינטגרציה שמאפשרת לשרת ה-MCP המרוחק שלהם ליצור טווח מעקב עבור פעולה מסוג tools/call:
| מוצר | חומרי עזר |
|---|---|
| Cloud Logging | הפניה ל-MCP של Cloud Logging |
| Cloud Monitoring | הפניה ל-MCP של Cloud Monitoring |
| Maps Grounding Lite | הפניה ל-Maps Grounding Lite MCP |
| GKE | חומר עזר בנושא GKE MCP |
| Cloud Run | הפניה ל-MCP ב-Cloud Run |
| Compute Engine | הפניה ל-MCP ב-Compute Engine |
| Google Security Operations | הפניה ל-Google SecOps MCP |
| AlloyDB ל-PostgreSQL | הפניה ל-MCP ל-AlloyDB ל-PostgreSQL |
| חיפוש סוכנים | הפניה ל-MCP של חיפוש מבוסס סוכנים |
| Cloud SQL | |
| BigQuery | הפניה ל-BigQuery MCP |
| Service Health בהתאמה אישית | הפניה ל-MCP במרכז האישי ב-Service Health |
| חיוב ב-Cloud | הפניה ל-MCP בנושא חיוב ב-Cloud |
| פותר הבעיות שקשורות למדיניות | הפניה לפתרון בעיות שקשורות למדיניות ב-MCP |
הגדרת האפליקציה
אפשר להשתמש בכל מסגרת או SDK שמעבירים את הקשר של ה-trace באמצעות השדה _meta. מסגרות וערכות SDK כאלה כוללות את אלה שתומכות במוסכמות הסמנטיות של OpenTelemetry ל-MCP.
לדוגמה, אפשר להשתמש במסגרת Agent Development Kit (ADK). מידע נוסף מופיע במאמר ביצוע אינסטרומנטציה של אפליקציות ADK באמצעות OpenTelemetry.
הצגת טווחי תאריכים
כדי לראות את נתוני המעקב, משתמשים בTrace Explorer. בדף הזה אפשר לראות מידע מצטבר על נתוני העקבות, ולעיין בעקבות ובטווחים ספציפיים. מידע נוסף זמין במאמר חיפוש של עקבות ובדיקה שלהן.
כדי לראות יחידות לוגיות למעקב שנכתבו על ידי שרתי MCP, מסננים את נתוני המעקב לפי שם היחידה הלוגית למעקב. לדוגמה, חלק משרתי ה-MCP המרוחקים של Google Cloud יכולים ליצור טווח מעקב כשהם מקבלים פעולה של tools/call. השמות של טווחי הזמן האלה נקבעים לפי המוסכמה הבאה:
tools/call NAME
בביטוי הקודם, NAME מתייחס לכלי שהופעל – לדוגמה, list_keys. מוסכמת השמות הזו מוגדרת במוסכמות הסמנטיות של OpenTelemetry עבור MCP.
כדי למצוא את טווחי התאריכים האלה, משתמשים בסרגל הסינון ומוסיפים מסנן מאפיינים לmcp.method.name. מגדירים את ערך המסנן ל-tools/call. מידע מפורט על השלבים האלה זמין במאמר בנושא צפייה בקריאות לשרתי MCP מרוחקים.
דוגמאות של אינסטרומנטציה
המלצות להטמעה מפורטות במאמר בחירת גישה להטמעה.
הדוגמאות של שדרוג המידע שאנחנו מספקים משתמשות ב-OpenTelemetry:
דוגמאות לשימוש בייצוא מבוסס-איסוף:
הדוגמאות האלה שולחות נתוני מדדים ונתוני מעקב בפורמט של OpenTelemetry Protocol (OTLP) לפרויקט שלכם באמצעות Telemetry API. בדוגמאות נעשה שימוש ב Google Cloud כלי לייצוא נתוני יומן.
במאמר מעבר מייצוא נתוני מעקב לנקודת הקצה של OTLP מוסבר איך לייצא נתוני מעקב ישירות ולשלוח אותם ל-Telemetry API.
דוגמאות שמראות איך להגדיר אפליקציה מבוססת-סוכנים כדי לאסוף הנחיות ותגובות זמינות במאמר איך להטמיע כלי מעקב באפליקציות מבוססות-AI גנרטיבי.