إعادة توجيه سجلات تشخيص Azure Automation إلى Azure Monitor

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

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

باستخدام سجلات Azure Monitor، يمكنك دمج السجلات من موارد مختلفة في نفس مساحة العمل حيث يمكن تحليلها باستخدام الاستعلامات لاسترداد البيانات المجمعة ودمجها وتحليلها بسرعة. يمكنك إنشاء استعلامات واختبارها باستخدام Log Analytics في مدخل Microsoft Azure ثم إما تحليل البيانات مباشرة باستخدام هذه الأدوات أو حفظ الاستعلامات لاستخدامها مع قواعد التصور أو التنبيه.

يستخدم Azure Monitor إصدارا من لغة استعلام Kusto (KQL) المستخدمة من قبل مستكشف بيانات Azure المناسب لاستعلامات السجل البسيطة. كما يتضمن وظائف متقدمة مثل التجميعات والصلات والتحليلات الذكية. يمكنك تعلم لغة الاستعلام بسرعة باستخدام دروس متعددة.

إعدادات تشخيص Azure Automation

يمكنك إعادة توجيه سجلات النظام الأساسي التالية وبيانات القياس باستخدام دعم إعدادات تشخيص التنفيذ التلقائي:

أنواع البيانات ‏‏الوصف
سجلات الوظائف حالة مهمة دفتر التشغيل في حساب التنفيذ التلقائي.
عمليات دفق الوظائف حالة تدفقات الوظائف في دفتر التشغيل المحدد في حساب التنفيذ التلقائي.
DSCNodeStatus حالة عقدة DSC.
حدث التدقيق جميع سجلات الموارد التي تسجل تفاعلات العملاء مع البيانات أو إعدادات خدمة Azure Automation.
المقاييس إجمالي المهام، وإجمالي التحديث، وتشغيل جهاز النشر، وإجمالي عمليات تشغيل نشر التحديث.

تكوين إعدادات التشخيص في مدخل Microsoft Azure

يمكنك تكوين إعدادات التشخيص في مدخل Microsoft Azure من القائمة لمورد حساب التنفيذ التلقائي.

  1. في قائمة حساب التنفيذ التلقائي، ضمن Monitoring حدد Diagnostic settings.

    لقطة شاشة تعرض تحديد خيار إعداد التشخيص.

  2. اخترAdd diagnostic setting.

    لقطة شاشة تعرض تحديد إضافة إعداد تشخيص.

  3. أدخل اسم إعداد في اسم إعداد التشخيص إذا لم يكن لديه اسم بالفعل.

    يمكنك أيضا عرض جميع فئات السجلات والمقاييس.

    لقطة شاشة تعرض جميع فئات السجلات والمقاييس.

    • السجلات والمقاييس لتوجيه : بالنسبة للسجلات، اختر مجموعة فئات أو حدد خانات الاختيار الفردية لكل فئة من البيانات التي تريد إرسالها إلى الوجهات المحددة. اختر AllMetrics إذا كنت تريد تخزين المقاييس في سجلات Azure Monitor.

    • تفاصيل الوجهة : حدد خانة الاختيار لكل وجهة. وفقا لتحديد كل مربع، تظهر الخيارات للسماح لك بإضافة معلومات إضافية.

      لقطة شاشة تعرض التحديدات في قسم تفاصيل الوجهة.

      • Log Analytics : أدخل معرف الاشتراك واسم مساحة العمل. إذا لم يكن لديك مساحة عمل، فيجب عليك إنشاء مساحة قبل المتابعة.

      • مراكز الأحداث: حدد المعايير التالية:

        • الاشتراك: نفس اشتراك Event Hub.
        • مساحة اسم Event Hub: إنشاء Event Hub إذا لم يكن لديك واحد حتى الآن.
        • اسم Event Hub (اختياري): إذا لم تحدد اسما، يتم إنشاء مركز أحداث لكل فئة سجل. إذا كنت ترسل فئات متعددة، فحدد اسما للحد من عدد مراكز الأحداث التي تم إنشاؤها. راجع حصص وحدود مراكز الأحداث من Azure للحصول على التفاصيل.
        • نهج Event Hub (اختياري): يحدد النهج الأذونات التي تمتلكها آلية البث. راجع ميزة مراكز الأحداث.
      • التخزين: اختر الاشتراك وحساب التخزين ونهج الاستبقاء. لقطة شاشة تعرض حساب التخزين.

      • تكامل الشريك: يجب أولا تثبيت تكامل شريك في اشتراكك. ستختلف خيارات التكوين حسب الشريك. لمزيد من المعلومات، راجع تكامل Azure Monitor.

  4. انقر فوق حفظ.

