جمع البيانات والاحتفاظ بها وتخزينها في تطبيق Application Insights

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

أولاً، الإجابة المختصرة هي:

  • من غير المحتمل أن ترسل وحدات بيانات تتبع الاستخدام القياسية التي تعمل "خارج النطاق" بيانات حساسة إلى الخدمة. يهتم بيانات تتبع الاستخدام بمقاييس التحميل والأداء والاستخدام وتقارير الاستثناء وبيانات التشخيص الأخرى. بيانات المستخدم الرئيسية المرئية في تقارير التشخيص هي عناوين URL. ولكن لا ينبغي لتطبيقك، على أي حال، وضع البيانات الحساسة في نص عادي في عنوان URL.
  • يمكنك كتابة التعليمات البرمجية التي ترسل المزيد من تتبع القياس المخصص لمساعدتك في التشخيص ومراقبة الاستخدام. (هذه القابلية للتوسعة هي ميزة كبيرة من لتطبيق Application Insights). قد يكون من الممكن، عن طريق الخطأ، كتابة هذه التعليمات البرمجية بحيث تتضمن بيانات شخصية وبيانات حساسة أخرى. إذا كان التطبيق الخاص بك يعمل مع هذه البيانات، يجب تطبيق عملية مراجعة شاملة على جميع التعليمات البرمجية التي تكتبها.
  • أثناء تطوير تطبيقك واختباره، من السهل فحص ما يتم إرساله بواسطة SDK. تظهر البيانات في نوافذ إخراج تصحيح الأخطاء من بيئة التطوير المتكامل "IDE" والمستعرض.
  • يمكنك تحديد الموقع عند إنشاء مورد تطبيق Application Insights جديد. لمزيد من المعلومات حول توفر Application Insights لكل منطقة، راجع المنتجات المتوفرة حسب المنطقة.
  • راجع البيانات التي تم جمعها لأنها قد تتضمن بيانات مسموح بها في بعض الظروف ولكن ليس غيرها. ومن الأمثلة الجيدة على هذا الظرف اسم الجهاز. لا يؤثر اسم الجهاز من الخادم على الخصوصية وهو مفيد. قد يكون لاسم الجهاز من هاتف أو كمبيوتر محمول آثار على الخصوصية ويكون أقل فائدة. ستجمع SDK التي تم تطويرها بشكل أساسي للخوادم المستهدفة اسم الجهاز بشكل افتراضي. قد تحتاج هذه الإمكانية إلى الكتابة فوقها في كل من الأحداث العادية والاستثناءات.

تتناول بقية هذه المقالة هذه النقاط بشكل كامل. المقالة قائمة بذاتها، حتى تتمكن من مشاركتها مع الزملاء الذين ليسوا جزءا من فريقك المباشر.

ما Application Insights؟

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

للحصول على هذه الوظيفة، يمكنك تثبيت Application Insights SDK في التطبيق الخاص بك، والذي يصبح جزءا من التعليمات البرمجية الخاصة به. عند تشغيل تطبيقك، تراقب SDK عملها وترسل بيانات تتبع الاستخدام إلى مساحة عمل Application Insights Log Analytics، وهي خدمة سحابية تستضيفها Microsoft Azure. يعمل Application Insights أيضا مع أي تطبيقات، وليس فقط التطبيقات المستضافة في Azure.

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

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

تتوفر Application Insights SDKs لمجموعة من أنواع التطبيقات:

  • خدمات الويب المستضافة في خوادم Java EE أو ASP.NET الخاصة بك، أو في Azure
  • عملاء الويب، أي التعليمات البرمجية التي تعمل في صفحة ويب
  • تطبيقات وخدمات سطح المكتب
  • تطبيقات الأجهزة مثل Windows Phone وiOS وAndroid

جميعهم يرسلون بيانات تتبع الاستخدام لنفس الخدمة.

ملاحظة

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

ما هي البيانات التي تجمعها؟

