تصدير القياس عن بعد من Application Insights
هل تريد الاحتفاظ بتتبع الاستخدام لفترة أطول من فترة الاستبقاء القياسية؟ أو هل تريد معالجته بطريقة متخصصة؟ التصدير المستمر مثالي لهذا الغرض. يمكن تصدير الأحداث التي تراها في مدخل Application Insights إلى التخزين في Azure بتنسيق JSON. من هناك، يمكنك تنزيل بياناتك وكتابة أي رمز تحتاجه لمعالجتها.
هام
- في 29 فبراير 2024، سيتم إيقاف التصدير المستمر كجزء من إهمال Application Insights الكلاسيكي.
- عند الترحيل إلى مورد Application Insights المستند إلى مساحة العمل، يجب عليك استخدام إعدادات التشخيص لتصدير بيانات تتبع الاستخدام. يجب أن تستخدم جميع موارد Application Insights المستندة إلى مساحة العملإعدادات التشخيص.
- قد يؤدي تصدير إعدادات التشخيص إلى زيادة التكاليف. لمزيد من المعلومات، راجع التصدير المستند إلى إعدادات التشخيص.
قبل إعداد التصدير المستمر، هناك بعض البدائل التي قد ترغب في مراعاتها:
- يتيح لك الزر تصدير في أعلى علامة تبويب المقاييس أو البحث نقل الجداول والمخططات إلى جدول بيانات Excel.
- يوفر Log Analytics لغة استعلام قوية للقياس عن بعد. كما يمكن تصدير النتائج.
- إذا كنت تبحث عن استكشاف بياناتك في Power BI، يمكنك القيام بذلك دون استخدام التصدير المستمر إذا قمت بالترحيل إلى مورد يستند إلى مساحة العمل.
- تتيح لك واجهة برمجة تطبيقات REST للوصول إلى البيانات الوصول إلى بيانات تتبع الاستخدام برمجيا.
- يمكنك أيضا الوصول إلى الإعداد للتصدير المستمر عبر PowerShell.
بعد أن ينسخ التصدير المستمر بياناتك إلى التخزين، حيث يمكن أن تبقى طالما أردت، لا تزال متوفرة في Application Insights لفترة الاستبقاء المعتادة.
المناطق المدعومة
يتم دعم التصدير المستمر في المناطق التالية:
- جنوب شرق آسيا
- كندا الوسطى
- وسط الهند
- شمال أوروبا
- جنوب المملكة المتحدة
- شرق أستراليا
- شرق اليابان
- وسط كوريا
- فرنسا الوسطى
- شرق آسيا
- غرب الولايات المتحدة
- وسط الولايات المتحدة
- شرق الولايات المتحدة 2
- جنوب وسط الولايات المتحدة
- منطقة غرب الولايات المتحدة الأمريكية 2
- شمال جنوب أفريقيا
- North Central US
- جنوب البرازيل
- شمال سويسرا
- جنوب شرق أستراليا
- غرب المملكة المتحدة
- وسط غرب ألمانيا
- غرب سويسرا
- أستراليا الوسطى 2
- وسط الإمارات العربية المتحدة
- جنوب شرق البرازيل
- أستراليا الوسطى
- شمال الإمارات العربية المتحدة
- شرق النرويج
- غرب اليابان
ملاحظة
سيستمر التصدير المستمر في العمل للتطبيقات في شرق الولايات المتحدة وغرب أوروبا إذا تم تكوين التصدير قبل 23 فبراير 2021. لا يمكن تكوين قواعد التصدير المستمر الجديدة على أي تطبيق في شرق الولايات المتحدة أو غرب أوروبا، بغض النظر عن وقت إنشاء التطبيق.
تصدير التكوين المتقدم للتخزين المستمر
لا يدعم التصدير المستمر ميزات أو تكوينات Azure Storage التالية:
- استخدام جدران حماية Azure Virtual Network/Azure Storage مع Azure Blob Storage.
- Azure Data Lake Storage Gen2.
إنشاء تصدير مستمر
ملاحظة
لا يمكن للتطبيق تصدير أكثر من 3 تيرابايت من البيانات يوميا. إذا تم تصدير أكثر من 3 تيرابايت يوميا، فسيتم تعطيل التصدير. للتصدير دون حد، استخدم التصدير المستند إلى إعدادات التشخيص.
في مورد Application Insights لتطبيقك ضمن Configure على اليسار، افتح Continuous export وحدد Add.
اختر أنواع بيانات تتبع الاستخدام التي تريد تصديرها.
إنشاء حساب Azure Storage أو تحديده حيث تريد تخزين البيانات. لمزيد من المعلومات حول خيارات تسعير التخزين، راجع صفحة التسعير.
حدد Add>Export destination>Storage account. ثم إما إنشاء متجر جديد أو اختيار متجر موجود.
تحذير
بشكل افتراضي، سيتم تعيين موقع التخزين على نفس المنطقة الجغرافية مثل مورد Application Insights الخاص بك. إذا قمت بتخزين في منطقة مختلفة، فقد تتحمل رسوم نقل.
إنشاء حاوية في التخزين أو تحديدها.
ملاحظة
بعد إنشاء التصدير الخاص بك، ستبدأ البيانات التي تم استيعابها حديثا في التدفق إلى Azure Blob Storage. يقوم التصدير المستمر فقط بإرسال بيانات تتبع الاستخدام الجديدة التي تم إنشاؤها أو استيعابها بعد تمكين التصدير المستمر. لن يتم تصدير أي بيانات كانت موجودة قبل تمكين التصدير المستمر. لا توجد طريقة مدعومة لتصدير البيانات التي تم إنشاؤها مسبقا بأثر رجعي باستخدام التصدير المستمر.
قد يكون هناك تأخير لمدة ساعة تقريباً قبل ظهور البيانات في المخزن.
بعد الانتهاء من التصدير الأول، ستجد البنية التالية في حاوية Blob Storage. (تختلف هذه البنية اعتمادا على البيانات التي تجمعها.)
الاسم | الوصف |
---|---|
التوفر | تقارير اختبارات الويب المتوفرة . |
الحدث | أحداث مخصصة تم إنشاؤها بواسطة TrackEvent(). |
استثناءات | تقارير عن الاستثناءات في الخادم وفي المستعرض. |
الرسائل | أرسلت بواسطة TrackTrace، وبواسطة محولات تسجيل. |
المقاييس | تم إنشاؤه بواسطة استدعاء API المتري. |
PerformanceCounters | عدادات الأداء التي تم جمعها بواسطة Application Insights. |
الطلبات | أرسلت من قبل TrackRequest. تستخدم الوحدات القياسية الطلبات للإبلاغ عن وقت استجابة الخادم، والتي يتم قياسها على الخادم. |
تحرير التصدير المستمر
حدد التصدير المستمر وحدد حساب التخزين لتحريره.
إيقاف التصدير المستمر
لإيقاف التصدير، حدد تعطيل. عند تحديد تمكين مرة أخرى، تتم إعادة تشغيل التصدير باستخدام بيانات جديدة. لن تحصل على البيانات التي وصلت إلى المدخل أثناء تعطيل التصدير.
لإيقاف التصدير نهائياً، قم بحذفه. ولا يؤدي القيام بذلك إلى حذف بياناتك من التخزين.
ألا تستطيع إضافة أو تغيير تصدير؟
لإضافة أو تغيير عمليات التصدير، تحتاج إلى حقوق وصول المالك أو المساهم أو المساهمdk في Application Insights. تعرف على الأدوار.
ما هي الأحداث التي تحصل عليها؟
البيانات المصدرة هي البيانات الأولية التي نتلقاها من تطبيقك مع بيانات الموقع المضافة من عنوان IP الخاص بالعميل.
لا يتم تضمين البيانات التي تم تجاهلها عن طريق أخذ العينات في البيانات التي تم تصديرها.
لا يتم تضمين القياسات المحسوبة الأخرى. على سبيل المثال، لا نقوم بتصدير متوسط استخدام وحدة المعالجة المركزية، لكننا نقوم بتصدير القياس الخام عن بُعد الذي يتم من خلاله حساب المتوسط.
تتضمن البيانات أيضاً نتائج أي اختبارات ويب متوفرة قمت بإعدادها.
ملاحظة
إذا أرسل تطبيقك الكثير من البيانات، فقد تعمل ميزة أخذ العينات وترسل جزءا صغيرا فقط من بيانات تتبع الاستخدام التي تم إنشاؤها. تعرف على المزيد حول أخذ العينات.
فحص البيانات
يمكنك فحص التخزين مباشرة في المدخل. حدد الصفحة الرئيسية في القائمة الموجودة في أقصى اليسار. في الجزء العلوي حيث تظهر خدمات Azure، حدد حسابات التخزين. حدد اسم حساب التخزين، وفي صفحة Overview حدد Services>Blobs. وأخيرا، حدد اسم الحاوية.
لفحص Azure Storage في Visual Studio، حدد View>Cloud Explorer. إذا لم يكن لديك أمر القائمة هذا، فستحتاج إلى تثبيت Azure SDK. افتح مربع الحوار مشروع جديد ، وقم بتوسيع Visual C#/Cloud، وحدد الحصول على Microsoft Azure SDK ل .NET.
عند فتح متجر blob الخاص بك، سترى حاوية مع مجموعة من ملفات النقطة. سترى URI لكل ملف مشتق من اسم مورد Application Insights ومفتاح تقرير عن حالة النظام ونوع بيانات تتبع الاستخدام والتاريخ والوقت. اسم المورد كله بأحرف صغيرة، ويحذف مفتاح تقرير عن حالة النظام الشرطات.
ملاحظة
في 31 مارس 2025، سينتهي دعم استيعاب مفاتيح الأجهزة. سيستمر استيعاب مفتاح الأجهزة في العمل ولكننا لن نقوم بتوفير تحديثات أو أي دعم للميزة. الانتقال إلى سلاسل الاتصال للاستفادة من الإمكانات الجديدة.
التاريخ والوقت بالتوقيت العالمي المتفق عليه ووقت إيداع بيانات تتبع الاستخدام في المتجر، وليس الوقت الذي تم إنشاؤه فيه. لهذا السبب، إذا قمت بكتابة التعليمات البرمجية لتنزيل البيانات، فيمكنها التنقل خطيا عبر البيانات.
إليك شكل المسار:
$"{applicationName}_{instrumentationKey}/{type}/{blobDeliveryTimeUtc:yyyy-MM-dd}/{ blobDeliveryTimeUtc:HH}/{blobId}_{blobCreationTimeUtc:yyyyMMdd_HHmmss}.blob"
المكان:
blobCreationTimeUtc
هو الوقت الذي تم فيه إنشاء الكائن الثنائي كبير الحجم في التخزين المرحلي الداخلي.blobDeliveryTimeUtc
هو الوقت الذي يتم فيه نسخ الكائن الثنائي كبير الحجم إلى تخزين وجهة التصدير.
تنسيق البيانات
يتم تنسيق البيانات بحيث:
كل كائن ثنائي كبير الحجم هو ملف نصي يحتوي على عدة
\n
صفوف مفصولة. يحتوي على القياس عن بعد الذي تمت معالجته خلال فترة زمنية تبلغ نصف دقيقة تقريباً.يمثل كل صف نقطة بيانات تتبع الاستخدام، مثل طلب أو طريقة عرض صفحة.
كل صف هو مستند JSON غير منسق. إذا كنت تريد عرض الصفوف، فافتح الكائن الثنائي كبير الحجم في Visual Studio وحدد تحرير>ملف تنسيقمتقدم>.
الفترات الزمنية محددة بعلامات، حيث 10000 علامة تجزئة = 1 مللي ثانية. على سبيل المثال، تُظهر هذه القيم وقتاً قدره 1 مللي ثانية لإرسال طلب من المتصفح، و3 مللي ثانية لاستلامه، و1.8 ثانية لمعالجة الصفحة في المتصفح:
"sendRequest": {"value": 10000.0},
"receiveRequest": {"value": 30000.0},
"clientProcess": {"value": 17970000.0}
للحصول على مرجع نموذج بيانات مفصل أنواع الخصائص والقيم، راجع نموذج بيانات تصدير Application Insights.
معالجة البيانات
على نطاق صغير، يمكنك كتابة بعض التعليمات البرمجية لفصل بياناتك وقراءتها في جدول بيانات. على سبيل المثال:
private IEnumerable<T> DeserializeMany<T>(string folderName)
{
var files = Directory.EnumerateFiles(folderName, "*.blob", SearchOption.AllDirectories);
foreach (var file in files)
{
using (var fileReader = File.OpenText(file))
{
string fileContent = fileReader.ReadToEnd();
IEnumerable<string> entities = fileContent.Split('\n').Where(s => !string.IsNullOrWhiteSpace(s));
foreach (var entity in entities)
{
yield return JsonConvert.DeserializeObject<T>(entity);
}
}
}
}
للحصول على نموذج تعليمة برمجية أكبر، راجع استخدام دور عامل.
حذف بياناتك القديمة
أنت مسؤول عن إدارة سعة التخزين الخاصة بك وحذف البيانات القديمة، إذا لزم الأمر.
إعادة إنشاء مفتاح التخزين الخاص بك
إذا قمت بتغيير مفتاح التخزين الخاص بك، سيتوقف التصدير المستمر عن العمل. سترى إشعاراً في حسابك في Azure.
حدد علامة التبويب تصدير مستمر وقم بتحرير التصدير. قم بتحرير قيمةتصدير الوجهة ، ولكن اترك نفس التخزين محددا. حدد «موافق» للتأكيد.
ستتم إعادة تشغيل التصدير المستمر.
تصدير عينات
للحصول على عينات التصدير، راجع:
على نطاقات أكبر، ضع في اعتبارك مجموعات HDInsight Hadoop في السحابة. يوفر HDInsight تقنيات مختلفة لإدارة وتحليل البيانات الضخمة. يمكنك استخدامه لمعالجة البيانات التي تم تصديرها من Application Insights.
الأسئلة المتداولة
يقدم هذا القسم إجابات للأسئلة الشائعة.
هل يمكنني الحصول على تنزيل مخطط لمرة واحدة؟
يمكنك القيام بذلك. في الجزء العلوي من علامة التبويب، حدد Export Data.
لقد قمت بإعداد تصدير، ولكن لماذا لا توجد بيانات في متجري؟
هل تلقت Application Insights أي تتبع عن بُعد من تطبيقك منذ أن قمت بإعداد التصدير؟ ستتلقى بيانات جديدة فقط.
حاولت إعداد تصدير، ولكن لماذا تم رفض وصولي؟
إذا كان الحساب مملوكا لمؤسستك، فيجب أن تكون عضوا في مجموعات المالكين أو المساهمين.
هل يمكنني التصدير مباشرة إلى متجري الداخلي؟
كلا. يعمل محرك التصدير الخاص بنا حاليا فقط مع Azure Storage في الوقت الحالي.
هل هناك أي حد لكمية البيانات التي تضعها في متجري؟
كلا. سنستمر في دفع البيانات حتى تقوم بحذف التصدير. سنتوقف إذا وصلنا إلى الحدود الخارجية لتخزين Blob، ولكن هذا الحد كبير. الأمر متروك لك للتحكم في كمية التخزين التي تستخدمها.
كم عدد النقط التي يجب أن أراها في المخزن؟
- لكل نوع بيانات حددته لتصديره، يتم إنشاء كائن ثنائي كبير الحجم جديد كل دقيقة، إذا كانت البيانات متوفرة.
- بالنسبة للتطبيقات ذات نسبة استخدام الشبكة العالية، يتم تخصيص وحدات قسم إضافية. في هذه الحالة، تقوم كل وحدة بإنشاء النقطة كل دقيقة.
لقد قمت بإعادة إنشاء المفتاح إلى التخزين الخاص بي، أو قمت بتغيير اسم الحاوية، ولكن لماذا لا يعمل التصدير؟
قم بتحرير التصدير وحدد علامة التبويب تصدير الوجهة . اترك نفس التخزين محددا كما كان من قبل، وحدد موافق للتأكيد. ستتم إعادة تشغيل التصدير. إذا كان التغيير خلال الأيام القليلة الماضية، فلن تفقد البيانات.
هل يمكنني إيقاف التصدير مؤقتاً؟
نعم. حدد تعطيل.
نماذج التعليمات البرمجية
- نموذج Stream Analytics
- التصدير إلى SQL باستخدام Stream Analytics
- مرجع نموذج البيانات التفصيلية أنواع الخصائص والقيم
التصدير المستند إلى إعدادات التشخيص
يفضل تصدير إعدادات التشخيص لأنه يوفر ميزات إضافية:
- حسابات Azure Storage مع الشبكات الظاهرية وجدران الحماية والارتباطات الخاصة.
- التصدير إلى Azure Event Hubs.
يختلف تصدير إعدادات التشخيص عن التصدير المستمر بالطرق التالية:
- المخطط المحدث.
- يتم إرسال بيانات التتبع عن بُعد فور وصولها بدلاً من التحميلات المجمعة.
هام
قد يتم تكبد تكاليف إضافية بسبب زيادة في المكالمات إلى الوجهة، مثل حساب التخزين.
للترحيل إلى تصدير إعدادات التشخيص:
- تمكين إعدادات التشخيص على Application Insights الكلاسيكي.
- تكوين تصدير البيانات: حدد Diagnostic settings>Add diagnostic setting من داخل مورد Application Insights.
- تحقق من تكوين تصدير البيانات الجديد بنفس طريقة تكوين التصدير المستمر
تنبيه
إذا كنت ترغب في تخزين سجلات التشخيص في مساحة عمل Log Analytics، فهناك نقطتان يجب مراعاتهما لتجنب رؤية البيانات المكررة في Application Insights:
- لا يمكن أن تكون الوجهة هي نفس مساحة عمل Log Analytics التي يستند إليها مورد Application Insights.
- لا يمكن لمستخدم Application Insights الوصول إلى مساحتي العمل. قم بتعيين وضع التحكم في الوصول إلى Log Analytics إلى يتطلب أذونات مساحة العمل. من خلال التحكم في الوصول المستند إلى الدور في Azure، تأكد من أن المستخدم لديه حق الوصول فقط إلى مساحة عمل Log Analytics التي يستند إليها مورد Application Insights.
هذه الخطوات ضرورية لأن Application Insights يصل إلى بيانات تتبع الاستخدام عبر موارد Application Insight، بما في ذلك مساحات عمل Log Analytics، لتوفير عمليات المعاملات الشاملة الكاملة وخرائط التطبيقات الدقيقة. نظرا لأن سجلات التشخيص تستخدم أسماء الجداول نفسها، يمكن عرض بيانات تتبع الاستخدام المكررة إذا كان لدى المستخدم حق الوصول إلى موارد متعددة تحتوي على نفس البيانات.
نموذج بيانات تصدير Application Insights
يسرد هذا الجدول خصائص القياس عن بُعد المُرسلة من تطبيقات SDK لـ Application Insights إلى البوابة الإلكترونية. سترى هذه الخصائص في إخراج البيانات من Continuous Export. كما تظهر في عوامل تصفية الخصائص في Metric ExplorerوDiagnostic Search.
النقاط التي يجب ملاحظتها:
[0]
في هذه الجداول تشير إلى نقطة في المسار يجب فيها إدراج فهرس; لكنها ليست دائماً صفر.- المدد الزمنية هي في أعشار ميكروثانية، حتى 10000000 == 1 ثانية.
- التواريخ والأوقات هي UTC، وتعطى في شكل ISO
yyyy-MM-DDThh:mm:ss.sssZ
مثال
// A server report about an HTTP request
{
"request": [
{
"urlData": { // derived from 'url'
"host": "contoso.org",
"base": "/",
"hashTag": ""
},
"responseCode": 200, // Sent to client
"success": true, // Default == responseCode<400
// Request id becomes the operation id of child events
"id": "fCOhCdCnZ9I=",
"name": "GET Home/Index",
"count": 1, // 100% / sampling rate
"durationMetric": {
"value": 1046804.0, // 10000000 == 1 second
// Currently the following fields are redundant:
"count": 1.0,
"min": 1046804.0,
"max": 1046804.0,
"stdDev": 0.0,
"sampledValue": 1046804.0
},
"url": "/"
}
],
"internal": {
"data": {
"id": "7f156650-ef4c-11e5-8453-3f984b167d05",
"documentVersion": "1.61"
}
},
"context": {
"device": { // client browser
"type": "PC",
"screenResolution": { },
"roleInstance": "WFWEB14B.fabrikam.net"
},
"application": { },
"location": { // derived from client ip
"continent": "North America",
"country": "United States",
// last octagon is anonymized to 0 at portal:
"clientip": "168.62.177.0",
"province": "",
"city": ""
},
"data": {
"isSynthetic": true, // we identified source as a bot
// percentage of generated data sent to portal:
"samplingRate": 100.0,
"eventTime": "2016-03-21T10:05:45.7334717Z" // UTC
},
"user": {
"isAuthenticated": false,
"anonId": "us-tx-sn1-azr", // bot agent id
"anonAcquisitionDate": "0001-01-01T00:00:00Z",
"authAcquisitionDate": "0001-01-01T00:00:00Z",
"accountAcquisitionDate": "0001-01-01T00:00:00Z"
},
"operation": {
"id": "fCOhCdCnZ9I=",
"parentId": "fCOhCdCnZ9I=",
"name": "GET Home/Index"
},
"cloud": { },
"serverDevice": { },
"custom": { // set by custom fields of track calls
"dimensions": [ ],
"metrics": [ ]
},
"session": {
"id": "65504c10-44a6-489e-b9dc-94184eb00d86",
"isFirst": true
}
}
}
السياق
وترافق جميع أنواع بيانات تتبع الاستخدام قسم السياق. لا يتم إرسال كافة هذه الحقول مع كل نقطة بيانات.
المسار | النوع | ملاحظات |
---|---|---|
context.custom.dimensions [0] | كائن [ ] | أزواج سلسلة قيمة المفتاح التي تم تعيينها بواسطة معلمة خصائص مخصصة. الحد الأقصى لطول المفتاح 100، قيم الحد الأقصى للطول 1024. أكثر من 100 قيمة فريدة، يمكن البحث في الخاصية ولكن لا يمكن استخدامها للتجزئة. الحد الأقصى 200 مفاتيح لكل ikey. |
context.custom.metrics [0] | كائن [ ] | أزواج القيمة المفتاحية التي تم تعيينها بواسطة معلمة القياسات المخصصة وTrackMetrics. الحد الأقصى لطول المفتاح 100، قد تكون القيم رقمية. |
context.data.eventTime | سلسلة | UTC |
context.data.isSynthetic | منطقي | يبدو أن الطلب يأتي من اختبار بوت أو الويب. |
context.data.samplingRate | العدد | النسبة المئوية لقياس بيانات تتبع الاستخدام التي تم إنشاؤها بواسطة SDK التي يتم إرسالها إلى المدخل. النطاق: 0.0-100.0 |
context.device | عنصر | جهاز العميل |
context.device.browser | سلسلة | IE, Chrome, ... |
context.device.browserVersion | سلسلة | Chrome 48.0, ... |
context.device.deviceModel | سلسلة | |
context.device.deviceName | سلسلة | |
context.device.id | سلسلة | |
context.device.locale | سلسلة | en-GB, de-DE, ... |
context.device.network | سلسلة | |
context.device.oemName | سلسلة | |
context.device.os | سلسلة | |
context.device.osVersion | سلسلة | نظام التشغيل المضيف |
context.device.roleInstance | سلسلة | معرف مضيف الخادم |
context.device.roleName | سلسلة | |
context.device.screenResolution | سلسلة | |
context.device.type | سلسلة | الكمبيوتر، متصفح، ... |
context.location | عنصر | مشتق من clientip . |
context.location.city | سلسلة | مشتق من clientip ، إذا كان معروفاً |
context.location.clientip | سلسلة | المثمن الأخير مجهول إلى 0. |
context.location.continent | سلسلة | |
context.location.country | سلسلة | |
context.location.province | سلسلة | الولاية أو المقاطعة |
context.operation.id | سلسلة | يتم عرض العناصر التي لها نفس operation id باعتبارها عناصر ذات صلة في المدخل. عادة ما تكون request id . |
context.operation.name | سلسلة | عنوان URL أو اسم الطلب |
context.operation.parentId | سلسلة | يسمح بالعناصر المرتبطة المتداخلة. |
context.session.id | سلسلة | Id مجموعة من العمليات من نفس المصدر. تشير فترة 30 دقيقة بدون عملية إلى نهاية الجلسة. |
context.session.isFirst | منطقي | |
context.user.accountAcquisitionDate | سلسلة | |
context.user.accountId | سلسلة | |
context.user.anonAcquisitionDate | سلسلة | |
context.user.anonId | سلسلة | |
context.user.authAcquisitionDate | سلسلة | معرفات المستخدم المصادق عليها |
context.user.authId | سلسلة | |
context.user.isAuthenticated | منطقي | |
context.user.storeRegion | سلسلة | |
internal.data.documentVersion | سلسلة | |
internal.data.id | سلسلة | Unique id التي تم تعيينها عند تناول عنصر إلى Application Insights |
الأحداث
الأحداث المخصصة التي تم إنشاؤها بواسطة TrackEvent().
المسار | النوع | ملاحظات |
---|---|---|
عدد الأحداث [0] | عدد صحيح | 100/(معدل أخذ العينات). على سبيل المثال، 4 => 25% |
اسم الحدث [0] | سلسلة | اسم الحدث الحد الأقصى للطول 250. |
الحدث [0] رابط | سلسلة | |
الحدث [0] urlData.base | سلسلة | |
الحدث [0] urlData.host | سلسلة |
استثناءات
تقارير الاستثناءات في الملقم وفي المستعرض.
المسار | النوع | ملاحظات |
---|---|---|
تجميع basicException [0] | سلسلة | |
عدد basicException [0] | عدد صحيح | 100/(معدل أخذ العينات). على سبيل المثال، 4 => 25% |
مجموعة الاستثناء basicException [0] | سلسلة | |
نوع الاستثناء basicException [0] | سلسلة | |
basicException [0] failedUserCodeMethod | سلسلة | |
basicException [0] failedUserCodeAssembly | سلسلة | |
basicException [0] handledAt | سلسلة | |
basicException [0] hasFullStack | منطقي | |
basicException [0] id |
سلسلة | |
طريقة basicException [0] | سلسلة | |
رسالة basicException [0] | سلسلة | رسالة الاستثناء. أقصى طول 10 آلاف. |
basicException [0] outerExceptionMessage | سلسلة | |
basicException [0] outerExceptionThrownAtAssembly | سلسلة | |
basicException [0] outerExceptionThrownAtMethod | سلسلة | |
basicException [0] outerExceptionType | سلسلة | |
basicException [0] outerId | سلسلة | |
basicException [0] parsedStack [0] assembly | سلسلة | |
basicException [0] parsedStack [0] fileName | سلسلة | |
basicException [0] parsedStack [0] level | عدد صحيح | |
basicException [0] parsedStack [0] line | عدد صحيح | |
basicException [0] parsedStack [0] method | سلسلة | |
basicException [0] stack | سلسلة | أقصى طول 10 آلاف |
basicException [0] typeName | سلسلة |
تتبع الرسائل
أرسلت بواسطة TrackTrace، وبواسطة محولات تسجيل.
المسار | النوع | ملاحظات |
---|---|---|
اسم تسجيل الرسالة [0] | سلسلة | |
معلمات [0] الرسالة | سلسلة | |
رسالة [0] الخام | سلسلة | رسالة السجل، أقصى طول 10 آلاف. |
الرسالة [0] severityLevel | سلسلة |
التبعية عن بعد
أرسلت من قبل TrackDependency. تستخدم للإبلاغ عن أداء واستخدام المكالمات إلى التبعيات في الملقم، والمكالمات AJAX في المستعرض.
المسار | النوع | ملاحظات |
---|---|---|
remoteDependency [0] async | منطقي | |
remoteDependency [0] baseName | سلسلة | |
remoteDependency [0] commandName | سلسلة | على سبيل المثال، "home/index" |
عد remoteDependency [0] | عدد صحيح | 100/(معدل أخذ العينات). على سبيل المثال، 4 => 25% |
remoteDependency [0] dependencyTypeName | سلسلة | HTTP, SQL, ... |
remoteDependency [0] durationMetric.value | العدد | الوقت من الاستدعاء إلى إكمال الاستجابة حسب التبعية |
remoteDependency [0] id |
سلسلة | |
remoteDependency [0] name | سلسلة | Url. الحد الأقصى للطول 250. |
remoteDependency [0] resultCode | سلسلة | من تبعية HTTP |
remoteDependency [0] success | منطقي | |
نوع remoteDependency [0] | سلسلة | Http, Sql,... |
remoteDependency [0] url | سلسلة | الحد الأقصى للطول 2000 |
remoteDependency [0] urlData.base | سلسلة | الحد الأقصى للطول 2000 |
remoteDependency [0] urlData.hashTag | سلسلة | |
remoteDependency [0] urlData.host | سلسلة | الحد الأقصى للطول 200 |
الطلبات
أرسلت من قبل TrackRequest. تستخدم الوحدات القياسية هذا لتقارير وقت استجابة الخادم، والتي يتم قياسها على الخادم.
المسار | النوع | ملاحظات |
---|---|---|
طلب [0] العد | عدد صحيح | 100/(معدل أخذ العينات). على سبيل المثال، 4 => 25% |
request [0] durationMetric.value | العدد | الوقت من الطلب للوصول إلى الاستجابة. 1e7 == 1s |
request [0] id |
سلسلة | Operation id |
اسم طلب [0] | سلسلة | GET/POST + قاعدة رابط. الحد الأقصى للطول 250 |
طلب [0] responseCode | عدد صحيح | استجابة HTTP المرسلة إلى العميل |
نجاح [0] طلب | منطقي | الافتراضي == (responseCode < 400) |
طلب [0] رابط | سلسلة | لا يشمل المضيف |
طلب [0] urlData.base | سلسلة | |
طلب [0] urlData.hashTag | سلسلة | |
طلب [0] urlData.host | سلسلة |
أداء عرض الصفحة
أرسلت من قبل المتصفح. يقيس الوقت اللازم لمعالجة الصفحة، بدءاً من بدء المستخدم لطلب العرض مكتملاً (باستثناء مكالمات AJAX غير المتزامن).
تظهر قيم السياق نظام التشغيل العميل وإصدار المستعرض.
المسار | النوع | ملاحظات |
---|---|---|
clientPerformance [0] clientProcess.value | عدد صحيح | الوقت من نهاية استلام HTML حتى عرض الصفحة. |
اسم clientPerformance [0] | سلسلة | |
clientPerformance [0] networkConnection.value | عدد صحيح | الوقت الذي استغرقه تأسيس اتصال شبكة اتصال. |
clientPerformance [0] receiveRequest.value | عدد صحيح | الوقت من نهاية إرسال الطلب إلى تلقي HTML في الرد. |
clientPerformance [0] sendRequest.value | عدد صحيح | الوقت المستغرق لإرسال طلب HTTP. |
clientPerformance [0] total.value | عدد صحيح | الوقت من البدء في إرسال الطلب إلى عرض الصفحة. |
clientPerformance [0] url | سلسلة | عنوان URL لهذا الطلب |
clientPerformance [0] urlData.base | سلسلة | |
clientPerformance [0] urlData.hashTag | سلسلة | |
clientPerformance [0] urlData.host | سلسلة | |
clientPerformance [0] urlData.protocol | سلسلة |
طرق عرض الصفحة
المرسلة بواسطة trackPageView() أو stopTrackPage
المسار | النوع | ملاحظات |
---|---|---|
عدد عرض [0] | عدد صحيح | 100/(معدل أخذ العينات). على سبيل المثال، 4 => 25% |
عرض [0] durationMetric.value | عدد صحيح | يتم تعيين القيمة اختياريًا في trackPageView () أو عن طريق startTrackPage () - stopTrackPage (). ليس نفس قيم الأداء العميل. |
عرض الاسم [0] | سلسلة | عنوان الصفحة. الحد الأقصى للطول 250 |
عرض [0] رابط | سلسلة | |
عرض [0] urlData.base | سلسلة | |
عرض [0] urlData.hashTag | سلسلة | |
عرض [0] urlData.host | سلسلة |
التوفر
اختبارات ويب إتاحة التقارير.
المسار | النوع | ملاحظات |
---|---|---|
availability [0] availabilityMetric.name | سلسلة | التوافر |
availability [0] availabilityMetric.value | العدد | 1.0 أو 0.0 |
عدد التوافر [0] | عدد صحيح | 100/(معدل أخذ العينات). على سبيل المثال، 4 => 25% |
availability [0] dataSizeMetric.name | سلسلة | |
availability [0] dataSizeMetric.value | عدد صحيح | |
availability [0] durationMetric.name | سلسلة | |
availability [0] durationMetric.value | العدد | مدة الاختبار. 1e7==1s |
رسالة التوفر [0] | سلسلة | تشخيص الفشل |
نتيجة توافر [0] | سلسلة | تمرير/فشل |
availability [0] runLocation | سلسلة | مصدر جغرافي لـhttp req |
availability [0] testName | سلسلة | |
availability [0] testRunId | سلسلة | |
availability [0] testTimestamp | سلسلة |
المقاييس
تم إنشاؤه بواسطة TrackMetric().
تم العثور على قيمة القياس في context.custom.metrics[0]
على سبيل المثال:
{
"metric": [ ],
"context": {
...
"custom": {
"dimensions": [
{ "ProcessId": "4068" }
],
"metrics": [
{
"dispatchRate": {
"value": 0.001295,
"count": 1.0,
"min": 0.001295,
"max": 0.001295,
"stdDev": 0.0,
"sampledValue": 0.001295,
"sum": 0.001295
}
}
]
}
}
}
حول القيم المترية
يتم الإبلاغ عن قيم القياس، سواء في التقارير المترية أو في أي مكان آخر، باستخدام بنية كائن قياسية. على سبيل المثال:
"durationMetric": {
"name": "contoso.org",
"type": "Aggregation",
"value": 468.71603053650279,
"count": 1.0,
"min": 468.71603053650279,
"max": 468.71603053650279,
"stdDev": 0.0,
"sampledValue": 468.71603053650279
}
حالياً - على الرغم من أن هذا قد يتغير في المستقبل - في جميع القيم التي تم الإبلاغ عنها من وحدات SDK القياسية، count==1
وفقط الحقول name
و value
هي الحقول المفيدة. الحالة الوحيدة التي تكون مختلفة إذا قمت بكتابة المكالمات TrackMetric الخاصة بك التي قمت بتعيين المعلمات الأخرى.
الغرض من الحقول الأخرى هو السماح بتجميع المقاييس في SDK، لتقليل حركة المرور إلى المدخل. على سبيل المثال، يمكنك متوسط عدة قراءات متتالية قبل إرسال كل تقرير متري. ثم تقوم بحساب الحد الأدنى والحد الأقصى والانحراف المعياري والقيمة الإجمالية (المجموع أو المتوسط) وتعيين العد على عدد القراءات التي يمثلها التقرير.
في الجداول أعلاه، حذفنا عدد الحقول المستخدمة نادراً، count, min, max, stdDev, sampledValue.
بدلاً من المقاييس المجمعة مسبقًا، يمكنك استخدامأخذ العينات إذا كنت بحاجة إلى تقليل حجم بيانات تتبع الاستخدام.
المدد
ما لم يُذكر خلاف ذلك، يتم تمثيل المدد بعشر الميكروثانية، بحيث يعني 10000000.0 ثانية واحدة.