تثبيت وتكوين ملحق تشخيصات Azure لنظام التشغيل Windows (WAD)

ملحق تشخيص Azure هو عامل في Azure Monitor يجمع بيانات المراقبة من نظام التشغيل الضيف وأحمال العمل لأجهزة Azure الظاهرية وموارد الحوسبة الأخرى. توفر هذه المقالة معلومات حول كيفية تثبيت وتكوين ملحق تشخيص Azure لنظام التشغيل Windows وتصف كيفية تخزين البيانات في حساب Azure Storage.

يتم تنفيذ ملحق التشخيص كملحق جهاز ظاهري في Azure. وهو يدعم نفس خيارات التثبيت باستخدام قوالب Azure Resource Manager وPowerShell وAzure CLI. للحصول على معلومات حول كيفية تثبيت ملحقات الجهاز الظاهري وصيانتها، راجع ملحقات الجهاز الظاهري وميزاته لنظام التشغيل Windows.

نظرة عامة

عند تكوين ملحق تشخيصات Azure لنظام التشغيل Windows، يجب تحديد حساب تخزين حيث سيتم إرسال جميع البيانات المحددة. يمكنك اختياريا إضافة متلقي بيانات واحد أو أكثر لإرسال البيانات إلى مواقع مختلفة:

  • متلقي Azure Monitor: إرسال بيانات أداء الضيف إلى مقاييس Azure Monitor.
  • متلقي Azure Event Hub: إرسال أداء الضيف وتسجيل البيانات إلى مراكز الأحداث لإعادة التوجيه خارج Azure. لا يمكن تكوين هذا المتلقي في مدخل Microsoft Azure.

تثبيت باستخدام مدخل Azure

يمكنك تثبيت وتكوين ملحق التشخيص على جهاز ظاهري فردي في مدخل Microsoft Azure. ستعمل مع واجهة بدلا من العمل مباشرة مع التكوين. عند تمكين ملحق التشخيصات، فإنه سيتم تلقائيًا استخدام تكوين افتراضي مع عدادات وأحداث الأداء الأكثر شيوعًا. يمكنك تعديل هذا التكوين الافتراضي وفقًا لمتطلبات محددة.

إشعار

تصف الخطوات التالية الإعدادات الأكثر شيوعا لملحق التشخيص. لمزيد من المعلومات حول جميع خيارات التكوين، راجع مخطط ملحق تشخيصات Windows.

  1. افتح القائمة لجهاز ظاهري في مدخل Azure.

  2. حدد Diagnostic settings في قسم Monitoring من قائمة VM.

  3. حدد تمكين المراقبة على مستوى الضيف إذا لم يتم تمكين ملحق التشخيص بالفعل.

    Screenshot that shows enabling monitoring.

  4. سيتم إنشاء حساب تخزين Azure جديد للجهاز الظاهري. سيستند الاسم إلى اسم مجموعة الموارد للجهاز الظاهري. سيتم تحديد مجموعة افتراضية من عدادات وسجلات أداء الضيف.

    Screenshot that shows Diagnostic settings.

  5. في علامة التبويب عدادات الأداء، حدد مقاييس الضيف التي تريد جمعها من هذا الجهاز الظاهري. استخدم الإعداد مخصص لتحديد أكثر تقدمًا.

    Screenshot that shows Performance counters.

  6. في علامة التبويب Logs ، حدد السجلات المراد جمعها من الجهاز الظاهري. يمكن إرسال السجلات إلى مراكز التخزين أو مراكز الأحداث، ولكن ليس إلى Azure Monitor. استخدم عامل Log Analytics لجمع سجلات الضيوف إلى Azure Monitor.

    Screenshot that shows the Logs tab with different logs selected for a virtual machine.

  7. في علامة التبويب تفريغ الأعطال ، حدد أي عمليات لتجميع تفريغ الذاكرة بعد حدوث عطل. ستتم كتابة البيانات إلى حساب التخزين لإعداد التشخيص. يمكنك تحديد حاوية كائن ثنائي كبير الحجم اختياريا.

    Screenshot that shows the Crash dumps tab.

  8. في علامة التبويب Sinks ، حدد ما إذا كنت تريد إرسال البيانات إلى مواقع أخرى غير تخزين Azure. إذا قمت بتحديد Azure Monitor، سيتم إرسال بيانات أداء الضيف إلى مقاييس Azure Monitor. لا يمكنك تكوين متلقي مراكز الأحداث باستخدام مدخل Microsoft Azure.

    Screenshot that shows the Sinks tab with the Send diagnostic data to Azure Monitor option enabled.

    إذا لم تقم بتمكين هوية معينة من قبل النظام تم تكوينها لجهازك الظاهري، فقد ترى التحذير التالي عند حفظ تكوين مع متلقي Azure Monitor. حدد الشعار لتمكين الهوية المعينة من قبل النظام.

    Screenshot that shows the managed identity warning.

  9. في علامة التبويب عامل ، يمكنك تغيير حساب التخزين، وتعيين الحصة النسبية للقرص، وتحديد ما إذا كنت تريد تجميع سجلات البنية الأساسية التشخيصية.

    Screenshot that shows the Agent tab with the option to set the storage account.

  10. حدد حفظ لحفظ التكوين.