هناك ثلاثة مصادر للبيانات:

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

    • يحتوي كل SDK على العديد من الوحدات النمطية، والتي تستخدم تقنيات مختلفة لتجميع أنواع مختلفة من القياس عن بُعد.
    • إذا قمت بتثبيت SDK قيد التطوير، يمكنك استخدام واجهة برمجة التطبيقات الخاصة به لإرسال بيانات تتبع الاستخدام الخاص بك، بالإضافة إلى الوحدات النمطية القياسية. يمكن أن تتضمن بيانات تتبع الاستخدام المخصصة هذه أي بيانات تريد إرسالها.
  • في بعض خوادم الويب، هناك أيضاً وكلاء يعملون جنباً إلى جنب مع التطبيق ويرسلون بيانات تتبع الاستخدام حول وحدة المعالجة المركزية والذاكرة وشغل الشبكة. على سبيل المثال، يمكن أن يكون لدى الأجهزة الظاهرية لـ Azure ومضيفي Docker وخوادم تطبيقات Java مثل هؤلاء الوكلاء.

  • نظرة عامة على التوفر هي العمليات التي تقوم Microsoft بتشغيلها والتي ترسل طلبات إلى تطبيق الويب الخاص بك على فترات منتظمة. يتم إرسال النتائج إلى Application Insights.

ما نوع البيانات التي يتم جمعها؟

الفئات الرئيسية هي:

  • بيانات تتبع الاستخدام لخادم الويب: طلبات HTTP. URI، والوقت المستغرق لمعالجة الطلب، ورمز الاستجابة، وعنوان IP للعميل. Session id.
  • صفحات الويب: عدد الصفحات والمستخدم وجلسات العمل. أوقات تحميل الصفحة. الاستثناءات. مكالمات Ajax.
  • عدادات الأداء: الذاكرة ووحدة المعالجة المركزية وIO وإشغال الشبكة.
  • سياق العميل والخادم: نظام التشغيل واللغة ونوع الجهاز والمستعرض ودقة الشاشة.
  • الاستثناءات والتعطل: تفريغ المكدس ونوع build idوحدة المعالجة المركزية.
  • التبعيات: الاستدعاءات إلى الخدمات الخارجية مثل REST وSQL وJAX. URI أو سلسلة الاتصال والمدة والنجاح والأمر.
  • اختبارات التوفر: مدة الاختبار والخطوات والاستجابات.
  • تتبع السجلات وبيانات تتبع الاستخدام المخصصة: أي شيء تقوم ببرمجته في سجلاتك أو بيانات تتبع الاستخدام.

لمزيد من المعلومات، راجع القسم البيانات المرسلة بواسطة Application Insights.

كيف يمكنني التحقق مما يتم جمعه؟

إذا كنت تقوم بتطوير تطبيق باستخدام Visual Studio، فقم بتشغيل التطبيق في وضع التصحيح (F5). تظهر بيانات تتبع الاستخدام في نافذة الإخراج . من هناك، يمكنك نسخها وتنسيقها على أنها JSON للفحص السهل.

لقطة شاشة تظهر تشغيل تطبيقك في وضع تتبع الأخطاء في Visual Studio.

هناك أيضا طريقة عرض أكثر قابلية للقراءة في نافذة التشخيص .

بالنسبة لصفحات الويب، افتح نافذة تصحيح الأخطاء في المستعرض. حدد F12 وافتح علامة التبويب الشبكة .

لقطة شاشة تعرض علامة تبويب الشبكة المفتوحة.

هل يمكنني كتابة التعليمات البرمجية لتصفية بيانات تتبع الاستخدام قبل إرسالها؟

ستحتاج إلى كتابة مكون إضافي لمعالج بيانات تتبع الاستخدام.

كم تبقى البيانات؟

يتم الاحتفاظ بنقاط البيانات الأولية (أي العناصر التي يمكنك الاستعلام عنها في Analytics وفحصها في البحث) لمدة تصل إلى 730 يوماً. يمكنك تحديد مدة استبقاء من 30 أو 60 أو 90 أو 120 أو 180 أو 270 أو 365 أو 550 أو 730 يوما. إذا كنت بحاجة إلى الاحتفاظ بالبيانات لمدة أطول من 730 يوما، يمكنك استخدام إعدادات التشخيص.

تتحمل البيانات التي يتم الاحتفاظ بها لمدة أطول من 90 يوما رسوما إضافية. لمزيد من المعلومات حول تسعير Application Insights، راجع صفحة تسعير Azure Monitor.

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

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

