إرسال البيانات من ملحق تشخيص Azure Windows إلى مركز الحدث Azure

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

البيانات المعتمدة

تتضمن البيانات التي تم تجميعها من نظام التشغيل الضيف (Guest) التي يمكن إرسالها إلى "مراكز الأحداث" ما يلي. لا يمكن إرسال مصادر البيانات الأخرى التي تم تجميعها بواسطة WAD، بما في ذلك سجلات IIS ومقالب الأعطال، إلى "مراكز الأحداث".

  • تتبع الأحداث لأحداث Windows (ETW)
  • عدادات الأداء
  • Windows سجلات الأحداث، بما في ذلك سجلات التطبيقات في سجل الأحداث Windows
  • سجلات البنية الأساسية لتشخيص Azure

المتطلبات الأساسية

مخطط التكوين

راجع ثبيت وتكوين ملحق تشخيص Azure (WAD) Windowsخيارات مختلفة لتمكين وتكوين ملحق التشخيص ومخطط تكوين وتشخيص Azureمخطط التكوين. تصف بقية هذه المقالة كيفية استخدام هذا التكوين لإرسال البيانات إلى مركز الأحداث.

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

الخاصية الوصف
الاسم اسم وصفي للمتلقي. يستخدم في التكوين لتحديد مصادر البيانات التي سيتم إرسالها إلى المتلقي.
عنوان URL عنوان URL لمركز الحدث بصيغة مساحة <event-hubs-namespace>.servicebus.windows.net/<event-hub-name>.
اسم الوصول المشترك اسم نهج وصول مشترك لمركز الأحداث الذي يحتوي على الأقل إرسال المرجع.
مفتاح الوصول المشترك SharedAccessKey المفتاح الأساسي أو الثانوي من نهج الوصول المشترك لمركز الأحداث.

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

التكوين العام

{
    "WadCfg": {
        "DiagnosticMonitorConfiguration": {
            "overallQuotaInMB": 5120,
            "PerformanceCounters": {
                "scheduledTransferPeriod": "PT1M",
                "sinks": "myEventHub",
                "PerformanceCounterConfiguration": [
                    {
                        "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
                        "sampleRate": "PT3M"
                    }
                ]
            },
            "WindowsEventLog": {
                "scheduledTransferPeriod": "PT1M",
                "sinks": "myEventHub",
                    "DataSource": [
                    {
                        "name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
                    }
                ]
            }
        },
        "SinksConfig": {
            "Sink": [
                {
                    "name": "myEventHub",
                    "EventHub": {
                        "Url": "https://diags-mycompany-ns.servicebus.windows.net/diageventhub",
                        "SharedAccessKeyName": "SendRule"
                    }
                }
            ]
        }
    },
    "StorageAccount": "mystorageaccount",
}

التكوين الخاص

{
    "storageAccountName": "mystorageaccount",
    "storageAccountKey": "{base64 encoded key}",
    "storageAccountEndPoint": "https://core.windows.net",
    "EventHub": {
        "Url": "https://diags-mycompany-ns.servicebus.windows.net/diageventhub",
        "SharedAccessKeyName": "SendRule",
        "SharedAccessKey": "{base64 encoded key}"
    }
}

خيارات الإعداد

لإرسال البيانات إلى متلقي بيانات، يمكنك تحديد المتلقي على سمة عقده مصدر البيانات. حيث يمكنك وضع المتلقين السمة تحدد نطاق التعيين. في المثال التالي، يتم تعريف السمة sinks إلى العقدة PerformanceCounters الذي سيؤدي كافة عدادات الأداء التابعة لإرسالها إلى مركز الحدث.

"PerformanceCounters": {
    "scheduledTransferPeriod": "PT1M",
    "sinks": "MyEventHub",
    "PerformanceCounterConfiguration": [
        {
            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
            "sampleRate": "PT3M"
        },
        {
            "counterSpecifier": "\\Memory\\Available MBytes",
            "sampleRate": "PT3M"
        },
        {
            "counterSpecifier": "\\Web Service(_Total)\\ISAPI Extension Requests/sec",
            "sampleRate": "PT3M"
        }
    ]
}

في المثال التالي، يتم تطبيق السمة sinks مباشرةً على ثلاثة عدّادات، الأمر الذي سيؤدي كافة عدادات الأداء التابعة لإرسالها إلى مركز الحدث.

"PerformanceCounters": {
    "scheduledTransferPeriod": "PT1M",
    "PerformanceCounterConfiguration": [
        {
            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
            "sampleRate": "PT3M",
            "sinks": "MyEventHub"
        },
        {
            "counterSpecifier": "\\Memory\\Available MBytes",
            "sampleRate": "PT3M"
        },
        {
            "counterSpecifier": "\\Web Service(_Total)\\ISAPI Extension Requests/sec",
            "sampleRate": "PT3M"
        },
        {
            "counterSpecifier": "\\ASP.NET\\Requests Rejected",
            "sampleRate": "PT3M",
            "sinks": "MyEventHub"
        },
        {
            "counterSpecifier": "\\ASP.NET\\Requests Queued",
            "sampleRate": "PT3M",
            "sinks": "MyEventHub"
        }
    ]
}

التحقق من صحة التكوين

يمكنك استخدام مجموعة متنوعة من الطرق للتحقق من صحة إرسال البيانات إلى مركز الحدث. أسلوب مباشر واحد هو استخدام التقاط "مراكز الأحداث" كما هو موضح في أحداث التقاط من خلال مركز الحدث Azure في تخزين النقطة Azure أو Azure Data Lake Storage.

استكشاف أخطاء مراكز الأحداث وإصلاحها

  • انظر إلى جدول تخزين Azure WADDiagnosticInfrastructureLogsTable الذي يحتوي على سجلات وأخطاء لتشخيص Azure نفسه. أحد الخيارات هو استخدام أداة مثل مستكشف تخزين Azureليصل بحساب التخزين هذا، وعرض هذا الجدول، وإضافة استعلام ل TimeStamp في آخر 24 ساعة. يمكنك استخدام الأداة لتصدير ملف .csv وفتحه في تطبيق مثل Microsoft Excel. Excel يجعل من السهل البحث عن سلاسل بطاقة الاتصال، مثل EventHubs، لمعرفة ما هو الخطأ الذي تم الإبلاغ عنه.

  • تأكد من أن مركز الأحداث الخاص بك قد تم توفيرها بنجاح. يجب أن تتطابق كافة معلومات الاتصال في مقطع PrivateConfig التكوين مع قيم المورد كما هو ظاهر في المدخل. تأكد من أن لديك نهج SAS المعرفة(SendRule في المثال) في المدخل ومن أن يتم منح إذن إرسال.

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