تحليل الاستخدام من خلال Application Insights

ما هي ميزات تطبيق الويب أو الجوال الأكثر شهرة؟ هل يحقق المستخدمون أهدافهم عن طريق استخدام تطبيقك؟ هل ينسحبون في نقاط معينة، وهل يعودون في وقت لاحق؟ {Application Insights} تساعدك في اكتساب رؤى قوية حول كيفية استخدام الأشخاص لتطبيقك. في كل مرة تقوم فيها بتحديث تطبيقك، بإمكانك تقييم مدى جودة عمله للمستخدمين. بفضل هذه المعرفة، يمكنك اتخاذ قرارات مستندة إلى البيانات بشأن دورات التطوير التالية.

إرسال التتبع عن بعد من التطبيق الخاص بك

يتم الحصول على أفضل تجربة من خلال تثبيت Application Insights سواء في رمز خادم التطبيق الخاص بك، وفي صفحات الويب الخاصة بك. ترسل مكونات العميل والخادم في التطبيق القياس عن بُعد مرة أخرى إلى مدخل Azure من أجل التحليل.

  1. رمز الخادم: تنزيل الوحدة النمطية المناسبة لتطبيق ASP.NET أو Azure أو Java أو Node.js أو أخر.

  2. التعليمات البرمجية لصفحة الويب: استخدم JavaScript SDK لجمع البيانات من صفحات الويب. راجع بدء استخدام JavaScript SDK.

    ملاحظة

    في 31 مارس 2025، سينتهي دعم استيعاب مفاتيح الأجهزة. سيستمر استيعاب مفتاح الأجهزة في العمل ولكننا لن نقوم بتوفير تحديثات أو أي دعم للميزة. الانتقال إلى سلاسل الاتصال للاستفادة من الإمكانات الجديدة.

    لمعرفة أكثر عن التكوينات المتقدمة لمراقبة مواقع الويب، راجع المقالة المرجعية JavaScript SDK.

  3. رمز تطبيق الأجهزة المحمولة: استخدم App Center SDK لجمع الأحداث من تطبيقك. ثم أرسل نسخًا من هذه الأحداث إلى Application Insights لتحليلها باتباع هذا الدليل.

  4. الحصول على بيانات تتبع الاستخدام: شغل مشروعك في وضع تتبع الأخطاء لبضع دقائق. ثم ابحث عن النتائج في جزء نظرة عامة في Application Insights.

    انشر التطبيق لمراقبة أداء التطبيق ومعرفة ما يفعله المستخدمون مع التطبيق الخاص بك.

اكتشف التركيبة السكانية وإحصاءات الاستخدام

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

يقوم تقرير المستخدمين والجلسات بتصفية بياناتك حسب الصفحات أو الأحداث المخصصة. تقوم التقارير بتقسيم البيانات حسب خصائص مثل الموقع والبيئة والصفحة. تستطيع أيضاً إضافة الفلاتر الخاصة بك.

لقطة شاشة تعرض علامة تبويب المستخدمون مع مخطط شريطي.

اInsights على اليمين تشير إلى أنماط مثيرة للاهتمام في مجموعة من البيانات.

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

لمزيد من المعلومات حول أدوات المستخدمين والجلسات والأحداث، راجع تحليل المستخدمين والجلسات والأحداث في Application Insights.

الاستبقاء: كم عدد المستخدمين الذين يعودون؟

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

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

لقطة شاشة تعرض مصنف الاحتفاظ، والذي يعرض معلومات حول عدد مرات عودة المستخدمين لاستخدام تطبيقاتهم.

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

لمزيد من المعلومات حول مصنف الاستبقاء، راجع تحليل استبقاء المستخدم لتطبيقات الويب باستخدام Application Insights.

أحداث تجارية مخصصة

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

يمكنك أيضا استخدام المكون الإضافي Click Analytics Autocollection لجمع الأحداث المخصصة.

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

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

من الممكن تسجيل الأحداث من جانب العميل من التطبيق:

      appInsights.trackEvent({name: "incrementCount"});

أو يمكن تسجيل الأحداث من جانب الخادم:

    var tc = new Microsoft.ApplicationInsights.TelemetryClient();
    tc.TrackEvent("CreatedAccount", new Dictionary<string,string> {"AccountType":account.Type}, null);
    ...
    tc.TrackEvent("AddedItemToCart", new Dictionary<string,string> {"Item":item.Name}, null);
    ...
    tc.TrackEvent("CompletedPurchase");

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

قم بالتعرف على المزيد حول أحداث custom والخبراء.

أحداث الشرائح والنرد

في أدوات المستخدمين والجلسات والأحداث، تستطيع تقسيم الأحداث المخصصة والزهر حسب المستخدم واسم الحدث والخصائص.

لقطة شاشة تعرض علامة تبويب الأحداث التي تمت تصفيتها بواسطة AnalyticsItemsOperation ومقسمة حسب AppID.

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

لقطة شاشة لجزء Application Insights Session في Azure-Portal. يتم تمييز أيقونة فتح آخر استعلام تشغيل.

يمكنك بعد ذلك تعديل الاستعلام الأساسي للحصول على نوع المعلومات التي تبحث عنها.

فيما يلي مثال على استعلام أساسي حول طرق عرض الصفحة. انتقل إلى الأمام والصقه مباشرة في محرر الاستعلام لاختباره.

// average pageView duration by name
let timeGrain=5m;
let dataset=pageViews
// additional filters can be applied here
| where timestamp > ago(1d)
| where client_Type == "Browser" ;
// calculate average pageView duration for all pageViews
dataset
| summarize avg(duration) by bin(timestamp, timeGrain)
| extend pageView='Overall'
// render result in a chart
| render timechart

تصميم التتبع عن بُعد مع التطبيق

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

اختبار A | B

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

في هذه التقنية، يمكنك إرفاق قيم خصائص فريدة لجميع بيانات تتبع الاستخدام المرسلة من قبل كل إصدار من تطبيقك. يمكنك القيام بذلك عن طريق تعريف الخصائص في TelemetryContext النشط. يتم تضمين هذه الخصائص الافتراضية في كل رسالة بيانات تتبع الاستخدام يرسلها التطبيق. يتضمن كلا من الرسائل المخصصة وبيانات تتبع الاستخدام القياسية.

في مدخل Application Insights، قم بتصفية بياناتك وتقسيمها على قيم الخصائص، لتتمكن من مقارنة الإصدارات المختلفة.

للقيام بتلك الخطوة، قم بإعداد مُهيئ القياس عن بُعد:

    // Telemetry initializer class
    public class MyTelemetryInitializer : ITelemetryInitializer
    {
        // In this example, to differentiate versions, we use the value specified in the AssemblyInfo.cs
        // for ASP.NET apps, or in your project file (.csproj) for the ASP.NET Core apps. Make sure that
        // you set a different assembly version when you deploy your application for A/B testing.
        static readonly string _version = 
            System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
            
        public void Initialize(ITelemetry item)
        {
            item.Context.Component.Version = _version;
        }
    }

بالنسبة للتطبيقات ASP.NET Core، أضف مهيئ بيانات تتبع الاستخدام جديد إلى مجموعة خدمة حقن التبعية في Program.cs الفئة .

using Microsoft.ApplicationInsights.Extensibility;

builder.Services.AddSingleton<ITelemetryInitializer, MyTelemetryInitializer>();

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