من يمكنه الوصول إلى البيانات؟

البيانات مرئية لك ولأعضاء فريقك، إذا كان لديك حساب مؤسسة.

يمكن تصديرها من قِبلك أنت وأعضاء فريقك ويمكن نسخها إلى مواقع أخرى وتمريرها إلى أشخاص آخرين.

ماذا تفعل Microsoft بالمعلومات التي يرسلها تطبيقي إلى Application Insights؟

تستخدم Microsoft البيانات فقط لتوفير الخدمة لك.

أين يتم الاحتفاظ بالبيانات؟

يمكنك تحديد الموقع عند إنشاء مورد تطبيق Application Insights جديد. لمزيد من المعلومات حول توفر Application Insights، راجع المنتجات المتوفرة حسب المنطقة.

ما مدى أمان بياناتي؟

Application Insights هي خدمة Azure. يتم وصف نهج الأمان في مستند أمان Azure والخصوصية والامتثال.

يتم تخزين البيانات في خوادم Microsoft Azure. بالنسبة للحسابات في مدخل Azure، يتم وصف قيود الحساب في مستند أمان Azure والخصوصية والامتثال.

الوصول إلى بياناتك من قِبل موظفي Microsoft مُقيد. نحن نوصول إلى بياناتك فقط بإذن منك وإذا كان من الضروري دعم استخدامك ل Application Insights.

يتم استخدام البيانات بشكل مجمع عبر جميع تطبيقات عملائنا، مثل معدلات البيانات ومتوسط حجم التتبعات، لتحسين Application Insights.

هل يمكن أن تتداخل بيانات تتبع الاستخدام لشخص آخر مع بيانات Application Insights الخاصة بي؟

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

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

هل البيانات مشفرة؟

يتم تشفير جميع البيانات في حالة الثبات ومع انتقالها بين مراكز البيانات.

هل البيانات مشفرة أثناء النقل من تطبيقي إلى خوادم Application Insights؟

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

هل يقوم SDK بإنشاء تخزين محلي مؤقت؟

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

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

Java

يتم استخدام المجلد C:\Users\username\AppData\Local\Temp للبيانات المستمرة. هذا الموقع غير قابل للتكوين من دليل التكوين، وتقتصر أذونات الوصول إلى هذا المجلد على المستخدم المحدد الذي يحتوي على بيانات الاعتماد المطلوبة. لمزيد من المعلومات، راجع التنفيذ.

.NET

بشكل افتراضي، ServerTelemetryChannel يستخدم مجلد %localAppData%\Microsoft\ApplicationInsights بيانات التطبيق المحلي للمستخدم الحالي أو المجلد %TMP%المؤقت . لمزيد من المعلومات، راجع التنفيذ.

عبر ملف التكوين:

<TelemetryChannel Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.ServerTelemetryChannel,   Microsoft.AI.ServerTelemetryChannel">
    <StorageFolder>D:\NewTestFolder</StorageFolder>
</TelemetryChannel>

عبر التعليمة البرمجية:

  • إزالة ServerTelemetryChannel من ملف التكوين.

  • أضف القصاصة البرمجية هذه إلى التكوين:

    ServerTelemetryChannel channel = new ServerTelemetryChannel();
    channel.StorageFolder = @"D:\NewTestFolder";
    channel.Initialize(TelemetryConfiguration.Active);
    TelemetryConfiguration.Active.TelemetryChannel = channel;
    

NetCore

بشكل افتراضي، ServerTelemetryChannel يستخدم مجلد %localAppData%\Microsoft\ApplicationInsights بيانات التطبيق المحلي للمستخدم الحالي أو المجلد %TMP%المؤقت . لمزيد من المعلومات، راجع التنفيذ.

في بيئة Linux، سيتم تعطيل التخزين المحلي ما لم يتم تحديد مجلد تخزين.

ملاحظة

