استخدام Stream Analytics لمعالجة البيانات المصدرة من Application Insights
Azure Stream Analytics هي الأداة المثالية لمعالجة البيانات المصدرة من Application Insights. يمكن لـStream Analytics سحب البيانات من مجموعة متنوعة من المصادر. يمكن تحويل البيانات وترشيحها، ومن ثم توجيهها إلى مجموعة متنوعة من المصارف.
في هذا المثال، سنقوم بإنشاء محول يأخذ البيانات من Application Insights باستخدام التصدير المستمر وإعادة تسمية بعض الحقول ومعالجتها، وتوجيهها إلى Power BI.
تحذير
هناك طرق أفضل وأسهل بكثير الموصى بها لعرض Application Insights data في Power BI. المسار الموضح هنا هو مجرد مثال لتوضيح كيفية معالجة البيانات المصدرة.
هام
تم إهمال التصدير المستمر وهو معتمد فقط لموارد Application Insights الكلاسيكية. ترحيل إلى مورد Application Insights القائم على مساحة العمل لاستخدام الإعدادات التشخيصية لتصدير بيانات تتبع الاستخدام.

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

إنشاء حاوية

نسخ مفتاح اختصار موقع التخزين
ستحتاج إليه قريبًا لإعداد المدخلات في خدمة تحليلات البث.

بدء التصدير المستمر إلى Azure Storage
ينقل التصدير المستمر البيانات من Application Insights إلى تخزين Azure.
في مدخل Microsoft Azure، استعرض للوصول إلى مورد Application Insights الذي قمت بإنشائه للتطبيق الخاص بك.

إنشاء تصدير مستمر.

حدد حساب التخزين الذي أنشأته.

تعيين أنواع الأحداث التي تريد مشاهدتها:

