الإبلاغ عن أخطاء ويندوز

الإبلاغ عن أخطاء ويندوز أو Windows Error Reporting (WER) (يطلق عليها أيضاً اسم Watson) هي تقنية ووظيفة للإبلاغ عن الأعطال مقدمة من شركة Microsoft مع نظام التشغيل Windows XP What are WER Services?  ويتم تضمينها أيضاً في إصدارات Windows الأحدث وWindows Mobile 5.0 و 6.0.

من المهم عدم الخلط بين وظيفة الإبلاغ عن الأخطاء هذه وبين أداة تصحيح الأخطاء Dr. Watson التي تركت تفريغ الذاكرة على الجهاز المحلي للمستخدم، حيث تقوم خدمة Windows Error Reporting بجمع وعرض إرسال معلومات تصحيح الأخطاء بعد تنفيذ الخطأ (تفريغ ذاكرة) باستخدام الإنترنت إلى Microsoft أو عملية توقف عن الاستجابة على سطح مكتب المستخدم. ومن المهم الذكر بأنه لا يتم إرسال أية بيانات في عمليات الإبلاغ هذه دون موافقة المستخدم نفسه.An overview of WER consent settings and corresponding UI behavior   عندما يصل تفريغ (أو معلومات توقيع خطأ أخرى) إلى خادم Microsoft ، يتم تحليله ويتم إرسال حل مرة أخرى إلى المستخدم عند توفره. يتم تقديم الحلول باستخدام وظيفة وأداة أخرى تدعى Windows Error Reporting Responses. تعمل خدمة الإبلاغ عن الأخطاء لويندوز كخدمة Windows ويمكن اختياريًا تعطيلها تمامًا متى ماشاء المستخدم. في حالة تعطل خاصية Windows Error Reporting نفسها، عندئذٍ لا يمكن إرسال تقرير عن الخطأ بأن العملية المتعطلة الأصلية قد تم إرسالها على الإطلاق. Kinshuman هو المصمم الأصلي لـ Windows Error Reporting في نظام التشغيل Vista وهو نفس التصميم والتنفيذ الموجود في إصدارات ويندوز الحالية.Debugging in the (Very) Large: Ten Years of Implementation and Experience 

 نبذة تاريخية 

 ويندوز إكس بي 
قدمت شركة مايكروسوفت أولاً خدمة الإبلاغ عن الخطأ لـ ويندوز مع نظام التشغيل Windows XP .

 ويندوز فيستا 
تم تحسين الإبلاغ عن أخطاء ويندوز بشكل ملحوظ في نظام التشغيل Windows Vista . والأهم من ذلك، أنه تم إنشاء مجموعة جديدة من واجهات برمجة التطبيقات (APIs) العامة للإبلاغ عن حالات الفشل بخلاف تعطل التطبيقات وتوقفها.WER APIs  يمكن للمطورين إنشاء تقارير مخصصة وتخصيص واجهة مستخدم إعداد التقارير. يتم توثيق واجهات برمجة التطبيقات الجديدة في MSDN. تم تجديد بنية وهندسة Windows Error Reporting مع التركيز على خواص ومعايير الموثوقية وتجربة المستخدم. يمكن لخدمة الإبلاغ عن أخطاء ويندوز الآن الإبلاغ عن الأخطاء حتى عندما تكون العملية في حالة سيئة للغاية، على سبيل المثال، إذا واجهت العملية استنفاد مكدس، وفساد PEB / TEB ، وإفساد الكومة، إلخ. في أنظمة التشغيل السابقة قبل Windows Vista ، يتم إنهاء العملية عادةً بصمت دون إنشاء تقرير خطأ في هذه الظروف. كما تم تقديم برنامج لوحة تحكم جديد، «تقارير المشكلات وحلولها»، مع الاحتفاظ بسجل لأخطاء النظام والتطبيقات والمشاكل، بالإضافة إلى تقديم حلول محتملة للمشاكل.

 ويندوز 7 
تم استبدال التطبيق الصغير من "لوحة تحكم تقارير وحلول المشكلات " بقسم الصيانة في "مركز إجراءات Windows" على نظامي التشغيل Windows 7 وServer 2008 R2 .