مع الإصدار 2.15.0-beta3 والإصدارات الأحدث، يتم الآن إنشاء التخزين المحلي تلقائيا لنظام التشغيل Linux وMac وWindows. بالنسبة للأنظمة غير التي تعمل بنظام Windows، ستقوم SDK تلقائيا بإنشاء مجلد تخزين محلي استنادا إلى المنطق التالي:

  • ${TMPDIR}: إذا ${TMPDIR} تم تعيين متغير البيئة، يتم استخدام هذا الموقع.
  • /var/tmp: إذا لم يكن الموقع السابق موجودا، فإننا نحاول /var/tmp.
  • /tmp: إذا لم يكن الموقعان السابقان موجودين، فإننا نحاول tmp.
  • إذا لم يكن أي من هذه المواقع موجودا، فلن يتم إنشاء التخزين المحلي ولا يزال التكوين اليدوي مطلوبا.

للحصول على تفاصيل التنفيذ الكامل، راجع ServerTelemetryChannel يخزن بيانات تتبع الاستخدام في المجلد الافتراضي أثناء الأخطاء العابرة في بيئات غير Windows.

توضح قصاصة التعليمات البرمجية التالية كيفية تعيين ServerTelemetryChannel.StorageFolder في الأسلوب ConfigureServices() للفئة Startup.cs:

services.AddSingleton(typeof(ITelemetryChannel), new ServerTelemetryChannel () {StorageFolder = "/tmp/myfolder"});

لمزيد من المعلومات، راجع التكوين المخصص AspNetCore.

Node.js

بشكل افتراضي، %TEMP%/appInsights-node{INSTRUMENTATION KEY} يستخدم للبيانات المستمرة. تقتصر أذونات الوصول إلى هذا المجلد على المستخدم والمسؤولين الحاليين. لمزيد من المعلومات، راجع التنفيذ.

يمكن تجاوز بادئة المجلد appInsights-node عن طريق تغيير قيمة وقت التشغيل للمتغير الثابت Sender.TEMPDIR_PREFIX الموجود في Sender.ts.

JavaScript (مستعرض)

يتم استخدام تخزين جلسة HTML5 للبيانات الدائمة. يتم استخدام اثنين من المخازن المؤقتة المنفصلة: AI_buffer وAI_sent_buffer. يتم تخزين بيانات تتبع الاستخدام المجمعة والمنتظرة لإرسالها في AI_buffer. يتم وضع بيانات تتبع الاستخدام التي تم إرسالها للتو في AI_sent_buffer حتى يستجيب خادم الاستيعاب الذي تم استلامه بنجاح.

عند تلقي بيانات تتبع الاستخدام بنجاح، تتم إزالتها من جميع المخازن المؤقتة. في حالات الفشل العابرة (على سبيل المثال، يفقد المستخدم اتصال الشبكة)، يظل القياس عن بعد في AI_buffer حتى يتم تلقيه بنجاح أو يستجيب خادم الاستيعاب بأن بيانات تتبع الاستخدام غير صالحة (مخطط سيئ أو قديم جدا، على سبيل المثال).

يمكن تعطيل المخازن المؤقتة لبيانات تتبع الاستخدام عن طريق تعيين enableSessionStorageBuffer إلى false. عند إيقاف تشغيل تخزين جلسة العمل، يتم استخدام صفيف محلي بدلاً من ذلك كمخزن دائم. نظراً لأن JavaScript SDK يعمل على جهاز عميل، يمكن للمستخدم الوصول إلى موقع التخزين هذا عبر أدوات مطوري المستعرض.

OpenCensus Python

بشكل افتراضي، يستخدم OpenCensus Python SDK مجلد %username%/.opencensus/.azure/المستخدم الحالي . تقتصر أذونات الوصول إلى هذا المجلد على المستخدم والمسؤولين الحاليين. لمزيد من المعلومات، راجع التنفيذ. ستتم تسمية المجلد الذي يحتوي على بياناتك المستمرة باسم ملف Python الذي أنشأ بيانات تتبع الاستخدام.

يمكنك تغيير موقع ملف التخزين الخاص بك عن طريق تمرير المعلمة storage_path في الدالة الإنشائية للمصدر الذي تستخدمه.

AzureLogHandler(
  connection_string='InstrumentationKey=00000000-0000-0000-0000-000000000000',
  storage_path='<your-path-here>',
)