دع بعض البيانات تتراكم. استرخ والسماح للناس استخدام التطبيق الخاص بك لفترة من الوقت. ستأتي بيانات تتبع الاستخدام وسوف ترى المخططات الإحصائية في المستكشف المتري والأحداث الفردية في البحث التشخيصي.
وأيضًا، سوف يتم تصدير البيانات إلى موقع التخزين الخاص بك.
فحص البيانات المصدرة. في Visual Studio، اختر «View / Cloud Explorer»، و»open Azure / Storage». (في حال لم يكن لديك خيار القائمة، فسوف تحتاج إلى تثبيت SDK Azure: افتح مربع الحوار «New Project» وافتح «Visual C# / Cloud / Get Microsoft Azure SDK for .NET)»

دوّن جزءًا مشتركًا من اسم المسار، الُمشتق من اسم التطبيق ومفتاح خاص بتقرير عن حالة النظام.
تتم كتابة الأحداث إلى ملفات blob بتنسيق JSON. قد يحتوي كل ملف على حدث واحد أو أكثر. لذلك نود قراءة بيانات الحدث وترشيح الحقول التي نريدها. جميع أنواع الأشياء التي يمكننا القيام بها مع البيانات، ولكن خطتنا اليوم هي استخدام Stream Analytics لتوجيه البيانات إلى Power BI.
إنشاء مثيل Azure Stream Analytics
من مدخل Microsoft Azure، حدد خدمة Azure Stream Analytics، وأنشئ وظيفة Stream Analytics جديدة:


بمجرد إنشاء المورد، حدد انتقال إلى المورد.

إضافة إدخال جديد

اضبطه لأخذ مدخلات من ملف البيانات الثنائية الكبيرة للتصدير المستمر:

ستحتاج الآن إلى مفتاح الوصول الأساسي من حساب التخزين، الذي لاحظته سابقًا. تعيين هذا كمفتاح حساب التخزين.
تعيين نمط بادئة المسار
تأكد من «set» صيغة التاريخ إلى يوم- شهر- عام (مع شرطات).
يحدد نمط بادئة المسار المكان الذي يعثر فيه Stream Analytics على ملفات الإدخال في التخزين. تحتاج إلى تعيينها لتتوافق مع كيفية تخزين "Continuous Export" للبيانات. تعيينها كما يلي:
webapplication27_12345678123412341234123456789abcdef0/PageViews/{date}/{time}
في هذا المثال:
webapplication27اسم مورد Application Insights بأحرف صغيرة.1234...هو مفتاح تقرير عن حالة النظام من مورد Application Insights، حذف الشرطات .PageViewsهو نوع البيانات التي تريد تحليلها. تعتمد الأنواع المتوفرة على عامل التصفية الذي قمت بتعيينه في "Continuous Export.". فحص البيانات المصدرة للاطلاع على الأنواع الأخرى المتوفرة، وراجع نموذج بيانات التصدير./{date}/{time}هو النمط المكتوب حرفيًا.
ملاحظة
فحص التخزين للتأكد من الحصول على المسار الصحيح.
«Add» إخراج جديد
الآن حدد وظيفتك >المخرجاتإضافة>.


وفر حساب العمل أو المدرسة لتفويض Stream Analytics بالوصول إلى مورد Power BI. ثم اخترع اسما للمخرجات، ولمجموعة بيانات Power BI المستهدفة وجدولها.
تعيين الاستعلام
الاستعلام يحكم الترجمة من الإدخال إلى الإخراج.
استخدم دالة الاختبار للتحقق من حصولك على الإخراج الصحيح. امنحه عينة البيانات التي أخذتها من صفحة المدخلات.
الاستعلام لعرض عدد الأحداث
لصق هذا الاستعلام:
SELECT
flat.ArrayValue.name,
count(*)
INTO
[pbi-output]
FROM
[export-input] A
OUTER APPLY GetElements(A.[event]) as flat
GROUP BY TumblingWindow(minute, 1), flat.ArrayValue.name
- export-input هو الاسم المستعار الذي أعطيناه لإدخال التدفق
- pbi-output هو الاسم المستعار للإخراج الذي حددناه
- نحن نستخدم "OUTER APPLY GetElements" لأن اسم الحدث في صفيف a nested JSON. ثم يختار اسم الحدث، مع عدد المثيلات التي تحمل هذا الاسم في الفترة الزمنية. يُجمع شرط«Group By» العناصر في فترات زمنية تبلغ دقيقة واحدة.
الاستعلام عن عرض قيم القياس.
SELECT
A.context.data.eventtime,
avg(CASE WHEN flat.arrayvalue.myMetric.value IS NULL THEN 0 ELSE flat.arrayvalue.myMetric.value END) as myValue
INTO
[pbi-output]
FROM
[export-input] A
OUTER APPLY GetElements(A.context.custom.metrics) as flat
GROUP BY TumblingWindow(minute, 1), A.context.data.eventtime
- يدعم هذا الاستعلام بيانات تتبع الاستخدام عن بعد للمقاييس للحصول على وقت الحدث والقيمة المترية. قيم القياس داخل صفيف، لذلك نحن نستخدم نمط OUTER APPLY GetElements لاستخراج الصفوف. "myMetric" هو اسم القياس في هذه الحالة.
الاستعلام لتضمين قيم خصائص البعد
WITH flat AS (
SELECT
MySource.context.data.eventTime as eventTime,
InstanceId = MyDimension.ArrayValue.InstanceId.value,
BusinessUnitId = MyDimension.ArrayValue.BusinessUnitId.value
FROM MySource
OUTER APPLY GetArrayElements(MySource.context.custom.dimensions) MyDimension
)
SELECT
eventTime,
InstanceId,
BusinessUnitId
INTO AIOutput
FROM flat
- يتضمن هذا الاستعلام قيم خصائص البعد دون الاعتماد على بعد معين في فهرس ثابت في صفيف الأبعاد.
تشغيل المهمة
يمكنك تحديد التاريخ في الماضي لبدء المهمة.

انتظر حتى يتم تشغيل المهمة.
شاهد النتائج في Power BI
تحذير
هناك طرق أفضل وأسهل بكثير الموصى بها لعرض Application Insights data في Power BI. المسار الموضح هنا هو مجرد مثال لتوضيح كيفية معالجة البيانات المصدرة.
افتح Power BI باستخدام حساب العمل أو المدرسة، وحدد «select» مجموعة البيانات والجدول المعرفين بأنهم إخراج مهمة Stream Analytics.

الآن يمكنك استخدام مجموعة البيانات في التقارير ولوحات المعلومات في Power BI.

ألا توجد بيانات أخرى؟
- تحقق من أنك تقومبـ«set» صيغة التاريخ بشكل صحيح إلى يوم- شهر- عام (مع شرطات).