بعد لحظات قليلة، يظهر الإعداد الجديد في قائمة إعدادات هذا المورد، ويتم دفق السجلات إلى الوجهات المحددة عند إنشاء بيانات أحداث جديدة. يمكن أن يكون هناك فرق زمني 15 دقيقة بين الحدث المنبعث ومظهره في مساحة عمل Log Analytics.

استعلم عن السجلات

للاستعلام عن السجلات التي تم إنشاؤها:

  1. في حساب Automation الخاص بك، ضمن Monitoring، حدد Logs.

  2. ضمن All Queries، حدد Automation Jobs.

    لقطة شاشة توضح كيفية الانتقال إلى تحديد مهام التنفيذ التلقائي.

  3. حدد أحد الاستعلامات التي تريد تنفيذها وانقر فوق تشغيل.

  4. لتنفيذ استعلام مخصص، أغلق نافذة الاستعلامات والصق الاستعلام المخصص في نافذة الاستعلام الجديد وانقر فوق تشغيل.

    يتم عرض إخراج الاستعلام في جزء النتائج .

  5. انقر فوق New alert rule لتكوين تنبيه Azure Monitor لهذا الاستعلام.

    لقطة شاشة توضح كيفية الاستعلام عن السجلات.

سجلات سجل Azure Monitor

تقوم تشخيصات Azure Automation بإنشاء الأنواع التالية من السجلات في سجلات Azure Monitor، التي تم وضع علامة عليها على أنها AzureDiagnostics. الجداول الموجودة في الأقسام أدناه هي أمثلة على السجلات التي ينشئها Azure Automation وأنواع البيانات التي تظهر في نتائج البحث في السجل.

سجلات المهام

الخاصية ‏‏الوصف
TimeGenerated التاريخ والوقت عند تنفيذ مهمة دفتر التشغيل.
RunbookName_s اسم/أسماء دفتر التشغيل.
Caller_s المتصل الذي بدأ العملية. القيم المحتملة هي إما عنوان بريد إلكتروني أو نظام للمهام المجدولة.
Tenant_g GUID (معرف فريد عمومي) يعرف المستأجر للمتصل.
JobId_g GUID الذي يحدد مهمة دفتر التشغيل.
نوع النتيجة حالة مهمة دفتر التشغيل. القيم المحتملة هي:
- جديد
- تم الإنشاء
- تم البدء
- تم التوقف
- تم التوقف مؤقتًا
- فشل
- مكتمل
الفئة تصنيف نوع البيانات. بالنسبة إلى التنفيذ التلقائي، القيمة هي JobLogs.
OperationName نوع العملية التي يتم تنفيذها في Azure. بالنسبة إلى التنفيذ التلقائي، القيمة هي المهمة.
Resource اسم حساب التنفيذ التلقائي
نظام المصدر النظام الذي يستخدم سجلات Azure Monitor لجمع البيانات. القيمة هي دائمًا Azure لتشخيص Azure.
وصف النتيجة حالة نتيجة مهمة دفتر التشغيل. القيم المحتملة هي:
- بدأت المهمة
- فشل المهمة
- تم إنجاز المهمة
CorrelationId المعرف الفريد العمومي للارتباط لمهمة دفتر التشغيل.
ResourceId معرف مورد حساب Azure Automation لدفتر التشغيل.
SubscriptionId. المعرف الفريد العمومي لاشتراك Azure لحساب التنفيذ التلقائي.
ResourceGroup اسم مجموعة الموارد لحساب التنفيذ التلقائي.
موفر المورد اسم موفر المورد. القيمة هي MICROSOFT.AUTOMATION.
ResourceType نوع المورد. القيمة هي AUTOMATIONACCOUNTS.

تدفقات المهام