كيف يمكنني إرسال البيانات إلى تطبيق Application Insights باستخدام TLS 1.2؟

لضمان أمان البيانات التي يتم نقلها إلى نقاط نهاية Application Insights، نشجع العملاء بشدة على تكوين تطبيقاتهم لاستخدام طبقة النقل الآمنة (TLS) 1.2 على الأقل. تم العثور على الإصدارات القديمة من طبقة مآخذ توصيل آمنة (TLS)/ بروتوكول أمان طبقة النقل (SSL) لتكون عرضةً للخطر. على الرغم من أنها لا تزال تعمل حاليا للسماح بالتوافق مع الإصدارات السابقة، إلا أنها غير مستحسنة. تتحرك الصناعة بسرعة للتخلي عن دعم هذه البروتوكولات القديمة.

لقد حدد PCI Security Standards Council تاريخ 30 يونيو 2018 كموعد نهائي لتعطيل الإصدارات القديمة من TLS/SSL والترقية إلى بروتوكولات أكثر أماناً. بعد أن يسقط Azure الدعم القديم، إذا تعذر على التطبيق أو العملاء الاتصال عبر TLS 1.2 على الأقل، فلن تتمكن من إرسال البيانات إلى Application Insights. سيختلف النهج الذي تتبعه لاختبار دعم TLS للتطبيق والتحقق من صحته وفقا لنظام التشغيل أو النظام الأساسي واللغة أو إطار العمل الذي يستخدمه التطبيق الخاص بك.

لا نوصي بتعيين تطبيقك بشكل صريح لاستخدام TLS 1.2 فقط، ما لم يكن ذلك ضروريا. يمكن أن يكسر هذا الإعداد ميزات الأمان على مستوى النظام الأساسي التي تسمح لك بالكشف التلقائي عن البروتوكولات الأحدث والأكثر أمانا والاستفادة منها عند توفرها، مثل TLS 1.3. نوصي بإجراء تدقيق شامل للتعليمات البرمجية للتطبيق الخاص بك للتحقق من الترميز الثابت لإصدارات TLS/SSL معينة.

إرشادات خاصة بالنظام الأساسي/اللغة

النظام الأساسي / اللغة الدعم مزيد من المعلومات
خدمة تطبيق Azure مدعوم، قد يكون التكوين مطلوبا. تم الإعلان عن الدعم في أبريل 2018. اقرأ الإعلان للحصول على تفاصيل التكوين.
تطبيقات وظيفة Azure مدعوم، قد يكون التكوين مطلوبا. تم الإعلان عن الدعم في أبريل 2018. اقرأ الإعلان للحصول على تفاصيل التكوين.
.NET دعم مدعوم وطويل الأجل (LTS). للحصول على معلومات التكوين التفصيلية، راجع هذه التعليمات.
Application Insights Agent مطلوب تكوين مدعوم. يعتمد Application Insights Agent على تكوين + نظام التشغيل.NET Configuration لدعم TLS 1.2.
Node.js مدعوم، في الإصدار 10.5.0، قد يكون التكوين مطلوبا. استخدم وثائق Node.js TLS/SSL الرسمية لأي تكوين خاص بالتطبيق.
Java مدعوماً، تمت إضافة دعم JDK لـ TLS 1.2 في JDK 6 التحديث 121 وJDK 7. يستخدم JDK 8 الإصدار TLS 1.2 افتراضياً.
Linux تميل توزيعات Linux إلى الاعتماد على OpenSSL لدعم TLS 1.2. تحقق من OpenSSL Changelog للتأكد من دعم إصدار OpenSSL.
Windows 8.0 - 10 مدعوم ومُمَّكن بشكل افتراضي. للتأكد من أنك لا تزال تستخدم الإعدادات الافتراضية.
Windows Server 2012 - 2016 مدعوم ومُمَّكن بشكل افتراضي. للتأكد من أنك لا تزال تستخدم الإعدادات الافتراضية.
Windows 7 SP1 وWindows Server 2008 R2 SP1 مدعوم، ولكن غير مُمَّكن بشكل افتراضي. راجع صفحة إعدادات تسجيل بروتوكول أمان طبقة النقل (TLS) للحصول على تفاصيل حول كيفية التمكين.
Windows Server 2008 SP2 يتطلب دعم TLS 1.2 تحديثاً. راجع التحديث لإضافة دعم لـ TLS 1.2 في Windows Server 2008 SP2.
Windows Vista غير مدعومة. غير متوفر