إشعار

يمكن تنسيق تكوين ملحق التشخيص إما في JSON أو XML، ولكن سيتم تخزين أي تكوين تم في مدخل Microsoft Azure دائما ك JSON. إذا كنت تستخدم XML مع أسلوب تكوين آخر ثم غيّرت التكوين الخاص بك باستخدام مدخل Azure، سيتم تغيير الإعدادات إلى JSON. أيضا، لا يوجد خيار لإعداد فترة الاستبقاء لهذه السجلات.

قالب إدارة الموارد

للحصول على معلومات حول كيفية نشر ملحق التشخيص باستخدام قوالب Azure Resource Manager، راجع استخدام المراقبة والتشخيصات مع قوالب Windows VM وAzure Resource Manager.

توزيع Azure CLI

يمكن استخدام Azure CLI لنشر ملحق Azure Diagnostics إلى جهاز ظاهري موجود باستخدام az vm extension set كما في المثال التالي:

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name IaaSDiagnostics \
  --publisher Microsoft.Azure.Diagnostics \
  --protected-settings protected-settings.json \
  --settings public-settings.json 

يتم تعريف الإعدادات المحمية في عنصر PrivateConfig لمخطط التكوين. يحدد المثال الأدنى التالي لملف الإعدادات المحمية حساب التخزين. للحصول على تفاصيل كاملة عن الإعدادات الخاصة، راجع مثال التكوين.

{
    "storageAccountName": "mystorageaccount",
    "storageAccountKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "storageAccountEndPoint": "https://core.windows.net"
}

يتم تعريف الإعدادات العامة في العنصر عام لمخطط التكوين. يتيح المثال الأدنى التالي لملف الإعدادات العامة مجموعة من سجلات البنية الأساسية التشخيصية وعداد أداء واحد وسجل أحداث واحد. للحصول على تفاصيل كاملة عن الإعدادات العامة، راجع مثال التكوين.

{
  "StorageAccount": "mystorageaccount",
  "WadCfg": {
    "DiagnosticMonitorConfiguration": {
      "overallQuotaInMB": 5120,
      "PerformanceCounters": {
        "scheduledTransferPeriod": "PT1M",
        "PerformanceCounterConfiguration": [
          {
            "counterSpecifier": "\\Processor Information(_Total)\\% Processor Time",
            "unit": "Percent",
            "sampleRate": "PT60S"
          }
        ]
      },
      "WindowsEventLog": {
        "scheduledTransferPeriod": "PT1M",
        "DataSource": [
          {
            "name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
          }
        ]
      }
    }
  }
}

توزيع PowerShell

يمكن استخدام PowerShell لنشر ملحق Azure Diagnostics إلى جهاز ظاهري موجود باستخدام Set-AzVMDiagnosticsExtension، كما في المثال التالي:

Set-AzVMDiagnosticsExtension -ResourceGroupName "myvmresourcegroup" `
  -VMName "myvm" `
  -DiagnosticsConfigurationPath "DiagnosticsConfiguration.json"

يتم تعريف الإعدادات الخاصة في عنصر PrivateConfig. يتم تعريف الإعدادات العامة في العنصر عام لمخطط التكوين. يمكنك أيضا اختيار تحديد تفاصيل حساب التخزين كمعلمات cmdlet Set-AzVMDiagnosticsExtension بدلا من تضمينها في الإعدادات الخاصة.

يتيح المثال الأدنى التالي لملف التكوين مجموعة من سجلات البنية الأساسية التشخيصية وعداد أداء واحد وسجل أحداث واحد. للحصول على تفاصيل كاملة عن الإعدادات الخاصة والعامة، راجع مثال التكوين.