الخاصية ‏‏الوصف
TimeGenerated تاريخ ووقت تنفيذ مهمة دفتر التشغيل.
RunbookName_s اسم دفتر التشغيل.
Caller_s المتصل الذي بدأ العملية. القيم المحتملة هي إما عنوان بريد إلكتروني أو نظام للمهام المجدولة.
StreamType_s نوع دفق الوظائف. القيم المحتملة هي:
-مستوى التقدم
- الإخراج
- تحذير
-خطأ
- تتبع الأخطاء
-verbose
Tenant_g GUID الذي يحدد المستأجر للمستدعي.
JobId_g GUID الذي يحدد مهمة دفتر التشغيل.
نوع النتيجة وضع مهمة دفتر التشغيل. القيم المحتملة هي:
- قيد التقدم
الفئة تصنيف نوع البيانات. بالنسبة إلى التنفيذ التلقائي، القيمة هي JobStreams.
OperationName نوع العملية التي يتم تنفيذها في Azure. بالنسبة إلى التنفيذ التلقائي، القيمة هي المهمة.
Resource اسم حساب التنفيذ التلقائي.
نظام المصدر النظام الذي يستخدم سجلات Azure Monitor لجمع البيانات. القيمة هي دائمًا Azure لتشخيص Azure.
وصف النتيجة الوصف الذي يتضمن تدفق الإنتاج من دفتر التشغيل.
CorrelationId المعرف الفريد العمومي للارتباط لمهمة دفتر التشغيل.
ResourceId معرف مورد حساب Azure Automation لدفتر التشغيل.
SubscriptionId. المعرف الفريد العمومي لاشتراك Azure لحساب التنفيذ التلقائي.
ResourceGroup اسم مجموعة الموارد لحساب التنفيذ التلقائي.
موفر المورد Resource provider. القيمة هي MICROSOFT.AUTOMATION.
ResourceType نوع المورد. القيمة هي AUTOMATIONACCOUNTS.

إشعار

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

أحداث التدقيق

الخاصية ‏‏الوصف
TenantID GUID الذي يحدد المستأجر للمستدعي.
TimeGenerated (UTC) تاريخ ووقت تنفيذ مهمة دفتر التشغيل.
الفئة حدث التدقيق
ResourceGroup اسم مجموعة الموارد لحساب التنفيذ التلقائي.
معرف الاشتراك المعرف الفريد العمومي لاشتراك Azure لحساب التنفيذ التلقائي.
موفر المورد Microsoft. اتمته
Resource اسم حساب Automation
ResourceType حسابات التنفيذ التلقائي
OperationName القيم المحتملة هي Update وCreate وDelete.
نوع النتيجة حالة مهمة دفتر التشغيل. القيمة المحتملة هي: مكتمل.
CorrelationId المعرف الفريد العمومي للارتباط لمهمة دفتر التشغيل.
وصف النتيجة حالة نتيجة مهمة دفتر التشغيل. القيم المحتملة هي Update وCreate وDelete.
Tenant_g GUID الذي يحدد المستأجر للمستدعي.
نظام المصدر النظام الذي تستخدمه سجلات Azures Monitor لجمع البيانات. القيمة هي دائمًا Azure لتشخيص Azure.
clientInfo_IpAddress_s {تم تنقيحه}
clientInfo_PrincipalName_s {تم تنقيحه}
clientInfo_TenantId_g معرف المستأجر للعميل.
clientInfo_Issuer_s
clientInfo_ObjectId_g معرف الكائن للعميل.
clientInfo_AppId_g معرف التطبيق للعميل.
clientInfo_ClientRequestId_g معرف الطلب للعميل
targetResources_Resource_s الحساب والوظيفة وبيانات الاعتماد الاتصال والمتغيرات ودفتر التشغيل.
نوع AzureDiagnostics
_ResourceId معرف مورد حساب Azure Automation لدفتر التشغيل.

عرض سجلات التنفيذ التلقائي في سجلات Azure Monitor

الآن بعد أن بدأت بإرسال تدفقات مهام التنفيذ التلقائي والسجلات إلى سجلات Azure Monitor، دعنا نرى ما يمكنك القيام به مع هذه السجلات داخل سجلات Azure Monitor.

لمشاهدة السجلات، قم بتشغيل الاستعلام التالي: kusto AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION"

استعلامات نموذجية لسجلات الوظائف وتدفقات الوظائف

البحث عن كافة المهام المكتملة بالخطأ

بالإضافة إلى سيناريوهات مثل التنبيه بشأن حالات الفشل، يمكنك العثور على عندما تحتوي مهمة دفتر التشغيل على خطأ غير منته. في هذه الحالات، PowerShell ينتج دفق خطأ ولكن أخطاء عدم الإنهاء لا تتسبب توقف المهمة مؤقتًا أو الفشل.

  1. في مساحة عمل "تحليلات السجل"، انقر فوق Logs.
  2. في حقل الاستعلام، اكتب:
    AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and StreamType_s == "Error" | summarize AggregatedValue = count () by JobId_g. 
    
  3. انقر فوق Search.

عرض تدفقات المهام لمهمة

عندما تقوم بتصحيح مهمة، قد تحتاج أيضًا إلى البحث في تدفقات المهام. يظهر الاستعلام التالي كافة الدفقات لمهمة واحدة مع GUID 2ebd22ea-e05e-4eb9-9d76-d73cbd4356e0:

AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and JobId_g == "2ebd22ea-e05e-4eb9-9d76-d73cbd4356e0"
| sort by TimeGenerated asc
| project ResultDescription

