مراقبة في الوقت الحقيقي، والمقاييس، والوصول إلى السجلات لـ Azure CDN
هام
سيتم إيقاف Azure CDN Standard من Microsoft (الكلاسيكي) في 30 سبتمبر 2027. لتجنب أي تعطيل للخدمة، من المهم ترحيل Azure CDN Standard من ملفات تعريف Microsoft (الكلاسيكية) إلى Azure Front Door Standard أو المستوى المتميز بحلول 30 سبتمبر 2027. لمزيد من المعلومات، راجع Azure CDN Standard من إيقاف Microsoft (الكلاسيكي).
سيتم إيقاف Azure CDN من Edgio في 4 نوفمبر 2025. يجب ترحيل حمل العمل إلى Azure Front Door قبل هذا التاريخ لتجنب تعطيل الخدمة. لمزيد من المعلومات، راجع الأسئلة المتداولة حول إيقاف Azure CDN من Edgio.
باستخدام Azure CDN من Microsoft، يمكنك مراقبة الموارد بالطرق التالية لمساعدتك في استكشاف الأخطاء وإصلاحها وتعقبها وتصحيحها.
- توفر السجلات الأولية معلومات منسقة حول كل طلب تتلقاه شبكة تسليم المحتوى. تختلف السجلات الأولية عن سجلات النشاط. توفر سجلات النشاط إمكانية رؤية العمليات التي تم إجراؤها على موارد Azure.
- المقاييس، التي تعرض أربعة مقاييس رئيسية على شبكة تسليم المحتوى، بما في ذلك نسبة البايت إلى الوصول وعدد الطلبات وحجم الاستجابة وإجمالي زمن الانتقال. كما يوفر أبعاداً مختلفة لكسر المقاييس.
- تنبيه، والذي يسمح للعميل بإعداد تنبيه للمقاييس الرئيسية
- المزيد من المقاييس، التي تسمح للعملاء باستخدام Azure Log Analytics لتمكين المزيد من مقاييس القيمة. كما نقدم عينات استعلام لبعض المقاييس الأخرى ضمن Azure Log Analytics.
هام
تتوفر ميزة سجلات HTTP الأولية لـ Azure CDN من Microsoft.
في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
تسجيل الدخول إلى Azure
قم بتسجيل الدخول إلى بوابة Azure.
التكوين - مدخل Azure
لتكوين السجلات الأولية لـ Azure CDN من ملف التعريف Microsoft:
في قائمة مدخل Azur، حدد جميع الخدمات>><ملف تعريف شبكة تسليم المحتوى الخاص بك>.
ضمن Monitoring، اختر Diagnostics settings.
حدد + Add diagnostic setting.
هام
تتوفر السجلات الأولية فقط في مستوى ملف التعريف بينما تتوفر سجلات التعليمات البرمجية لحالة HTTP المجمعة في مستوى نقطة النهاية.
ضمن إعدادات التشخيص، أدخل اسماً لإعداد التشخيص ضمن اسم إعدادات التشخيص.
حدد AzureCdnAccessLog وقم بتعيين استبقاء البيانات بالأيام.
حدد «Destination details» خيارات الوجهة هي:
- إرسال إلى Log Analytics
- حدد مساحة عمل الاشتراك وLog Analytics .
- «Archive to» إلى حساب موقع التخزين
- حدد الاشتراك وحساب التخزين.
- دفق بيانات إلى مركز الحدث
- حدد Subscription ومساحة اسم مركز الأحداث واسم مركز الأحداث (اختياري) واسم نهج محور الأحداث.
- إرسال إلى Log Analytics
حدد حفظ.
التكوين - Azure PowerShell
استخدم Set-AzDiagnosticSetting لتكوين إعداد التشخيص للسجلات الأولية.
يتم تعريف بيانات الاستبقاء بواسطة الخيار -RetentionInDays في الأمر.
إشعار
نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
تمكين سجلات التشخيص في حساب تخزين
تسجيل الدخول إلىAzure PowerShell.
Connect-AzAccount
لتمكين السجلات التشخيصية في حساب تخزين، أدخل هذه الأوامر. استبدل المتغيرات بالقيم الخاصة بك:
## Variables for the commands ## $rsg = <your-resource-group-name> $cdnprofile = <your-cdn-profile-name> $cdnendpoint = <your-cdn-endpoint-name> $storageacct = <your-storage-account-name> $diagname = <your-diagnostic-setting-name> $days = '30' $cdn = Get-AzCdnProfile -ResourceGroupName $rsg -ProfileName $cdnprofile $storage = Get-AzStorageAccount -ResourceGroupName $rsg -Name $storageacct Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -StorageAccountId $storage.id -Enabled $true -Category AzureCdnAccessLog -RetentionEnabled 1 -RetentionInDays $days
تمكين سجلات التشخيص لمساحة عمل Log Analytics
تسجيل الدخول إلىAzure PowerShell.
Connect-AzAccount
لتمكين السجلات التشخيصية لمساحة عمل Log Analytics، أدخل هذه الأوامر. استبدل المتغيرات بالقيم الخاصة بك:
## Variables for the commands ## $rsg = <your-resource-group-name> $cdnprofile = <your-cdn-profile-name> $cdnendpoint = <your-cdn-endpoint-name> $workspacename = <your-log-analytics-workspace-name> $diagname = <your-diagnostic-setting-name> $days = '30' $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint $workspace = Get-AzOperationalInsightsWorkspace -ResourceGroupName $rsg -Name $workspacename Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -WorkspaceId $workspace.ResourceId -Enabled $true -Category AzureCdnAccessLog -RetentionEnabled 1 -RetentionInDays $days
تمكين سجلات التشخيص لمساحة اسم مركز الأحداث
تسجيل الدخول إلىAzure PowerShell.
Connect-AzAccount
لتمكين سجلات التشخيص لمساحة اسم لوحة مركز الحدث، أدخل هذه الأوامر. استبدل المتغيرات بالقيم الخاصة بك:
## Variables for the commands ## $rsg = <your-resource-group-name> $cdnprofile = <your-cdn-profile-name> $cdnendpoint = <your-cdn-endpoint-name> $evthubnamespace = <your-event-hub-namespace-name> $diagname = <your-diagnostic-setting-name> $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint $eventhub = Get-AzEventHubNamespace -ResourceGroupName $rsg -Name $eventhubname Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -EventHubName $eventhub.id -Enabled $true -Category AzureCdnAccessLog -RetentionEnabled 1 -RetentionInDays $days
خصائص السجلات الأولية
يوفر Azure CDN من خدمة Microsoft حالياً سجلات أولية. توفر السجلات الأولية طلبات واجهة برمجة التطبيقات الفردية مع كل إدخال وجود المخطط التالي:
الخاصية | الوصف |
---|---|
BackendHostname | إذا تمت إعادة توجيه الطلب إلى الخلفية، فإن هذا الحقل يمثل اسم مضيف الخلفية. يكون هذا الحقل فارغا إذا تمت إعادة توجيه الطلب أو إعادة توجيهه إلى ذاكرة تخزين مؤقت إقليمية (عند تمكين التخزين المؤقت لقاعدة التحويل). |
CacheStatus | بالنسبة لسيناريوهات التخزين المؤقت، يحدد هذا الحقل نتيجة/خطأ ذاكرة التخزين المؤقت في بروتوكول POP |
ClientIP | عنوان IP للعميل الذي قدم الطلب. إذا كان هناك رأس X-Forwarded-For في الطلب، فسيتم اختيار عنوان IP للعميل من نفس العنوان. |
منفذ العميل | منفذ IP الخاص بالعميل الذي قدم الطلب. |
HttpMethod | طريقة HTTP المستخدمة في الطلب. |
HttpStatusCode | تم إرجاع رمز حالة HTTP من الوكيل. إذا كان طلب إلى مهلة الأصل يتم تعيين قيمة HttpStatusCode إلى 0. |
HttpStatusDetails | الحالة الناتجة عن الطلب. يمكن العثور على معنى قيمة السلسلة هذه في الجدول المرجعي للحالة. |
HttpVersion | نوع الطلب أو الاتصال. |
POP | الاسم المختصر للحافة التي وصل إليها الطلب. |
RequestBytes | حجم رسالة طلب HTTP بالبايت، بما في ذلك رؤوس الطلب ونص الطلب. |
RequestUri | URI للطلب المستلم. |
ResponseBytes | البايت المرسلة من خادم الواجهة الخلفية كاستجابة. |
RoutingRuleName | اسم قاعدة التحويل التي تطابق الطلب. |
RulesEngineMatchNames | أسماء القواعد المطابقة للطلب. |
SecurityProtocol | إصدار بروتوكول TLS/SSL المستخدم بواسطة الطلب أو إصدار فارغ إذا لم يكن هناك تشفير. |
SentToOriginShield (مهمل) * راجع الملاحظات حول الإهمال في القسم التالي. |
إذا كان هذا صحيحاً، فهذا يعني أنه تم الرد على هذا الطلب من ذاكرة التخزين المؤقت للدرع الأصلي بدلاً من الحافة المنبثقة. درع الأصل هو ذاكرة تخزين مؤقت الأصل تستخدم لتحسين نسبة عدد مرات الدخول إلى ذاكرة التخزين المؤقت. |
isReceivedFromClient | إذا كان هذا صحيحاً، فهذا يعني أن الطلب جاء من العميل. إذا كان خطأ، فإن الطلب هو خطأ في الحافة (POP التابع للطفل) ويتم الرد عليه من الفرع الأصلي (POP الأصلي). |
TimeTaken | طول الوقت من البايت الأول من الطلب إلى Azure Front Door إلى البايت الأخير من الاستجابة، بالثوان. |
TrackingReference | السلسلة المرجعية الفريدة التي تحدد طلبا يقدمه Azure Front Door، والتي يتم إرسالها أيضا كعنوان X-Azure-Ref إلى العميل. مطلوب للبحث عن تفاصيل في سجلات الوصول لطلب معين. |
UserAgent | نوع المتصفح الذي استخدمه العميل. |
ErrorInfo | يحتوي هذا الحقل على نوع معين من الأخطاء لتضييق منطقة استكشاف الأخطاء وإصلاحها. تتضمن القيم المحتملة: NoError: يشير إلى عدم العثور على أخطاء. CertificateError: خطأ عام في شهادة SSL. CertificateNameCheckFailed: اسم المضيف في شهادة SSL غير صالح أو غير متطابق. ClientDisconnected: فشل الطلب بسبب اتصال شبكة العميل. UnspecifiedClientError: خطأ عميل عام. InvalidRequest: طلب غير صالح. قد يحدث بسبب عدم تكوين رأس ونص وعنوان URL بشكل غير صحيح. DNSFailure: فشل DNS. DNSNameNotResolved: تعذر حل اسم الخادم أو العنوان. OriginConnectionAborted: تم إيقاف الاتصال بالأصل فجأة. OriginConnectionError: خطأ اتصال أصل عام. OriginConnectionRefused: لم يكن الاتصال بالأصل قادرا على الإنشاء. OriginError: خطأ أصل عام. OriginInvalidResponse: أرجع الأصل استجابة غير صالحة أو غير معروف. OriginTimeout: انتهت فترة المهلة لطلب الأصل. ResponseHeaderTooBig: أرجع الأصل عددا كبيرا جدا من رأس الاستجابة. RestrictedIP: تم حظر الطلب بسبب IP المقيد. SSLHandshakeError: تعذر تأسيس اتصال بالأصل بسبب فشل اهتزاز يد SSL. UnspecifiedError: حدث خطأ لا يتناسب مع أي من الأخطاء في الجدول. |
TimeToFirstByte | طول الفترة الزمنية بالمللي ثانية من وقت تلقي Microsoft CDN للطلب إلى وقت إرسال البايت الأول إلى العميل. يتم قياس الوقت فقط من جانب Microsoft. لا يتم قياس البيانات من جانب العميل. |
نتيجة | SSLMismatchedSNI هو رمز حالة يشير إلى طلب ناجح مع تحذير عدم تطابق بين إشارة اسم الخادم (SNI) ورأس المضيف. يشير رمز الحالة هذا إلى واجهة المجال، وهي تقنية تنتهك شروط خدمة Azure Front Door. سيتم رفض الطلبات مع SSLMismatchedSNI بعد 22 يناير 2024. |
SNI | يحدد هذا الحقل إشارة اسم الخادم (SNI) التي يتم إرسالها أثناء تأكيد اتصال TLS/SSL. يمكن استخدامه لتحديد قيمة SNI الدقيقة إذا كان SSLMismatchedSNI هناك رمز حالة. بالإضافة إلى ذلك، يمكن مقارنتها بقيمة المضيف في requestUri الحقل للكشف عن مشكلة عدم التطابق وحلها. |
إشعار
يمكن عرض السجلات ضمن ملف تعريف Log Analytics عن طريق تشغيل استعلام. قد تبدو عينة استعلام مثل: AzureDiagnostics | where Category == "AzureCdnAccessLog"
تم الإرسال إلى إيقاف الدرع الأصل
يتم إهمال خاصية السجل الخام isSentToOriginShield واستبدالها بالحقل الجديد isReceivedFromClient. استخدم الحقل الجديد إذا كنت تستخدم الحقل المهمل بالفعل.
تتضمن السجلات الأولية السجلات التي تم إنشاؤها من كل من حافة CDN (POP التابع) ودرع الأصل. يشير درع الأصل إلى العقد الأصلية التي تقع إستراتيجياً في جميع أنحاء العالم. تتواصل هذه العقد مع الخوادم الأصلية وتقلل من حمل المرور على الأصل.
لكل طلب يذهب إلى درع الأصل، هناك إدخالان للسجل:
- واحد لعُقد الحافة
- واحد لدرع المنشأ.
للتمييز بين الخروج أو الاستجابات من عقد الحافة مقابل درع الأصل، يمكنك استخدام الحقل isReceivedFromClient للحصول على البيانات الصحيحة.
إذا كانت القيمة خاطئة، فهذا يعني أنه تمت الاستجابة للطلب من درع الأصل إلى عقد الحافة. هذا النهج فعال لمقارنة السجلات الأولية ببيانات الفوترة. لا يتم تكبد رسوم للخروج من درع الأصل إلى العقد الطرفية. يتم تكبد رسوم للخروج من العقد الطرفية للعملاء.
نموذج استعلام Kusto لاستبعاد السجلات التي تم إنشاؤها على درع الأصل في Log Analytics.
AzureDiagnostics
| where OperationName == "Microsoft.Cdn/Profiles/AccessLog/Write" and Category == "AzureCdnAccessLog"
| where isReceivedFromClient == true
هام
تتوفر ميزة سجلات HTTP الأولية تلقائياً لأي ملفات تعريف تم إنشاؤها أو تحديثها بعد 25 فبراير 2020. بالنسبة إلى ملفات تعريف شبكة تسليم المحتوى التي تم إنشاؤها سابقاً، يجب على المرء تحديث نقطة نهاية شبكة تسليم المحتوى بعد إعداد التسجيل. على سبيل المثال، يمكن للمرء الانتقال إلى التصفية الجغرافية تحت نقاط نهاية شبكة تسليم المحتوى وحظر أي بلد/منطقة غير ذات صلة بحمل العمل الخاص به وضرب الحفظ.
المقاييس
يتم تكامل Azure CDN من Microsoft مع Azure Monitor ونشر أربعة مقاييس لشبكة تسليم المحتوى للمساعدة في تعقب المشكلات وإصلاحها وتصحيحها.
يتم عرض المقاييس في المخططات البيانية ويمكن الوصول إليها عبر PowerShell وCLI وAPI. مقاييس شبكة تسليم محتوى مجانية.
يقيس Azure CDN من Microsoft ويرسل مقاييسه في فواصل زمنية 60 ثانية. يمكن أن تستغرق المقاييس ما يصل إلى 3 دقائق لتظهر في المدخل.
لمزيد من المعلومات، راجع مقاييس Azure Monitor.
المقاييس التي يدعمها Azure CDN من Microsoft
مقاييس | الوصف | الأبعاد |
---|---|---|
نسبة مرات الوصول بالبايت* | النسبة المئوية للخروج من ذاكرة التخزين المؤقت لشبكة تسليم المحتوى، محسوبة مقابل إجمالي الخروج. | نقطة النهاية |
RequestCount | عدد طلبات العملاء التي تقدمها شبكة تسليم المحتوى (CDN). | بلد عميل نقطة النهاية . منطقة العميل. حالة HTTP. مجموعة حالة HTTP. |
ResponseSize | عدد وحدات البايت المرسلة كاستجابات من حافة شبكة تسليم المحتوى للعملاء. | بلد عميل نقطة النهاية . منطقة العميل. حالة HTTP. مجموعة حالة HTTP. |
TotalLatency | إجمالي الوقت بدءًا من طلب العميل الذي تلقته شبكة تسليم المحتوى (CDN) حتى إرسال آخر بايت من الاستجابة من شبكة تسليم المحتوى (CDN) إلى العميل. | بلد عميل نقطة النهاية . منطقة العميل. حالة HTTP. مجموعة حالة HTTP. |
إشعار
إذا تم تعيين طلب إلى مهلة الأصل، يتم تعيين قيمة HttpStatusCode إلى 0.
*نسبة عدد وحدات البايت = (الخروج من الحافة - الخروج من الأصل)/الخروج من الحافة
السيناريوهات المستثناة في حساب نسبة مرات الوصول بالبايت:
- تكوين أي ذاكرة التخزين المؤقت بشكل صريح إما من خلال سلوك التخزين المؤقت "محرك القواعد" أو "سلسلة الاستعلام".
- يمكنك تكوين توجيه التحكم في ذاكرة التخزين المؤقت بشكل صريح مع ذاكرة التخزين المؤقت الخاصة أو بدون مخزن.
تكوين المقاييس
في قائمة مدخل Azur، حدد جميع الخدمات>><ملف تعريف شبكة تسليم المحتوى الخاص بك>.
ضمن "مراقبة"، حدد "المقاييس":
حدد إضافة مقياس، وحدد المقياس لإضافته:
حدد "إضافة عامل تصفية" لإضافة عامل تصفية:
حدد تطبيق التقسيم لرؤية الاتجاه حسب أبعاد مختلفة:
حدد "مخطط جديد" لإضافة مخطط جديد:
التنبيهات
يمكنك إعداد التنبيهات على Microsoft CDN عن طريق تحديد مراقبة>>التنبيهات.
حدد قاعدة تنبيه جديدة للمقاييس المُدرجة في قسم «المقاييس»:
يتم فرض رسوم على التنبيه استنادا إلى Azure Monitor. لمزيد من المعلومات حول التنبيهات، راجع تنبيهات Azure Monitor.
المزيد من المقاييس
يمكنك تمكين المزيد من المقاييس باستخدام Azure Log Analytics والسجلات الأولية بتكلفة إضافية.
اتبع الخطوات الواردة في القسم السابق لتمكين التشخيصات من إرسال سجل أولي إلى Log Analytics.
حدد مساحة عمل Log Analytics التي أنشأتها:
حدد Logs ضمن General في مساحة عمل Log Analytics. ثم حدد بدء الاستخدام:
حدد ملفات تعريف شبكة تسليم المحتوى. حدد استعلام مثال لتشغيل أو إغلاق شاشة المثال لإدخال استعلام مخصص:
لعرض البيانات حسب المخطط البياني، حدد المخطط البياني. حدد تثبيت بلوحة المعلومات لتثبيت المخطط البياني بلوحة معلومات Azure:
الخطوات التالية
في هذه المقالة، لقد قمت بتمكين سجلات HTTP الأولية لخدمة Microsoft CDN.
لمزيد من المعلومات حول Azure CDN وخدمات Azure الأخرى المذكورة في هذه المقالة، راجع:
تحليل أنماط استخدام Azure CDN.
تعرف على المزيد حول Azure Monitor.