{
    "PublicConfig": {
        "WadCfg": {
            "DiagnosticMonitorConfiguration": {
                "overallQuotaInMB": 10000,
                "DiagnosticInfrastructureLogs": {
                    "scheduledTransferLogLevelFilter": "Error"
                },
                "PerformanceCounters": {
                    "scheduledTransferPeriod": "PT1M",
                    "PerformanceCounterConfiguration": [
                        {
                            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
                            "sampleRate": "PT3M",
                            "unit": "percent"
                        }
                    ]
                },
                "WindowsEventLog": {
                    "scheduledTransferPeriod": "PT1M",
                        "DataSource": [
                        {
                            "name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
                        }
                    ]
                }
            }
        },
        "StorageAccount": "mystorageaccount",
        "StorageType": "TableAndBlob"
    },
    "PrivateConfig": {
        "storageAccountName": "mystorageaccount",
        "storageAccountKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        "storageAccountEndPoint": "https://core.windows.net"
    }
}

راجع أيضًا استخدام PowerShell لتمكين Azure Diagnostics في جهاز ظاهري يعمل بنظام Windows.

تخزين بيانات

يسرد الجدول التالي أنواع مختلفة من البيانات التي تم جمعها من ملحق التشخيصات وما إذا كانت مخزنة كجدول أو ككائن ثنائي كبير الحجم. يمكن أيضًا تخزين البيانات المخزنة في الجداول في كائنات ثنائية كبيرة الحجم استنادًا إلى إعداد StorageType في التكوين العام.

بيانات نوع التخزين ‏‏الوصف
WADDiagnosticInfrastructureLogsTable جدول مراقب التشخيص وتغييرات التكوين.
WADDirectoriesTable جدول الدلائل التي يراقبها مراقب التشخيص. تتضمن هذه المجموعة سجلات IIS وسجلات الطلبات الفاشلة ل IIS والدلائل المخصصة. يتم تحديد موقع ملف سجل كائن ثنائي كبير الحجم في حقل الحاوية وتحديد اسم الكائن الثنائي كبير الحجم في حقل RelativePath. يشير الحقل AbsolutePath إلى موقع واسم الملف كما كان موجوداً على الجهاز الظاهري لـ Azure.
WadLogsTable جدول السجلات المكتوبة في التعليمات البرمجية باستخدام مستمع التتبع.
WADPerformanceCountersTable جدول عدادات الأداء.
WADWindowsEventLogsTable جدول سجلات أحداث Windows.
wad-iis-failedreqlogfiles كائن ثنائي كبير الحجم يحتوي على معلومات من سجلات طلب IIS الفاشلة.
wad-iis-logfiles كائن ثنائي كبير الحجم يحتوي على معلومات حول سجلات IIS.
"مخصص" كائن ثنائي كبير الحجم الحاوية المخصصة المستندة إلى تكوين الدلائل التي تتم مراقبتها بواسطة مراقب التشخيص. سيتم تحديد اسم حاوية النقاط في WADDirectoriesTable.

أدوات لعرض بيانات التشخيص

تتوفر العديد من الأدوات لعرض البيانات بعد نقلها إلى التخزين. على سبيل المثال:

  • مستكشف الخادم في Visual Studio: إذا قمت بتثبيت أدوات Azure ل Microsoft Visual Studio، يمكنك استخدام عقدة Azure Storage في Server Explorer لعرض بيانات البيانات الثنائية كبيرة الحجم والجدول للقراءة فقط من حسابات Azure Storage. يمكنك عرض البيانات من حساب محاكي التخزين المحلي ومن حسابات التخزين التي أنشأتها ل Azure. لمزيد من المعلومات، راجع استعراض موارد التخزين وإدارتها باستخدام Server Explorer.
  • Microsoft Azure Storage Explorer: يمكنك هذا التطبيق المستقل من العمل بسهولة مع بيانات Azure Storage على Windows وOSX وLinux.
  • Azure Management Studio: تتضمن هذه الأداة Azure Diagnostics Manager. استخدمه لعرض بيانات التشخيص التي تم جمعها بواسطة التطبيقات التي تعمل على Azure وتنزيلها وإدارتها.

الخطوات التالية

للحصول على معلومات حول إعادة توجيه بيانات المراقبة إلى Azure Event Hubs، راجع إرسال البيانات من ملحق تشخيص Azure إلى مراكز الأحداث.