يتوفر تطبيق جديد يسمى بـ، Problem Steps Recorder (PSR.exe) ، على جميع تصميمات Windows 7 ، ويمكّن من جمع وتصوير وتسجيل الإجراءات التي يقوم بها المستخدم أثناء مواجهته لحادث تعطل (مشكلة تقنية)، بحيث يمكن للمختبرين والمطورين إنتاج الموقف لتحليله وتصحيح الأخطاء.Windows Error Reporting Problem Steps Recorder 

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

يتم إرسال الأخطاء التي يتم جمعها بواسطة عملاء WER إلى خدمة WER. توظف خدمة WER حوالي 60 خادمًا متصلة بشبكة منطقة تخزين سعة 65 تيرابايت تخزن قاعدة بيانات تقرير الخطأ وشبكة تخزين سعة 120 تيرابايت تخزن ما يصل إلى 6 أشهر من ملفات CAB الخام. يتم توفير الخدمة لتلقي ومعالجة أكثر من 100 مليون تقرير خطأ يوميًا، وهو ما يكفي للبقاء على قيد الحياة مع الأحداث العالمية المرتبطة مثل ديدان الإنترنت.Debugging in the (Very) Large: Ten Years of Implementation and Experience 

 المجموعات 
في نظام Microsoft Windows Error Reporting (WER)، يتم تنظيم تقارير الأعطال وفقًا لـ «مجموعات». تصنف المجموعات القضايا حسب:How WER collects and classifies error reports 

 اسم التطبيق،
 إصدار التطبيق،
 تاريخ بناء التطبيق،
 اسم الوحدة،
 نسخة الوحدة،
 تاريخ بناء الوحدة،
 رمز استثناء نظام التشغيل  / رمز خطأ النظام، 
 وحدة رمز الإزاحة.

من الناحية المثالية، تحتوي كل مجموعة على تقارير الأعطال الناتجة عن نفس الخطأ. ومع ذلك، هناك نوعان من الضعف في مجموعات WER ، أولاً: نقاط الضعف في الاستدلال التكثيفي، والتي تؤدي إلى رسم الخرائط للتقارير من الشوائب في عدد كبير جدا من المجموعات. على سبيل المثال، إذا قمت بترجمة التطبيق الخاص بك مرة أخرى دون أي تغييرات، فسيتغير تاريخ إنشاء الوحدة النمطية ولكن سيتم وضع نفس التعطل في مجموعة أخرى. ثانياً: نقاط الضعف في الاستدلال التوسعي، والتي تؤدي إلى تعيين أكثر من خطأ في نفس المجموعة. على سبيل المثال، في حالة تعطل عطلان مختلفان داخل دالة strlen ، فلن يكون هناك سوى مجموعة واحد لكليهما. يحدث هذا بسبب إنشاء المجموعة على عميل نظام التشغيل ويندوز دون إجراء أي تحليل للرموز على تفريغ الذاكرة. الوحدة النمطية التي يتم التقاطها من قبل العميل Windows Error Reporting هي الوحدة النمطية في الجزء العلوي من المكدس. ينتج عن تحقيقات العديد من التقارير وحدة نمطية للخطأ، وهي تختلف عن تحديد المجموعة الأصلي.MSDN Blogs > WER Services > The only thing constant is change – Part 1 

 برامج الطرف الثالث 
يمكن لمصنّعي البرامج والأجهزة الوصول إلى تقارير الأخطاء الخاصة بهم باستخدام برنامج Microsoft Dev Center لأجهزة سطح المكتب والأجهزة (سابقًا Winqual).SysDev (was Winqual) website  للتأكد من أن بيانات الإبلاغ عن الأخطاء تذهب فقط إلى المهندسين المسؤولين عن المنتج، تطلب Microsoft من البائعين المهتمين بالحصول على شهادة VeriSign Class 3 الرقمية أو شهادة DigiCert .Update a code signing certificate  الشهادات الرقمية المقدمة من قبل مرخصين (مثل THAWTE ، Comodo ، GlobalSign ، GeoTrust ، Cybertrust ، Entrust ، GoDaddy أو، QuoVadis ، Trustwave ، SecureTrust ، Welles Fargo تعتبر غير مقبولة).Introducing Windows Error Reporting WinQual Registration Head Aches Microsoft Support Forum: WER with Thawte authenticode signed app The Old New Thing: How can a company get access to Windows Error Reporting data? The great digital certificate ripoff? 

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

 التأثير على البرامج المستقبلية 
