استخدام التسجيل الانتقائي مع إجراء برنامج نصي لعامل Azure Monitor (AMA) في Azure HDInsight
سجلات Azure Monitor هي خدمة Azure Monitor التي تراقب البيئات السحابية والبيئات المحلية. تساعد المراقبة في الحفاظ على توافرها وأدائها.
تجمع سجلات Azure Monitor البيانات التي تم إنشاؤها بواسطة الموارد الموجودة في السحابة، والموارد الموجودة في البيئات المحلية، وأدوات المراقبة الأخرى. تستخدم البيانات لتوفير التحليل عبر مصادر متعددة. للحصول على التحليل، يمكنك تمكين ميزة التسجيل الانتقائي باستخدام إجراء برنامج نصي لـ HDInsight في مدخل Azure.
حول التسجيل الانتقائي
التسجيل الانتقائي هو جزء من نظام المراقبة الشامل لـ Azure. بعد توصيل نظام مجموعتك بمساحة عمل Log Analytics وتمكين التسجيل الانتقائي، يمكنك عرض السجلات والمقاييس مثل سجلات أمان HDInsight وResource Manager Yarn ومقاييس النظام. يمكنك مراقبة أحمال العمل ومعرفة كيفية تأثيرها على استقرار نظام المجموعة.
يسمح لك التسجيل الانتقائي بتمكين/تعطيل جميع الجداول أو تمكين الجداول الانتقائية في مساحة عمل Log Analytics. يمكنك ضبط نوع المصدر لكل جدول.
إشعار
إذا تمت إعادة تثبيت Log Analytics في نظام مجموعة، يتعين عليك تعطيل جميع الجداول وأنواع السجلات مرة أخرى. تعيد إعادة تثبيت تعيين كافة ملفات التكوين إلى حالتها الأصلية.
اعتبارات إجراءات البرنامج النصي
- يستخدم نظام المراقبة Metadata Server Daemon (عامل مراقبة) وFluentd لجمع السجلات باستخدام طبقة تسجيل موحدة.
- يستخدم التسجيل الانتقائي إجراء البرنامج النصي لتعطيل أو تمكين الجداول وأنواع السجلات الخاصة بها. نظرًا لأن السجلات الانتقائية لا تفتح أي منافذ جديدة أو تغير أي إعداد أمان موجود، بالتالي، لا توجد تغييرات أمنية.
- يعمل إجراء البرنامج النصي بالتوازي على جميع العقد المحددة ويغير ملفات التكوين لتعطيل/تمكين الجداول وأنواع السجلات الخاصة بها.
المتطلبات الأساسية
- مساحة عمل Log Analytics. يمكنك التفكير في مساحة العمل هذه على أنها بيئة سجلات فريدة من نوعها في Azure Monitor مع مستودع البيانات ومصادر البيانات والحلول الخاصة بها. للحصول على إرشادات، راجع إنشاء مساحة عمل Log Analytics.
- مجموعة Azure HDInsight. حاليا، يمكنك استخدام ميزة التسجيل الانتقائي مع أنواع نظام مجموعة HDInsight التالية:
- Hadoop
- HBase
- استعلام تفاعلي
- Spark
للحصول على إرشادات حول كيفية إنشاء نظام مجموعة HDInsight، راجع بدء استخدام Azure HDInsight.
تمكين/تعطيل السجلات باستخدام إجراء البرنامج النصي لعدة جداول وأنواع سجلات
انتقل إلى إجراءات البرنامج النصي في نظام المجموعة وحدد إرسال جديد لبدء عملية إنشاء إجراء برنامج نصي.
يظهر جزء إرسال إجراء البرنامج النصي.
في نوع البرنامج النصي، حدد مخصص.
قم بتسمية البرنامج النصي. على سبيل المثال، تعطيل جدولين ومصدرين.
يجب أن يكون عنوان URI للبرنامج النصي Bash ارتباطًا إلى selectiveLoggingScript.sh.
حدد جميع أنواع العقد التي تنطبق على نظام المجموعة. الخيارات هي عقدة العنوان وعقدة العامل وعقدة ZooKeeper.
عرف المعلمات. على سبيل المثال:
- Spark:
spark HDInsightSparkLogs:SparkExecutorLog --disable
- استعلام تفاعلي:
interactivehive HDInsightHadoopAndYarnLogs:NodeManager --enable
- Hadoop:
hadoop HDInsightHiveAndLLAPLogs:HiveServer2Log --disable
- HBase:
hbase HDInsightHBaseLogs:HBaseRegionServerLog --enable
لمزيد من المعلومات، راجع قسم بناء جملة المعلمة.
- Spark:
حدد إنشاء.
بعد بضع دقائق، تظهر علامة اختيار خضراء بجوار محفوظات إجراءات البرنامج النصي. وهذا يعني أن البرنامج النصي قد تم تشغيله بنجاح.
ترى التغييرات التي أجريتها في مساحة عمل Log Analytics.
استكشاف الأخطاء وإصلاحها
لا تظهر أي تغييرات في مساحة عمل Log Analytics
إذا تم إرسال إجراء البرنامج النصي ولكن لا توجد تغييرات في مساحة عمل Log Analytics:
ضمن لوحات المعلومات، حدد الصفحة الرئيسية لـ Ambari للتحقق من معلومات تتبع الأخطاء.
حدد زر "Settings".
حدد تشغيل البرنامج النصي الأخير في أعلى قائمة عمليات الخلفية.
تحقق من حالة تشغيل البرنامج النصي في جميع العقد بشكل فردي.
تحقق مما إذا كان بناء جملة المعلمة من قسم بناء جملة المعلمة صحيحًا.
تحقق مما إذا كانت مساحة عمل Log Analytics متصلة بالمجموعة وتم تشغيل مراقبة Log Analytics.
تحقق من تحديد استمرار إجراء هذا البرنامج النصي لإعادة التشغيل عند إضافة عقد جديدة إلى خانة اختيار نظام مجموعة لإجراء البرنامج النصي الذي قمت بتشغيله.
تحقق مما إذا تمت إضافة عقدة جديدة إلى نظام مجموعة مؤخرًا.
إشعار
لتشغيل البرنامج النصي في أحدث نظام مجموعة، يجب أن يستمر البرنامج النصي.
تأكد من تحديد كافة أنواع العقد التي تريدها لإجراء البرنامج النصي.
فشل إجراء البرنامج النصي
إذا كان إجراء البرنامج النصي يظهر حالة فشل في محفوظات إجراء البرنامج النصي:
- تحقق مما إذا كان بناء جملة المعلمة من قسم بناء جملة المعلمة صحيحًا.
- تحقق من صحة ارتباط البرنامج النصي. يجب أن تكون
https://hdiconfigactions.blob.core.windows.net/log-analytics-patch/selectiveLoggingScriptsAma/selectiveLoggingScript.sh
.
أسماء الجداول
للحصول على قائمة كاملة بأسماء الجداول وأنواع السجلات المختلفة (المصادر)، راجع جداول Azure Monitor Logs.
بناء جملة المعلمة
تحدد المعلمات نوع نظام المجموعة وأسماء الجداول وأسماء المصدر والإجراء.
تحتوي المعلمة على ثلاثة أجزاء:
- نوع شبكة نظام المجموعة
- الجداول وأنواع السجلات
- الإجراء (إما
--disable
أو--enable
)
بناء الجملة لجداول متعددة
عندما يكون لديك جداول متعددة، يتم فصلها بفاصلة. على سبيل المثال:
spark HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --disable
hbase HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --enable
بناء جملة أنواع مصادر متعددة أو أنواع سجلات
عندما يكون لديك أنواع مصادر متعددة أو أنواع سجلات، يتم فصلها بمسافة.
لتعطيل مصدر، اكتب اسم الجدول الذي يحتوي على أنواع السجلات، متبوعًا بنقطتين ثم اسم نوع السجل الحقيقي:
TableName : LogTypeName
على سبيل المثال، افترض أن spark HDInsightSecurityLogs
هو جدول يحتوي على نوعين من السجلات: AmbariAuditLog
وAuthLog
. لتعطيل كلا النوعين من السجلات، سيكون بناء الجملة الصحيح:
spark HDInsightSecurityLogs: AmbariAuditLog AuthLog --disable
بناء الجملة للجداول وأنواع المصادر المتعددة
إذا كنت بحاجة إلى تعطيل جدولين ونوعين من المصادر، فاستخدم بناء الجملة التالي:
- Spark: نوع السجل
InteractiveHiveMetastoreLog
في الجدولHDInsightHiveAndLLAPLogs
- Hbase: نوع السجل
InteractiveHiveHSILog
في الجدولHDInsightHiveAndLLAPLogs
- Hadoop: جدول
HDInsightHiveAndLLAPMetrics
- Hadoop: جدول
HDInsightHiveTezAppStats
افصل الجداول بفاصلة. قم بالإشارة إلى المصادر باستخدام نقطتين بعد اسم الجدول الذي يقيمون فيه.
سيكون بناء جملة المعلمة الصحيح لمثل هذه الحالات:
interactivehive HDInsightHiveAndLLAPLogs: InteractiveHiveMetastoreLog, HDInsightHiveAndLLAPMetrics, HDInsightHiveTezAppStats, HDInsightHiveAndLLAPLogs: InteractiveHiveHSILog --enable