تحقق من إصدار OpenSSL الذي يعمل به توزيع Linux

للتحقق من إصدار OpenSSL الذي قمت بتثبيته، افتح المحطة الطرفية ثم قم بتشغيل:

openssl version -a

تشغيل اختبار عملية TLS 1.2 على Linux

لتشغيل اختبار أولي لمعرفة ما إذا كان نظام Linux الخاص بك يمكنه الاتصال عبر TLS 1.2، افتح المحطة الطرفية وقم بتشغيل:

openssl s_client -connect bing.com:443 -tls1_2

البيانات الشخصية المخزنة في تطبيق Application Insights

للحصول على مناقشة متعمقة حول هذه المشكلة، راجع إدارة البيانات الشخصية في Log Analytics وApplication Insights.

هل يمكن للمستخدمين إيقاف تشغيل Application Insights؟

ليس مباشرةً. لا نوفر مفتاحاً يمكن للمستخدمين تشغيله لإيقاف تشغيل تطبيق Application Insights.

يمكنك تنفيذ مثل هذه الميزة في التطبيق الخاص بك. تتضمن جميع عدة تطوير البرامج SDKs إعداد واجهة برمجة التطبيقات الذي يقوم بإيقاف تشغيل مجموعة بيانات تتبع الاستخدام.

البيانات المرسلة من قِبل Application Insights

تختلف عدة تطوير البرامج SDKs بين الأنظمة الأساسية، وهناك العديد من المكونات التي يمكنك تثبيتها. لمزيد من المعلومات، راجع نظرة عامة على Application Insights. يرسل كل مكون بيانات مختلفة.

فئات البيانات المرسلة في سيناريوهات مختلفة

الإجراء الخاص بك فئات البيانات التي تم تجميعها (انظر الجدول التالي)
إضافة Application Insights SDK إلى مشروع ويب .NET ServerContext
الاستدلال
عدادات Perf
الطلبات
استثناءات
"Session"
المستخدمون
تثبيت Application Insights Agent على IIS التبعيات
ServerContext
الاستدلال
عدادات Perf
إضافة Application Insights SDK إلى تطبيق ويب Java ServerContext
الاستدلال
طلب
"Session"
المستخدمون
إضافة JavaScript SDK إلى صفحة الويب ClientContext
الاستدلال
الصفحة
ClientPerf
Ajax
تعريف الخصائص الافتراضية خصائص على جميع الأحداث القياسية والمُخصصة
اتصال TrackMetric القيم الرقمية
الخصائص
مسار الاتصال* اسم الحدث
الخصائص
اتصال TrackException استثناءات
نسخة احتياطية لمكدس الذاكرة المؤقتة
الخصائص
لا يمكن لـ SDK جمع البيانات. على سبيل المثال:
- لا يمكن الوصول إلى عدادات perf
- استثناء في مهيئ بيانات تتبع الاستخدام
تشخيصات SDK

للحصول على SDKs للمنصات الأخرى، راجع مستنداتها.

فئات البيانات المجمعة

