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

من المهم عدم الخلط بين وظيفة الإبلاغ عن الأخطاء هذه وبين أداة تصحيح الأخطاء Dr. Watson التي تركت تفريغ الذاكرة على الجهاز المحلي للمستخدم، حيث تقوم خدمة Windows Error Reporting بجمع وعرض إرسال معلومات تصحيح الأخطاء بعد تنفيذ الخطأ (تفريغ ذاكرة) باستخدام الإنترنت إلى Microsoft أو عملية توقف عن الاستجابة على سطح مكتب المستخدم. ومن المهم الذكر بأنه لا يتم إرسال أية بيانات في عمليات الإبلاغ هذه دون موافقة المستخدم نفسه. عندما يصل تفريغ (أو معلومات توقيع خطأ أخرى) إلى خادم Microsoft ، يتم تحليله ويتم إرسال حل مرة أخرى إلى المستخدم عند توفره. يتم تقديم الحلول باستخدام وظيفة وأداة أخرى تدعى Windows Error Reporting Responses. تعمل خدمة الإبلاغ عن الأخطاء لويندوز كخدمة Windows ويمكن اختياريًا تعطيلها تمامًا متى ماشاء المستخدم. في حالة تعطل خاصية Windows Error Reporting نفسها، عندئذٍ لا يمكن إرسال تقرير عن الخطأ بأن العملية المتعطلة الأصلية قد تم إرسالها على الإطلاق. Kinshuman هو المصمم الأصلي لـ Windows Error Reporting في نظام التشغيل Vista وهو نفس التصميم والتنفيذ الموجود في إصدارات ويندوز الحالية.

نبذة تاريخية

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

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

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

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

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

يتم إرسال الأخطاء التي يتم جمعها بواسطة عملاء WER إلى خدمة WER. توظف خدمة WER حوالي 60 خادمًا متصلة بشبكة منطقة تخزين سعة 65 تيرابايت تخزن قاعدة بيانات تقرير الخطأ وشبكة تخزين سعة 120 تيرابايت تخزن ما يصل إلى 6 أشهر من ملفات CAB الخام. يتم توفير الخدمة لتلقي ومعالجة أكثر من 100 مليون تقرير خطأ يوميًا، وهو ما يكفي للبقاء على قيد الحياة مع الأحداث العالمية المرتبطة مثل ديدان الإنترنت.

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

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

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

برامج الطرف الثالث 
يمكن لمصنّعي البرامج والأجهزة الوصول إلى تقارير الأخطاء الخاصة بهم باستخدام برنامج Microsoft Dev Center لأجهزة سطح المكتب والأجهزة (سابقًا Winqual). للتأكد من أن بيانات الإبلاغ عن الأخطاء تذهب فقط إلى المهندسين المسؤولين عن المنتج، تطلب Microsoft من البائعين المهتمين بالحصول على شهادة VeriSign Class 3 الرقمية أو شهادة DigiCert . الشهادات الرقمية المقدمة من قبل مرخصين (مثل THAWTE ، Comodo ، GlobalSign ، GeoTrust ، Cybertrust ، Entrust ، GoDaddy أو، QuoVadis ، Trustwave ، SecureTrust ، Welles Fargo تعتبر غير مقبولة).

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

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

مخاوف الخصوصية واستخدامها من قبل وكالة الأمن القومي 
على الرغم من أن مايكروسوفت قد قدمت ضمانات للخصوصية، فإنها تقر بأنه يمكن تضمين معلومات التعريف الشخصية في بيانات الذاكرة والتطبيق التي تم تجميعها في 100-200 كيلوبايت "minidumps" وأن Windows Error Reporting يقوم بجمعها وإرسالها مرة أخرى إلى مايكروسوفت. تقوم مايكروسوفت أنه في حالة إرسال البيانات الشخصية إليهم، فلن يتم استخدامها لتحديد المستخدمين، وفقًا لسياسة الخصوصية لدى شركة مايكروسوفت. ولكن في الإبلاغ عن المشكلات إلى مايكروسوفت، يحتاج المستخدمون إلى الوثوق بشركاء مايكروسوفت أيضًا. تم منح حوالي 450 شريكًا حق الوصول إلى قاعدة بيانات الإبلاغ عن الأخطاء لمشاهدة السجلات المتعلقة ببرامج تشغيل الأجهزة والتطبيقات الخاصة بهم.

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

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

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