أبلغت شركة مايكروسوفت أن البيانات التي تم جمعها من Windows Error Reporting قد أحدثت فرقًا كبيرًا في طريقة تطوير البرامج داخليًا. على سبيل المثال، في عام 2002، لاحظ Steve Ballmer أن تقارير الأخطاء مكنت فريق Windows من إصلاح 29 ٪ من جميع أنظمة تشغيل ويندوز وأخطاء XP في نظام التشغيل Windows XP المزود بحزمة الخدمة SP1. تم إصلاح أكثر من نصف أخطاء Microsoft Office XP باستخدام Office XP SP2.Steve Ballmer's letter: Connecting to customers  يعتمد النجاح جزئيًا على مبدأ قاعدة 80/20 . تكشف بيانات الإبلاغ عن الأخطاء أن هناك مجموعة صغيرة من الأخطاء المسؤولة عن الغالبية العظمى من المشكلات التي يراها المستخدمون. يمكن أن يؤدي إصلاح 20٪ من عيوب التعليمات البرمجية إلى القضاء على 80٪ أو أكثر من المشكلات التي يواجهها المستخدمون. أكد مقال في صحيفة نيويورك تايمز أن بيانات الإبلاغ عن الأخطاء كانت مفيدة في إصلاح المشكلات التي شوهدت في إصدارات ويندوز التجريبية وويندوز فيستا ومايكروسوفت أوفيس 2007 .A challenge for exterminators 

 مخاوف الخصوصية واستخدامها من قبل وكالة الأمن القومي 
على الرغم من أن مايكروسوفت قد قدمت ضمانات للخصوصية، فإنها تقر بأنه يمكن تضمين معلومات التعريف الشخصية في بيانات الذاكرة والتطبيق التي تم تجميعها في 100-200 كيلوبايت "minidumps" وأن Windows Error Reporting يقوم بجمعها وإرسالها مرة أخرى إلى مايكروسوفت. تقوم مايكروسوفت أنه في حالة إرسال البيانات الشخصية إليهم، فلن يتم استخدامها لتحديد المستخدمين، وفقًا لسياسة الخصوصية لدى شركة مايكروسوفت.Microsoft Privacy Statement for Error Reporting Description of the end user privacy policy in application error reporting when you are using Office  ولكن في الإبلاغ عن المشكلات إلى مايكروسوفت، يحتاج المستخدمون إلى الوثوق بشركاء مايكروسوفت أيضًا. تم منح حوالي 450 شريكًا حق الوصول إلى قاعدة بيانات الإبلاغ عن الأخطاء لمشاهدة السجلات المتعلقة ببرامج تشغيل الأجهزة والتطبيقات الخاصة بهم.

الإصدارات القديمة من WER ترسل البيانات دون تشفير؛ يستخدم فقط WER من Windows 8 تشفير TLS. في شهر مارس من عام 2014، أصدرت شركة مايكروسوفت تحديثًا (KB2929733) لنظام التشغيل Windows Vista و 7 و Server 2008 الذي يشفر المرحلة الأولى من WER.

في شهر ديسمبر بعام 2013، وجد مختبر مستقل أن WER يرسل المعلومات تلقائيًا إلى مايكروسوفت عند توصيل جهاز USB جديد بالكمبيوتر.

وفقًا لـ Der Spiegel ، تم استغلال مراسل الأعطال في مايكروسوفت بواسطة وحدة TAO التابعة لوكالة الأمن القومي لاختراق أجهزة الكمبيوتر التابعة للأمانة العامة للمكسيك. وفقًا للمصدر نفسه، يتم حصاد تقارير تعطل مايكروسوفت تلقائيًا في قاعدة بيانات XKeyscore التابعة لوكالة الأمن القومي، من أجل تسهيل هذه العمليات.Inside TAO: Documents Reveal Top NSA Hacking Unit 

 المراجع 

تصنيف:شذوذ البرمجيات
تصنيف:مكونات مايكروسوفت ويندوز