مخطط سجل نتائج تحليلات الحاوية
تخزن نتائج تحليلات الحاوية بيانات السجل التي تجمعها في جدول يسمى ContainerLogV2 في مساحة عمل Log Analytics. توضح هذه المقالة مخطط هذا الجدول وخيارات التكوين له. كما يقارن هذا الجدول بجدول ContainerLog القديم ويوفر تفاصيل للترحيل منه.
مقارنة الجدول
ContainerLogV2 هو المخطط الافتراضي لإصدار CLI 2.54.0 والإصدارات الأحدث. هذا هو الجدول الافتراضي للعملاء الذين يقومون بإلحاق نتائج تحليلات الحاوية بمصادقة الهوية المدارة. يمكن تمكين ContainerLogV2 بشكل صريح من خلال إصدار CLI 2.51.0 أو أعلى باستخدام إعدادات جمع البيانات.
هام
سيتم إيقاف دعم جدول ContainerLog في 30 سبتمبر 2026.
يسلط الجدول التالي الضوء على الاختلافات الرئيسية بين استخدام ContainerLogV2 ومخطط ContainerLog.
اختلافات الميزة | ContainerLog | ContainerLogV2 |
---|---|---|
مخطط | التفاصيل في ContainerLog. | تفاصيل في ContainerLogV2. الأعمدة الإضافية هي: - ContainerName - PodName - PodNamespace - LogLevel 1- KubernetesMetadata 2 |
إعداد | قابل للتكوين فقط من خلال ConfigMap. | قابل للتكوين من خلال كل من ConfigMap وDCR. 3 |
التسعير | متوافق فقط مع سجلات التحليلات كاملة السعر. | يدعم طبقة السجلات الأساسية منخفضة التكلفة بالإضافة إلى سجلات التحليلات. |
الاستعلام | يتطلب عمليات ربط متعددة مع جداول المخزون للاستعلامات القياسية. | يتضمن بيانات تعريف حاوية وحاوية إضافية لتقليل تعقيد الاستعلام وعمليات الانضمام. |
متعدد الخطوط | غير معتمد، يتم تقسيم الإدخالات متعددة الأسطر إلى صفوف متعددة. | دعم التسجيل متعدد الأسطر للسماح بالإدخالات الموحدة المفردة للإخراج متعدد الأسطر. |
1 إذا كان LogMessage
JSON صالحا ويحتوي على مفتاح يسمى level
، استخدام قيمته. وإلا، يتم استخدام مطابقة الكلمة الأساسية المستندة إلى regex للاستدلال LogLevel
من LogMessage
. قد يؤدي هذا الاستدلال إلى بعض التصنيفات الخاطئة. LogLevel
هو حقل سلسلة بقيمة صحية مثل CRITICAL
أو ERROR
أو DEBUG
TRACE
WARNING
INFO
.UNKNOWN
2 KubernetesMetadata
هو عمود اختياري يتم تمكينه باستخدام بيانات تعريف Kubernetes. قيمة هذا الحقل هي JSON مع الحقول podLabels
وImage
ImageTag
podAnnotations
podUid
.Image repo
3 يتطلب تكوين DCR مصادقة هوية مدارة.
إشعار
التصدير إلى Event Hub وحساب التخزين غير مدعوم إذا كان الوارد LogMessage
غير صالح JSON. للحصول على أفضل أداء، انبعث سجلات الحاوية بتنسيق JSON.
تمكين مخطط ContainerLogV2
قم بتمكين مخطط ContainerLogV2 لنظام مجموعة إما باستخدام قاعدة تجميع البيانات (DCR) الخاصة بالمجموعة أو ConfigMap. إذا تم تمكين كلا الإعدادين، فإن ConfigMap له الأسبقية. ContainerLog
يتم استخدام الجدول فقط عند تعيين كل من DCR وConfigMap بشكل صريح على إيقاف التشغيل.
قبل تمكين مخطط ContainerLogsV2 ، يجب تقييم ما إذا كان لديك أي قواعد تنبيه تعتمد على جدول ContainerLog . يجب تحديث أي من هذه التنبيهات لاستخدام الجدول الجديد. قم بتشغيل استعلام Azure Resource Graph التالي للفحص بحثا عن قواعد التنبيه التي تشير إلى ContainerLog
الجدول.
resources
| where type in~ ('microsoft.insights/scheduledqueryrules') and ['kind'] !in~ ('LogToMetric')
| extend severity = strcat("Sev", properties["severity"])
| extend enabled = tobool(properties["enabled"])
| where enabled in~ ('true')
| where tolower(properties["targetResourceTypes"]) matches regex 'microsoft.operationalinsights/workspaces($|/.*)?' or tolower(properties["targetResourceType"]) matches regex 'microsoft.operationalinsights/workspaces($|/.*)?' or tolower(properties["scopes"]) matches regex 'providers/microsoft.operationalinsights/workspaces($|/.*)?'
| where properties contains "ContainerLog"
| project id,name,type,properties,enabled,severity,subscriptionId
| order by tolower(name) asc
بيانات تعريف Kubernetes وتصفية السجلات
تعمل بيانات تعريف Kubernetes وتصفية السجلات على توسيع مخطط ContainerLogsV2 مع بيانات تعريف Kubernetes إضافية. توفر ميزة تصفية السجلات إمكانات التصفية لكل من حاويات حمل العمل والنظام الأساسي. تمنحك هذه الميزات سياقا أكثر ثراء ورؤية محسنة لأحمال العمل الخاصة بك.
الميزات
مخطط ContainerLogV2 المحسن عند تمكين بيانات تعريف سجلات Kubernetes، فإنه يضيف عمودا لاستدعاء
ContainerLogV2
KubernetesMetadata
يعزز استكشاف الأخطاء وإصلاحها باستخدام استعلامات السجل البسيطة ويزيل الحاجة إلى الانضمام إلى الجداول الأخرى. تتضمن الحقول الموجودة في هذا العمود:PodLabels
وPodAnnotations
PodUid
و وImage
وImageID
وImageRepo
وImageTag
و. تحسن هذه الحقول تجربة استكشاف الأخطاء وإصلاحها باستخدام استعلامات السجل دون الحاجة إلى الانضمام إلى جداول أخرى. راجع أدناه للحصول على تفاصيل حول تمكين ميزة بيانات تعريف Kubernetes.مستوى السجل تضيف هذه الميزة عمودا
LogLevel
إلى ContainerLogV2 بالقيم المحتملة الحرجة أو الخطأ أو التحذير أو المعلومات أو التصحيح أو التتبع أو غير معروف. يساعدك هذا في تقييم صحة التطبيق استنادا إلى مستوى الخطورة. إضافة لوحة معلومات Grafana، يمكنك تصور اتجاهات مستوى السجل بمرور الوقت وتحديد الموارد المتأثرة بسرعة.لوحة معلومات Grafana للتصور توفر لوحة معلومات Grafana تصورا مرمزا بالألوان لمستوى السجل وتوفر أيضا رؤى حول حجم السجل ومعدل السجل وسجلات السجل والسجلات. يمكنك الحصول على تحليل حساس للوقت، ورؤى ديناميكية لاتجاهات مستوى السجل بمرور الوقت، والمراقبة الحاسمة في الوقت الحقيقي. توفر لوحة المعلومات أيضا تصنيفا تفصيليا حسب الكمبيوتر والجراب والحاوية، ما يمكن التحليل المتعمق واستكشاف الأخطاء وإصلاحها المحدد. راجع أدناه للحصول على تفاصيل حول تثبيت لوحة معلومات Grafana.
تصفية السجل المستندة إلى التعليقات التوضيحية لأحمال العمل تصفية سجل فعالة من خلال التعليقات التوضيحية للجراب. وهذا يسمح لك بالتركيز على المعلومات ذات الصلة دون أن تخترق الضوضاء. تمكنك التصفية المستندة إلى التعليقات التوضيحية من استبعاد مجموعة السجلات لبعض الحجيرات والحاويات عن طريق إضافة تعليق توضيحي إلى الجراب، مما يساعد على تقليل تكلفة تحليلات السجل بشكل كبير. راجع تصفية السجل المستندة إلى التعليق التوضيحي للحصول على تفاصيل حول تكوين التصفية المستندة إلى التعليق التوضيحي.
يتم إصدار تصفية السجل المستندة إلى ConfigMap لسجلات النظام الأساسي (مساحات أسماء System Kubernetes) بواسطة حاويات في مساحات أسماء النظام (أو مساحات أسماء مقيدة مماثلة). بشكل افتراضي، يتم استبعاد جميع سجلات الحاوية من مساحة اسم النظام لتقليل تكلفة البيانات في مساحة عمل Log Analytics. في سيناريوهات استكشاف الأخطاء وإصلاحها المحددة على الرغم من ذلك، تلعب سجلات الحاوية لحاوية النظام دورا حاسما. مثال واحد هو الحاوية
coredns
فيkube-system
مساحة الاسم.
تمكين بيانات تعريف Kubernetes
هام
تتطلب مجموعة بيانات تعريف Kubernetes مصادقة هوية مدارة و ContainerLogsV2
تمكين بيانات تعريف Kubernetes باستخدام ConfigMap مع الإعدادات التالية. يتم تجميع كافة حقول بيانات التعريف بشكل افتراضي عند metadata_collection
تمكين . قم بإلغاء التعليق include_fields
لتحديد الحقول الفردية التي سيتم تجميعها.
[log_collection_settings.metadata_collection]
enabled = true
include_fields = ["podLabels","podAnnotations","podUid","image","imageID","imageRepo","imageTag"]
بعد بضع دقائق، KubernetesMetadata
يجب تضمين العمود مع أي استعلامات سجل للجدول ContainerLogV2
كما هو موضح أدناه.
تثبيت لوحة معلومات Grafana
هام
إذا قمت بتمكين Grafana باستخدام الإرشادات في تمكين المراقبة لمجموعات Kubernetes ، فيجب أن يكون لمثيل Grafana حق الوصول بالفعل إلى مساحة عمل Azure Monitor لمقاييس Prometheus. تتطلب لوحة معلومات بيانات تعريف سجلات Kubernetes أيضا الوصول إلى مساحة عمل Log Analytics التي تحتوي على بيانات السجل. راجع كيفية تعديل أذونات الوصول إلى Azure Monitor للحصول على إرشادات حول منح مثيل Grafana دور قارئ المراقبة لمساحة عمل Log Analytics.
استيراد لوحة المعلومات من معرض Grafana في ContainerLogV2 Dashboard. يمكنك بعد ذلك فتح لوحة المعلومات وتحديد قيم DataSource و Subscription و ResourceGroup و Cluster و Namespace و Labels.
إشعار
عند تحميل لوحة معلومات Grafana في البداية، قد ترى أخطاء بسبب عدم تحديد المتغيرات بعد. لمنع تكرار ذلك، احفظ لوحة المعلومات بعد تحديد مجموعة من المتغيرات بحيث تصبح افتراضية في الفتح الأول.
تسجيل متعدد الأسطر
مع تمكين التسجيل متعدد الأسطر، يتم تجميع سجلات الحاوية المقسمة مسبقا معا وإرسالها كإدخالات مفردة إلى جدول ContainerLogV2. إذا كان خط السجل المخيط أكبر من 64 كيلوبايت، اقتطاعه بسبب حدود مساحة عمل Log Analytics. تحتوي هذه الميزة أيضا على دعم لتتبعات مكدس .NET وGo وPython وJava، والتي تظهر كإدخالات مفردة في جدول ContainerLogV2. تمكين التسجيل متعدد الأسطر باستخدام ConfigMap كما هو موضح في تكوين جمع البيانات في نتائج تحليلات الحاوية باستخدام ConfigMap.
إشعار
يتميز التكوين الآن بخيار مواصفات اللغة، حيث يمكن للعملاء تحديد اللغات التي يهتمون بها فقط. يمكن تمكين هذه الميزة عن طريق تحرير اللغات في خيار stacktrace_languages في خريطة التكوين.
تظهر لقطات الشاشة التالية التسجيل متعدد الأسطر لتتبع مكدس استثناء Go:
تم تعطيل التسجيل متعدد الأسطر
تمكين التسجيل متعدد الأسطر
تتبع مكدس Java
تتبع مكدس Python
الخطوات التالية
- تكوين السجلات الأساسية لـ ContainerLogv2.
- تعرف على كيفية استعلام البيانات من ContainerLogV2