عرض حالة المهمة السابقة

أخيرًا، قد ترغب في تصور سجل عملك بمرور الوقت. يمكنك استخدام هذا الاستعلام للبحث عن حالة مهامك بمرور الوقت.

AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and ResultType != "started"
| summarize AggregatedValue = count() by ResultType, bin(TimeGenerated, 1h)

مخطط بياني سابق لحالة مهمة

ابحث عن سجلات الإبلاغ عن الأخطاء في مهام التنفيذ التلقائي.

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" 
| where StreamType_s == "Error" 
| project TimeGenerated, Category, JobId_g, OperationName, RunbookName_s, ResultDescription, _ResourceId 

البحث عن وظائف Azure Automation التي تم إكمالها

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and ResultType == "Completed" 
| project TimeGenerated, RunbookName_s, ResultType, _ResourceId, JobId_g

البحث عن مهام Azure Automation الفاشلة أو الموقوفة مؤقتا أو المتوقفة

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Stopped" or ResultType == "Suspended") 
| project TimeGenerated, RunbookName_s, ResultType, _ResourceId, JobId_g 

سرد جميع دفاتر التشغيل والمهام التي اكتملت بنجاح مع وجود أخطاء

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and StreamType_s == "Error" 
| project TimeGenerated, RunbookName_s, StreamType_s, _ResourceId, ResultDescription, JobId_g 

إرسال بريد إلكتروني عند فشل مهمة دفتر التشغيل أو تعليقها

توضح الخطوات التالية كيفية إعداد تنبيهات البريد الإلكتروني في Azure Monitor للإخطار عند حدوث خطأ ما في مهمة دفتر التشغيل.

لإنشاء قاعدة تنبيه، قم بإنشاء بحث سجل لسجلات مهام دفتر التشغيل التي يجب أن تستدعي التنبيه كما هو موضح في الاستعلام عن السجلات. انقر فوق قاعدة التنبيه +New لتكوين قاعدة التنبيه.

  1. في حساب Automation الخاص بك، ضمن Monitoring، حدد Logs.

  2. قم بإنشاء استعلام بحث سجل للتنبيه الخاص بك عن طريق إدخال معايير بحث في حقل الاستعلام.

    AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Suspended")   
    

    يمكنك أيضا التجميع حسب اسم دفتر التشغيل باستخدام:

    AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and     Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Suspended") | summarize AggregatedValue = count() by RunbookName_s 
    
  3. لفتح شاشة إنشاء قاعدة تنبيه، انقر فوق +قاعدة تنبيه جديدة في أعلى الصفحة. لمزيد من المعلومات حول خيارات تكوين التنبيهات، راجع تسجيل التنبيهات في Azure

سجلات التدقيق التشخيصي ل Azure Automation

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

الفرق بين سجلات النشاط وسجلات التدقيق

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

تسجل سجلات التدقيق لحسابات التنفيذ التلقائي اسم المورد ومعرفه مثل متغير الأتمتة وبيانات الاعتماد والاتصال وما إلى ذلك، جنبا إلى جنب مع نوع العملية التي يتم إجراؤها للمورد وسيقوم Azure Automation بمسح بعض التفاصيل مثل بيانات IP للعميل التي تتوافق مع توافق القانون العام لحماية البيانات (GDPR).

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

نماذج الاستعلامات لسجلات التدقيق

الاستعلام لعرض سجلات تدقيق موارد التنفيذ التلقائي

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" 

الاستعلام عن مراقبة أي تحديث متغير أو إنشاء عملية أو حذفها

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s == "Variable" 

الاستعلام عن مراقبة أي عملية لدفتر التشغيل مثل الإنشاء أو المسودة أو التحديث

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Runbook" 

الاستعلام عن مراقبة أي إنشاء شهادة أو تحديثها أو حذفها

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Certificate" 

الاستعلام عن مراقبة أي إنشاء لبيانات الاعتماد أو تحديثها أو حذفها

AzureDiagnostics 
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Credential" 

تصفية إخراج حالة المهمة المحولة إلى عنصر JSON

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

على سبيل المثال، ينسق دفتر التشغيل الخاصية ResultDescription في دفق الإخراج بتنسيق JSON مع حقول متعددة. للبحث عن حالة مهامك التي هي في حالة فشل كما هو محدد في حقل يسمى Status، استخدم مثال هذا الاستعلام للبحث عن ResultDescription مع حالة فشل:

AzureDiagnostics
| where Category == 'JobStreams'
| extend jsonResourceDescription = parse_json(ResultDescription)
| where jsonResourceDescription.Status == 'Failed'

تنسيق JSON لدفق المهام السابقة لدى

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