فئة البيانات المجمعة يتضمن (ليست قائمة شاملة)
الخصائص أي بيانات - يتم تحديدها بواسطة التعليمة البرمجية الخاصة بك
DeviceContext Id، IP، الإعدادات المحلية، طراز الجهاز، شبكة الاتصال، نوع الشبكة، اسم OEM، دقة الشاشة، مثيل الدور، اسم الدور، نوع الجهاز
ClientContext نظام التشغيل، الإعدادات المحلية، اللغة، الشبكة، دقة النافذة
"Session" session id
ServerContext اسم الجهاز، الإعدادات المحلية، نظام التشغيل، الجهاز، جلسة عمل المستخدم، سياق المستخدم، العملية
الاستدلال الموقع الجغرافي من عنوان IP والطوابع الزمنية ونظام التشغيل والمستعرض
المقاييس اسم القياس وقيمته
الأحداث اسم الحدث وقيمته
PageViews عنوان URL واسم الصفحة أو اسم الشاشة
عميل perf عنوان URL/ اسم الصفحة، وقت تحميل المستعرض
Ajax استدعاءات HTTP من صفحة الويب إلى الخادم
الطلبات عنوان URL، المدة، رمز الاستجابة
التبعيات النوع (SQL أو HTTP أو ...) أو سلسلة الاتصال أو URI أو المزامنة/غير المتزامنة أو المدة أو النجاح أو عبارة SQL (باستخدام Application Insights Agent)
استثناءات النوع، الرسالة، مكدسات المكالمات، الملف المصدر، رقم السطر، thread id
التعطل Process id، parent process id، crash thread id؛ تصحيح التطبيق، id، وتحديث الإصدار؛ ونوع الاستثناء، والعنوان، والسبب؛ رموز وسجلات مشوشة، وعناوين ثنائية البداية والنهاية، اسم ثنائي ومسار، نوع وحدة المعالجة المركزية
تتبع مستوى الرسالة والأهمية
عدادات Perf وقت المعالج، الذاكرة المتوفرة، معدل الطلب، معدل الاستثناء، وحدات البايت الخاصة للعملية، معدل IO، مدة الطلب، طول قائمة انتظار الطلب
التوفر رمز استجابة اختبار الويب، مدة كل خطوة اختبار، واسم الاختبار، والطابع الزمني، والنجاح، ووقت الاستجابة وموقع الاختبار
تشخيصات SDK تتبع الرسالة أو الاستثناء

يمكنك إيقاف تشغيل بعض البيانات عن طريق تحرير ApplicationInsights.config.

ملاحظة

يتم استخدام IP العميل للاستدلال على الموقع الجغرافي، ولكن بشكل افتراضي لم يعد يتم تخزين بيانات IP وتتم كتابة جميع الأصفار إلى الحقل المقترن. لفهم المزيد حول معالجة البيانات الشخصية، راجع إدارة البيانات الشخصية في Log Analytics وApplication Insights. إذا كنت بحاجة إلى تخزين بيانات عنوان IP، فسيرشدك تحديد الموقع الجغرافي ومعالجة عنوان IP عبر خياراتك.

هل يمكنني تعديل البيانات أو تحديثها بعد جمعها؟

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

الأسئلة المتداولة

يقدم هذا القسم إجابات للأسئلة الشائعة.

ماذا يحدث لبيانات تتبع استخدام Application Insight عندما يفقد الخادم أو الجهاز الاتصال ب Azure؟

تتضمن جميع SDKs الخاصة بنا، بما في ذلك SDK على الويب، نقلا موثوقا به أو نقلا قويا. عندما يفقد الخادم أو الجهاز الاتصال مع Azure، يتم تخزين القياس عن بُعد ⁧⁩محليًا على نظام الملفات⁧⁩ (Server SDKs)، أو في تخزين جلسة HTML5 (Web SDK). تعيد SDK المحاولة بشكل دوري لإرسال بيانات تتبع الاستخدام هذه حتى تعتبرها خدمة الاستيعاب الخاصة بنا "قديمة" (48 ساعة للسجلات، 30 دقيقة للمقاييس). يتم إسقاط بيانات تتبع الاستخدام التي لا معنى لها. في بعض الحالات، مثل عندما يكون التخزين المحلي ممتلئا، لن تحدث إعادة المحاولة.

هل يتم إرسال البيانات الشخصية في بيانات تتبع الاستخدام؟

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

يتم تعيين جميع ثمانيات عنوان ويب العميل دائما إلى 0 بعد البحث عن سمات الموقع الجغرافي.

لا يتضمن Application Insights JavaScript SDK أي بيانات شخصية في الإكمال التلقائي الخاص به، بشكل افتراضي. ومع ذلك، قد يتم التقاط بعض البيانات الشخصية المستخدمة في التطبيق الخاص بك بواسطة SDK (على سبيل المثال، الأسماء الكاملة في window.title أو معرفات الحساب في معلمات استعلام عنوان URL XHR). لإخفاء البيانات الشخصية المخصصة، أضف ⁧⁩مهييء القياس عن بُعد⁧⁩.