المراجع 

شذوذ البرمجيات
مكونات مايكروسوفت ويندوز
الإبلاغ عن أخطاء ويندوز أو Windows Error Reporting ( WER ) ( يطلق علي ها أيضاً اسم Watson ) هي تقنية ووظيفة للإبلاغ عن الأعطال مقدمة من شركة Microsoft مع نظام التشغيل Windows XP و يتم تضمين ها أيضاً في إصدارات Windows ال أحدث وWindows Mobile 0 و 0 . من المهم عدم الخلط بين وظيفة الإبلاغ عن الأخطاء هذه و بين أداة تصحيح الأخطاء Dr . Watson التي تركت تفريغ الذاكرة على الجهاز المحلي للمستخدم ، حيث تقوم خدمة Windows Error Reporting ب جمع و عرض إرسال معلومات تصحيح الأخطاء بعد تنفيذ الخطأ ( تفريغ ذاكرة ) ب استخدام الإنترنت إلى Microsoft أو عملية توقف عن الاستجابة على سطح مكتب المستخدم . و من المهم الذكر ب أن ه لا يتم إرسال أية بيانات في عمليات الإبلاغ هذه دون موافقة المستخدم نفس ه . عندما يصل تفريغ ( أو معلومات توقيع خطأ أخرى ) إلى خادم Microsoft ، يتم تحليل ه و يتم إرسال حل مرة أخرى إلى المستخدم عند توفر ه . يتم تقديم الحلول ب استخدام وظيفة و أداة أخرى تدعى Windows Error Reporting Responses . تعمل خدمة الإبلاغ عن الأخطاء لويندوز كخدمة Windows و يمكن اختياريًا تعطيل ها تمامًا متى ماشاء المستخدم . في حالة تعطل خاصية Windows Error Reporting نفس ها ، عندئذٍ لا يمكن إرسال تقرير عن الخطأ ب أن العملية ال متعطلة الأصلية قد تم إرسال ها على الإطلاق . Kinshum an هو المصمم الأصلي لـ Windows Error Reporting في نظام التشغيل Vista و هو نفس التصميم والتنفيذ الموجود في إصدارات ويندوز الحالية . نبذة تاريخية ويندوز إكس بي قدمت شركة مايكروسوفت أولاً خدمة الإبلاغ عن الخطأ لـ ويندوز مع نظام التشغيل Windows XP\ . ويندوز فيستا تم تحسين الإبلاغ عن أخطاء ويندوز ب شكل ملحوظ في نظام التشغيل Windows Vista\ . و الأهم من ذلك ، أن ه تم إنشاء مجموعة جديدة من واجهات برمجة التطبيقات ( APIs ) العامة للإبلاغ عن حالات الفشل ب خلاف تعطل التطبيقات وت وقف ها . يمكن للمطورين إنشاء تقارير مخصصة و تخصيص واجهة مستخدم إعداد التقارير . يتم توثيق واجهات برمجة التطبيقات الجديدة في MSDN . تم تجديد بنية وهندسة Windows Error Reporting مع التركيز على خواص و معايير الموثوقية وتجربة المستخدم . يمكن ل خدمة الإبلاغ عن أخطاء ويندوز الآن الإبلاغ عن الأخطاء حتى عندما تكون العملية في حالة سيئة ل الغاية ، على سبيل المثال ، إذا واجهت العملية استنفاد مكدس ، وفساد PEB / TEB ، وإفساد الكومة ، إلخ . في أنظمة التشغيل السابقة قبل Windows Vista ، يتم إنهاء العملية عادةً بصمت دون إنشاء تقرير خطأ في هذه الظروف . كما تم تقديم برنامج لوحة تحكم جديد ، « تقارير المشكلات وحلول ها » ، مع ا الاحتفاظ بسجل لأخطاء النظام والتطبيقات و المشاكل ، ب الإضافة إلى تقديم حلول محتملة للمشاكل . ويندوز تم استبدال التطبيق الصغير من " لوحة تحكم تقارير وحلول المشكلات " ب قسم الصيانة في " مركز إجراءات Windows " على نظامي التشغيل WindowsوServe r R2\ . يتوفر تطبيق جديد يسمى بـ ، Problem Steps Recorder ( PSR.exe ) ، على جميع تصميمات Windows ، ويمكّن من جمع و تصوير وتسجيل الإجراءات التي يقوم ب ها المستخدم أثناء مواجهت ه لحادث تعطل ( مشكلة تقنية ) ، ب حيث يمكن للمختبرين والمطورين إنتاج الموقف لتحليل ه و تصحيح الأخطاء . تصميم النظام WER هو نظام موزع . يكتشف البرنامج من جانب العميل حالة خطأ ، و يقوم ب إنشاء تقرير عن الأخطاء ، و يقوم بتسمية المجموعات ، و يقوم بالإبلاغ عن الخطأ إلى خدمة WER . تسجل خدمة WER حدوث الخطأ ، و بعد ذلك ، بناءً على المعلومات المعروفة حول الخطأ المحدد ، قد تطلب بيانات إضافية من العميل ، أو توجه العميل إلى حل معين يقوم ب ه ب نفس ه . يمكن للمبرمجين الوصول إلى خدمة WER ل استرداد البيانات الخاصة بتقارير الأخطاء المحددة و تصحيح الأخطاء المستند إلى الإحصائيات . يتم إرسال الأخطاء التي يتم جمع ها ب واسطة عملاء WER إلى خدمة WER . توظف خدمة WER حواليخادمًا متصلة ب شبكة منطقة تخزين سعةتيرابايت تخزن قاعدة بيانات تقرير الخطأ وشبكة تخزين سعةتيرابايت تخزن ما يصل إلىأشهر من ملفات CAB الخام . يتم توفير الخدمة ل تلقي و معالجة أكثر منمليون تقرير خطأ يوميًا ، و هو ما يكفي ل البقاء على قيد الحياة مع الأحداث العالمية المرتبطة مثل ديدان الإنترنت . المجموعات في نظام Microsoft Windows Error Reporting ( WER ) ، يتم تنظيم تقارير الأعطال وفقًا لـ « مجموعات » . تصنف المجموعات القضايا حسب : اسم التطبيق ، إصدار التطبيق ، تاريخ بناء التطبيق ، اسم الوحدة ، نسخة الوحدة ، تاريخ بناء الوحدة ، رمز استثناء نظام التشغيل / رمز خطأ النظام ، وحدة رمز الإزاحة . من الناحية المثالية ، تحتوي كل مجموعة على تقارير الأعطال الناتجة عن نفس الخطأ . و مع ذلك ، هناك نوعان من الضعف في مجموعات WER ، أولاً : نقاط الضعف في الاستدلال التكثيفي ، و التي تؤدي إلى رسم الخرائط للتقارير من الشوائب في عدد كبير جدا من المجموعات . على سبيل المثال ، إذا قمت ب ترجمة التطبيق الخاص بك مرة أخرى دون أي تغييرات ، فسيتغير تاريخ إنشاء الوحدة النمطية و لٰكن س يتم وضع نفس التعطل في مجموعة أخرى . ثانياً : نقاط الضعف في الاستدلال التوسعي ، و التي تؤدي إلى تعيين أكثر من خطأ في نفس المجموعة . على سبيل المثال ، في حالة تعطل عطلان مختلفان داخل دالة strlen ، ف لن يكون هناك سوى مجموعة واحد لكلي هما . يحدث هذا ب سبب إنشاء المجموعة على عميل نظام التشغيل ويندوز دون إجراء أي تحليل للرموز على تفريغ الذاكرة . الوحدة النمطية التي يتم التقاط ها من قبل العميل Windows Error Reporting هي الوحدة النمطية في الجزء العلوي من المكدس . ينتج عن تحقيقات العديد من التقارير وحدة نمطية للخطأ ، و هي تختلف عن تحديد المجموعة الأصلي . برامج الطرف الثالث يمكن لمصنّعي البرامج و الأجهزة الوصول إلى تقارير الأخطاء الخاصة ب هم ب استخدام برنامج Microsoft Dev Center لأجهزة سطح المكتب و الأجهزة ( سابقًا Winqu al ) . ل التأكد من أن بيانات الإبلاغ عن الأخطاء تذهب فقط إلى المهندسين المسؤولين عن المنتج ، تطلب Microsoft من البائعين ال مهتمين ب الحصول على شهادة VeriSign Classالرقمية أو شهادة Digi C ert\ . الشهادات الرقمية المقدمة من قبل مرخصين ( مثل THA WTE ، Comodo ، GlobalSign ، GeoTrust ، Cybertrust ، Entrust ، GoDaddy أو ، Quo Vadis ، Trustwave ، SecureTrust ، Welles Fargo تعتبر غير مقبولة ) . يمكن لمصنّعي البرامج و الأجهزة أيضًا إغلاق الحلقة مع عملائهم عن طريق ربط توقيعات الخطأ باستجابات الإبلاغ عن أخطاء ويندوز . يسمح ذلك ب توزيع الحلول ب الإضافة إلى جمع معلومات إضافية من العملاء ( مثل إعادة إنتاج الخطوات التي اتخذو ها قبل التعطل ) وتزويد هم بروابط دعم . التأثير على البرامج المستقبلية أبلغت شركة مايكروسوفت أن البيانات التي تم جمع ها من Windows Error Reporting قد أحدثت فرقًا كبيرًا في طريقة تطوير البرامج داخليًا . على سبيل المثال ، في عام لاحظ Steve B allmer أن تقارير الأخطاء مكنت فريق Windows من إصلاح ٪ من جميع أنظمة تشغيل ويندوز وأخطاء XP في نظام التشغيل Windows XP المزود بحزمة الخدمة SP1 . تم إصلاح أكثر من نصف أخطاء Microsoft Office XP ب استخدام Office XP SP2 . يعتمد النجاح جزئيًا على مبدأ قاعدة 20\ . تكشف بيانات الإبلاغ عن الأخطاء أن هناك مجموعة صغيرة من الأخطاء المسؤولة عن الغالبية العظمى من المشكلات التي يرى ها المستخدمون . يمكن أن يؤدي إصلاح من عيوب ال تعليمات البرمجية إلى القضاء على أو أكثر من المشكلات التي يواجه ها المستخدمون . أكد مقال في صحيفة نيويورك تايمز أن بيانات الإبلاغ عن الأخطاء كانت مفيدة في إصلاح المشكلات التي شوهدت في إصدارات ويندوز التجريبية وويندوز فيستا ومايكروسوفت أوفيس . مخاوف الخصوصية و استخدام ها من قبل وكالة الأمن القومي على الرغم من أن مايكروسوفت قد قدمت ضمانات للخصوصية ، ف إن ها تقر ب أن ه يمكن تضمين معلومات التعريف الشخصية في بيانات الذاكرة والتطبيق التي تم تجميع ها فيكيلوبايت " minidum ps " و أن Windows Error Reporting يقوم ب جمع ها وإرسال ها مرة أخرى إلى مايكروسوفت . تقوم مايكروسوفت أن ه في حالة إرسال البيانات الشخصية إلي هم ، ف لن يتم استخدام ها ل تحديد المستخدمين ، وفقًا ل سياسة الخصوصية لدى شركة مايكروسوفت . و لٰكن في الإبلاغ عن المشكلات إلى مايكروسوفت ، يحتاج المستخدمون إلى الوثوق بشركاء مايكروسوفت أيضًا . تم منح حواليشريكًا حق الوصول إلى قاعدة بيانات الإبلاغ عن الأخطاء لمشاهدة السجلات المتعلقة ب برامج تشغيل الأجهزة والتطبيقات الخاصة ب هم . الإصدارات القديمة من WER ترسل البيانات دون تشفير ؛ يستخدم فقط WER من Windowsتشفير TLS . في شهر مارس من عام أصدرت شركة مايكروسوفت تحديثًا ( KB2929733 ) ل نظام التشغيل Windows Vista وو Server الذي يشفر المرحلة الأولى من WER . في شهر ديسمبر ب عام وجد مختبر مستقل أن WER يرسل المعلومات تلقائيًا إلى مايكروسوفت عند توصيل جهاز USB جديد بالكمبيوتر . وفقًا لـ Der Spiegel ، تم استغلال مراسل الأعطال في مايكروسوفت ب واسطة وحدة TAO التابعة ل وكالة الأمن القومي ل اختراق أجهزة الكمبيوتر التابعة ل الأمانة العامة ل المكسيك . وفقًا ل المصدر نفس ه ، يتم حصاد تقارير تعطل مايكروسوفت تلقائيًا في قاعدة بيانات XKeyscore التابعة ل وكالة الأمن القومي ، من أجل تسهيل هذه العمليات . المراجع شذوذ البرمجيات مكونات مايكروسوفت ويندوز