إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يسجل وكيلك كل إجراء، بما في ذلك استدعاءات الأدوات واستدعاءات النموذج ومعالجة الحوادث وقرارات الموافقة، إلى مورد Application Insights الخاص بك. لمعرفة ما فعله وكيلك بالضبط، ومتى ولماذا، استعلم عن customEvents الجدول باستخدام Kusto Query Language (KQL). الوصول إلى السجلات مباشرة من سجلات المراقبة> في مدخل العامل.
مكان العثور على سجلاتك
يسجل وكيلك تلقائيا جميع الإجراءات إلى Azure Application Insights. عند إنشاء وكيلك، يمكنك أيضا إنشاء مورد Application Insights.
للوصول إلى سجلاتك:
- في مدخل العامل، انتقل إلى Monitor>Logs.
- يفتح هذا الإجراء مورد Application Insights الخاص بوكيلك في مدخل Microsoft Azure.
- استخدم KQL للاستعلام عن
customEventsالجدول.
الاستعلام الافتراضي هو traces | where timestamp > ago(1d). غير هذا الاستعلام إلى customEvents لمشاهدة القياس عن بعد لإجراء العامل.
أنواع الحدث
يسجل عاملك تسعة أنواع أحداث مخصصة إلى customEvents الجدول. يعرض الاستعلام التالي جميع أنواع الأحداث وعددها:
customEvents
| summarize Count = count() by name
| sort by Count desc
| اسم الحدث | ما الذي يلتقطه | وحدة تخزين نموذجية |
|---|---|---|
AgentResponse |
استجابات الدردشة المرسلة إليك | مرتفع |
ModelGeneration |
كل استدعاء LLM (رموز الإدخال/الإخراج المميزة، معرف النموذج) | مرتفع |
AgentToolExecution |
كل استدعاء أداة (الاسم، الإدخال، الإخراج) | مرتفع |
AgentExecution |
دورة حياة بدء/نهاية جلسة العامل | متوسط |
MetaAgent |
قرارات توجيه الوكيل وتنسيقه | متوسط |
AgentHandoff |
تسليمات عبر الوكلاء | متوسط |
IncidentActivitySnapshot |
دورة حياة الحدث (الخطورة والحالة ونتائج التخفيف) | منخفض |
AgentAzCliExecution |
أوامر Azure CLI التي يقوم العامل بتشغيلها | منخفض |
ApprovalDecision |
موافقتك على الإجراءات المقترحة أو رفضها | منخفض |
الأحداث الرئيسية وحقولها
تصف الأقسام التالية أنواع الأحداث الأكثر شيوعا والحقول الخاصة بها.
تنفيذ الأداة (AgentToolExecution)
يسجل النظام هذا الحدث في كل مرة يستدعي فيها وكيلك أداة.
| الحقل | الوصف | قيمة المثال |
|---|---|---|
EventType |
ToolStart او ToolEnd |
ToolStart |
ToolName |
اسم الأداة | SearchResource |
ToolInput |
الوسيطات التي تم تمريرها إلى الأداة | {"resourceTypes": ["microsoft.resources/subscriptions"]} |
ToolOutput |
النتيجة التي تم إرجاعها بواسطة الأداة (للأحداث ToolEnd ) |
(إخراج الأداة JSON) |
SubAgentName |
اسم العامل الذي استدعى الأداة | meta_agent |
CallId |
معرف الارتباط للاقتران | call_aaaabbbb-0000-cccc-... |
customEvents
| where name == "AgentToolExecution"
| where customDimensions.EventType == "ToolStart"
| where timestamp > ago(7d)
| project timestamp,
Tool = tostring(customDimensions.ToolName),
Input = tostring(customDimensions.ToolInput)
| sort by timestamp desc
دورة حياة الحدث (IncidentActivitySnapshot)
سجل هذا الحدث لكل حادث يعالجه وكيلك. يلتقط دورة الحياة الكاملة من الإنشاء إلى الدقة.
| الحقل | الوصف | قيمة المثال |
|---|---|---|
IncidentId |
معرف حادث النظام الأساسي | Q2VVG0T8K7AL0J |
IncidentTitle |
وصف الحدث | DailyIssueTriager blocked: cannot access repo |
IncidentSeverity |
الخطورة من النظام الأساسي الخاص بك | Not set |
IncidentStatus |
الحالة الحالية | active |
IncidentPlatform |
منصة المصدر | PagerDuty |
IncidentMitigatedByAgent |
ما إذا كان العامل قد قام بحله |
True او False |
IncidentAssistedByAgent |
ما إذا كان العامل قد ساعد في التحقيق |
True او False |
AgentAutonomyLevel |
كيفية معالجة العامل له |
autonomous او review |
ResponsePlanId |
خطة الاستجابة التي تم استخدامها | PDtrigger |
ResponsePlanCustom |
الخطة الافتراضية أو المخصصة |
True او False |
IncidentImpactedService |
الخدمة المتأثرة | SRE Agent |
IncidentCreatedOn |
عند إنشاء الحدث | التاريخ والوقت ISO 8601 |
IncidentHandledOn |
عندما بدأ العامل في التعامل مع | التاريخ والوقت ISO 8601 |
IncidentMitigatedOn |
عند حلها (إذا تم التخفيف منها) | التاريخ والوقت ISO 8601 |
// Incident outcomes over the last 30 days
customEvents
| where name == "IncidentActivitySnapshot"
| where timestamp > ago(30d)
| project timestamp,
IncidentId = tostring(customDimensions.IncidentId),
Title = tostring(customDimensions.IncidentTitle),
Platform = tostring(customDimensions.IncidentPlatform),
MitigatedByAgent = tostring(customDimensions.IncidentMitigatedByAgent),
AssistedByAgent = tostring(customDimensions.IncidentAssistedByAgent),
Autonomy = tostring(customDimensions.AgentAutonomyLevel),
ResponsePlan = tostring(customDimensions.ResponsePlanId)
| sort by timestamp desc
إنشاء النموذج (ModelGeneration)
سجل هذا الحدث لكل استدعاء LLM. يتعقب استخدام الرمز المميز واختيار النموذج والعامل الطالب.
| الحقل | الوصف | قيمة المثال |
|---|---|---|
EventType |
ModelGenerationStartو ModelGenerationEnd, أو ModelGenerationError |
ModelGenerationEnd |
AgentName |
العامل الذي يقوم بإجراء مكالمة LLM | daily_report_agent |
ModelId |
النموذج المستخدم | gpt-4o |
InputTokens |
الرموز المميزة في المطالبة | 29828 |
OutputTokens |
الرموز المميزة في الاستجابة | 871 |
ThreadId |
مؤشر ترابط المحادثة | bb171c1f-3bb2-4895-... |
// Token usage by agent in the last 7 days
customEvents
| where name == "ModelGeneration"
| where customDimensions.EventType == "ModelGenerationEnd"
| where timestamp > ago(7d)
| extend Agent = tostring(customDimensions.AgentName),
InputTokens = toint(customDimensions.InputTokens),
OutputTokens = toint(customDimensions.OutputTokens),
Model = tostring(customDimensions.ModelId)
| summarize TotalInput = sum(InputTokens),
TotalOutput = sum(OutputTokens),
Calls = count()
by Agent, Model
| sort by TotalInput desc
قرارات الموافقة (الموافقة)
سجل هذا الحدث عند الموافقة على إجراء وكيل مقترح أو رفضه.
// All approval decisions
customEvents
| where name == "ApprovalDecision"
| where timestamp > ago(30d)
| project timestamp, customDimensions
الاستعلامات الشائعة
استخدم استعلامات KQL التالية للإجابة عن الأسئلة الشائعة حول سلوك وكيلك.
ماذا فعل وكيلي في مؤشر ترابط معين؟
customEvents
| where timestamp > ago(7d)
| where tostring(customDimensions.ThreadId) == "<YOUR_THREAD_ID>"
| project timestamp,
Event = name,
EventType = tostring(customDimensions.EventType),
Tool = tostring(customDimensions.ToolName),
Agent = tostring(customDimensions.SubAgentName)
| sort by timestamp asc
استبدل <YOUR_THREAD_ID> بمعرف مؤشر الترابط من المحادثة.
ما هي الأدوات التي تستخدمها في معظم الأحيان؟
customEvents
| where name == "AgentToolExecution"
| where customDimensions.EventType == "ToolStart"
| where timestamp > ago(30d)
| summarize Count = count() by Tool = tostring(customDimensions.ToolName)
| sort by Count desc
| take 20
كم عدد الحوادث التي قام العامل بتخفيفها مقابل المساعدة؟
customEvents
| where name == "IncidentActivitySnapshot"
| where timestamp > ago(30d)
| summarize
Total = count(),
MitigatedByAgent = countif(tostring(customDimensions.IncidentMitigatedByAgent) == "True"),
AssistedByAgent = countif(tostring(customDimensions.IncidentAssistedByAgent) == "True")
اتجاه استهلاك الرمز المميز اليومي
customEvents
| where name == "ModelGeneration"
| where customDimensions.EventType == "ModelGenerationEnd"
| where timestamp > ago(30d)
| extend InputTokens = toint(customDimensions.InputTokens),
OutputTokens = toint(customDimensions.OutputTokens)
| summarize TotalTokens = sum(InputTokens) + sum(OutputTokens) by bin(timestamp, 1d)
| render timechart
الحقول المشتركة في جميع الأحداث
يتضمن كل حدث مخصص الحقول التالية للارتباط والتتبع.
| الحقل | الوصف |
|---|---|
gen_ai.agent.id |
معرف Azure Resource Manager لوكيلك |
gen_ai.agent.name |
اسم العامل |
TraceId |
معرف تتبع OpenTelemetry، الذي يرتبط بالأحداث عبر طلب واحد |
SpanId |
معرف نطاق OpenTelemetry |
ParentSpanId |
النطاق الأصل للتسلسل الهرمي للاتصال |
ThreadId |
GUID لمترابط المحادثة |
LogTimestamp |
الطابع الزمني ISO 8601 |
CorrelationId |
معرف الارتباط القصير لتجميع السجل |
يستخدم TraceId لمتابعة طلب واحد من إدخال المستخدم من خلال منطق العامل واستدعاءات الأدوات والاستجابة.
سجل Azure Activity
بالنسبة لعمليات مستوى موارد Azure مثل إنشاء مورد العامل أو تحديثه أو حذفه، استخدم سجل نشاط Azure. يسجل سجل النشاط جميع عمليات Azure Resource Manager على عاملك والهوية المدارة وموارد Application Insights.
الوصول إلى تسجيل الدخول إلى النشاط في مدخل Microsoft Azure ضمن مجموعة موارد الوكيل.
الشروع في العمل
يتم تمكين تسجيل التدقيق تلقائيا لكل عامل. افتح سجلات المراقبة>في مدخل العامل للاستعلام عن محفوظات الإجراءات باستخدام KQL.
| مورد | ما ستتعلمه |
|---|---|
| إنشاء أداة Kusto | إنشاء استعلامات KQL القابلة لإعادة الاستخدام لاستنطاق بيانات التدقيق الخاصة بك |
| الأذونات | كيف يتحكم RBAC في من يمكنه الاستعلام عن بيانات التدقيق |