- يتيح PerfMon إجراء قياسات في الوقت الفعلي وتسجيلات طويلة المدى باستخدام عدادات دقيقة وقابلة للتكوين.
- تسهل مجموعات Collector وLogman عمليات الالتقاط المتكررة والأتمتة على الخوادم.
- تساعد عتبات الذاكرة ووحدة المعالجة المركزية والقرص والشبكة في اكتشاف الاختناقات والتسريبات.
- يكمل Reliability Monitor التحليل من خلال إظهار الأعطال ومشاكل التوافق.

بيرفمون (مراقبة الأداء) هل الأداة المثالية للمراقبة في نظام التشغيل WindowsPerfMon: يتيح لك عرض مقاييس الأداء في الوقت الفعلي وعلى المدى الطويل، وتحليلها لوحدة المعالجة المركزية والذاكرة والقرص الصلب والشبكة وعمليات محددة. بخلاف مدير المهام، يأخذ PerfMon عينات على فترات منتظمة ويسجلها على القرص، مما يجعله مثاليًا لرصد المشاكل التي تظهر فقط بعد ساعات من التشغيل، مثل تجاوزات الذاكرة أو تسرب الموارد في الخدمات والتطبيقات.
في هذا المقال نعرض لكم كيفية استخدام PerfMon. من اختيار وفهم العدادات الصحيحة وضبط أخذ العينات والقياس في المخططات، إلى إنشاء مجموعات تجميع البيانات لتسجيل المقاييس في ملف (BLG/CSV.
ما هو PerfMon ومتى نستخدمه؟
Performance Monitor (PerfMon) هو عارض ومسجل العدادات الأصلي لنظام التشغيل Windows.. يعرض المقاييس في شكل رسوم بيانية وبيانات خام تم الحصول عليها من عدادات النظام والتطبيق (على سبيل المثال، من .NET CLR أو عملية محددة). أكبر ميزة لها على المرافق "السريعة" مثل إدارة المهام يمكنك تركه يعمل لعدة ساعات أو أيام، مع عينات دورية، لاكتشاف الاتجاهات الحقيقية (القمم، خطوط الأساس، النمو المستدام).
بيرفمون أمر بالغ الأهمية ل تشخيص نمو الذاكرة أو تسرب المقبض أو الخيطوعزل المكونات المُسببة للمشاكل بإجراء اختبارات مُحددة. على سبيل المثال، إذا كنت تشك في وجود تسريب للذاكرة، فستُفعّل عدادات مثل "البايتات الخاصة" و"عدد المقابض" و"عدد الخيوط" للعملية المُتأثرة، بالإضافة إلى عدادات ذاكرة .NET CLR مثل "عدد البايتات في جميع الأكوام" و"حجم كومة الجيل الثاني" لتطبيقات .NET، لمعرفة ما إذا كان النمو يحدث أثناء عملية تجميع البيانات (GC) أو خارجها.

طرق فتح PerfMon والأوضاع المتخصصة
يمكنك فتح PerfMon من قائمة ابدأ، ابحث عن "الأداء" أو "perfmon" وقم بتشغيله كمسؤول عندما تذهب لإنشاء سجلات أو استعلام عن أجهزة الكمبيوتر البعيدة.
إذا كنت تفضل سطر الأوامر (Win+R أو CMD)، لديك أوضاع مباشرة مفيدة للغاية مع بناء الجملة التالي:
perfmon </res|report|rel|sys>
ماذا يفعل كل خيار؟
- /لحم لفتح عرض الموارد
- /تقرير لبدء تشغيل مجموعة أدوات تشخيص النظام وعرض تقرير.
- / يختلط لفتح مراقب الموثوقية.
- / sys للانتقال مباشرة إلى شاشة الأداء الكلاسيكية.
مجلس:إذا كنت تريد التحقق من موثوقية المعدات، بيرفمون / REL إنه اختصار مباشر للاستقرار وسجل الأخطاء.
مراقبة الثبات يوجد أيضًا في لوحة التحكم > النظام والأمان > الأمان والصيانة. اختصار آخر: اكتب "reliab" في بحث قائمة ابدأ، ثم اختر "عرض سجل الموثوقية". ستظهر لك الأحداث المهمة والتحذيرات والمعلومات حسب اليوم أو الأسبوع، مع إمكانية الوصول إلى تفاصيل تقنية من فشل التطبيق والسائق.
التصور في الوقت الحقيقي: إضافة العدادات وفهمها
لرؤية الرسم البياني المباشرافتح "مراقب الأداء" في الشجرة على اليسار. إذا كانت هناك عدادات مُحمّلة مسبقًا وتريد بدء التنظيف، فحددها في الجدول أدناه واضغط على سوب. بعد ذلك، في منطقة الرسم البياني، انقر بزر الماوس الأيمن > إضافة عدادات… لفتح مربع الحوار الذي يحتوي على جميع الفئات المتاحة.
اختر فئة الاهتمام والعداد ومثيل الكائن (على سبيل المثال، عمليتك). لتشخيص الذاكرة والموارد في تطبيق معين، أضف عدادات المفاتيح هذه من المجموعة طريقة عملنا y ذاكرة .NET CLR حيثما كان ذلك مناسبا:
- العملية \ البايتات الخاصة:ذاكرة خاصة مخصصة للعملية (غير مشتركة مع الآخرين). يشير النمو المستدام إلى الاستهلاك الفعلي للذاكرة الافتراضية الخاصة بها.
- العملية \ عدد المقابض: عدد المقابض المفتوحة. غالبًا ما تشير الزيادات المستمرة إلى تسربات في الموارد (الجلسات، كائنات النظام).
- العملية \ عدد الخيوطعدد الخيوط النشطة في العملية. قد تشير الارتفاعات غير المتوقعة إلى مشاكل في التزامن أو خيوط غير مكتملة.
- ذاكرة .NET CLR \ # بايتات في جميع الكوماتإجمالي الذاكرة لكائنات .NET. إذا زادت دون استقرار، فتحقق من ضغط GC والمراجع غير المنشورة.
- حجم كومة ذاكرة .NET CLR \ الجيل الثانيحجم كومة الجيل الثاني (العناصر طويلة العمر). يشير النمو المستمر إلى وجود عناصر طويلة العمر غير مجمعة.
فسر الرسم البياني بعين ناقدةإذا لاحظتَ تزايدًا مطردًا في عدد البايتات الخاصة، مع ثبات عدد البايتات في جميع أكوام البيانات، وثبات حجم كومة الجيل الثاني، فإن النمو لا يحدث في كومة .NET، بل في الذاكرة/الاحتياطيات الأصلية للعملية. يشير هذا النمط عادةً إلى تسرب خارج كومة البيانات (مثل: مخازن مؤقتة أو معالجات غير مجمدة).

ضبط الرسم البياني: المقياس والفاصل الزمني والمدة
يسمح PerfMon ضبط رؤية كل عداد وفترة التاريخ التي تراها. صحافة Ctrl + Shift + A لتحديد جميع العدادات في القائمة أدناه، انقر بزر الماوس الأيمن واختر مقياس العدادات المحددة، لذلك سوف تكون جميعها مرئية دون أن يقوم أحدها "بتسطيح" الباقي.
يفتح خصائص الرسم البياني انقر بزر الماوس الأيمن > خصائص... واضبط معدل أخذ العينات في علامة التبويب "عام". على سبيل المثال، اضبط معدل أخذ العينات كل 10 ثوانٍ، واضبط المدة على 10000 لتغطية ساعتين ونصف تقريبًا في العرض. كلما طالت مدة العرض، كان من الأفضل أن يكون معدل أخذ العينات متباعدًا لتجنب الملفات الضخمة وزيادة تحميل جهاز الكمبيوتر.
نصيحة إضافيةيعرض PerfMon خصائص وطرق ActiveX، مما يسمح لك بدمجها أو التحكم فيها من أدوات تطوير أخرى وحتى تضمينها كعنصر تحكم في تطبيقك الخاص إذا لزم الأمر.
الأتمتة باستخدام Logman: الإنشاء والبدء والإيقاف
Logman.exe هي أداة سطر الأوامر لإنشاء مجموعات العدادات وإدارتها.افتح موجه الأوامر بامتيازات المسؤول وقم بتشغيل أمر مشابه للأمر التالي لإنشاء مجموعة كبيرة من أدوات المراقبة المستمرة باستخدام ملف دائري:
Logman.exe create counter Avamar -o "c:\\perflogs\\Emc-avamar.blg" -f bincirc -v mmddhhmm -max 250 -c "\\LogicalDisk(*)\\*" "\\Memory\\*" "\\Network Interface(*)\\*" "\\Paging File(*)\\*" "\\PhysicalDisk(*)\\*" "\\Processor(*)\\*" "\\Process(*)\\*" "\\Redirector\\*" "\\Server\\*" "\\System\\*" -si 00:00:05
إلى بدء وإيقاف الالتقاط، الاستخدامات:
Logman.exe start Avamar
Logman.exe stop Avamar
نصائح للأوامر: يُنشئ الأمر -f bincirc سجلًا ثنائيًا دائريًا (يُحدد -max الحجم بالميجابايت)، ويُحدد -si فترة أخذ العينات، ويُضيف -c عدادات بشكل جماعي للكائنات ومثيلاتها. استخدم المسارات المقتبسة وعلامات الإفلات المائلة العكسية عند كتابة النصوص البرمجية أو تصدير التكوين.
متى تستخدم Logman؟ انها مثالية ل جمع البيانات لمسافات طويلة على الخوادم، يمكنك أتمتة التشخيص أو توحيد عمليات الالتقاط عبر أجهزة متعددة. يمكنك جدولة ذلك باستخدام "مجدول المهام" وتدوير الملفات دون أي تدخل.

العدادات والعتبات المفيدة لكل نظام فرعي
ذاكرة: يراقب السعة الفعلية، وضغط التصفية، ونضوب موارد النظام. تساعد هذه العدادات والإرشادات على فصل الأعراض عن الأسباب.
- الذاكرة \ % بايتات الالتزام المستخدمة: نسبة الذاكرة المُصرَّح بها والتي تتجاوز حدّ الالتزام. إذا تجاوزت 80% باستمرار، يُرجى مراجعة حجم ملفّ المبادلة والاستخدام الفعلي.
- الذاكرة \ الميجابايتات المتاحة: ذاكرة فعلية خالية. تحقق مما إذا كان <5% من ذاكرة الوصول العشوائي (RAM) ينخفض بشكل متكرر (و<1% يُعدّ أمرًا بالغ الأهمية).
- الذاكرة \ البايتات الملتزمةإجمالي البايتات المُلتزم بها. يجب ألا يختلف بشكل كبير؛ فالتغييرات المتكررة قد تؤدي إلى توسعات في ملف الصفحات.
- الذاكرة \ مجموعة البايتات غير المقسمة: مجموعة غير مقسمة إلى صفحات (كائنات لا يمكن نقلها إلى القرص). التشبع المستمر (> 80٪) ترتبط بأحداث مثل عام 2019 (استنفاد المسبح غير المصنف).
- الذاكرة \ مجموعة بايتات الصفحات: : مجموعة مقسمة إلى صفحات. تشير القيم الثابتة > 70% من الحد الأقصى إلى خطر وقوع حدث عام 2020 (استنفاد مجموعة مقسمة إلى صفحات).
المعالج:ابحث عن الأحمال المستمرة وإشارات الإدخال/الإخراج الثقيلة أو برامج التشغيل الصاخبة.
- معلومات المعالج \ % وقت المعالج (جميع الحالات): >90% مستمرة على وحدة معالجة مركزية واحدة أو >1% على معالجات متعددة، مما يشير إلى زيادة تحميل وحدة المعالجة المركزية.
- المعالج \ % الوقت المميز:وقت وضع النواة. قد يشير تجاوز 30% باستمرار على خوادم التطبيقات/الويب إلى زيادة تحميل برنامج التشغيل أو النظام.
- المعالج \ % وقت المقاطعة y % وقت DPC: > 25% تشير إلى نشاط مكثف للجهاز (بطاقة الشبكة، القرص، وما إلى ذلك).
- النظام \ تبديلات السياق/ثانية y المعالج \ المقاطعات/ثانية:مفيد لعرض ضغط تبديل السياق ونشاط المقاطعة.
أحمر: يشير إلى صحة NIC وجودة الاتصالات.
- واجهة الشبكة\الحزم المستلمة تم تجاهلها: يجب أن تظل قريبة من الصفر؛ تشير القيم المتزايدة عادةً إلى عدم كفاية المخازن المؤقتة/الأجهزة.
- أخطاء واجهة الشبكة\الحزم المستلمة: : الأخطاء > 2 المستمرة تتطلب مراجعة الروابط/الكابلات/برامج التشغيل.
ديسكو: يقيس التشبع والزمن والسعة.
- PhysicalDisk \ % وقت الخمول: نسبة وقت الخمول. يشير الانخفاض المستمر إلى انشغال القرص، ويعكس السعة المتبقية.
- القرص المادي \ متوسط ثانية القرص/القراءة y متوسط ثانية القرص/الكتابةزمن انتقال متوسط. المراجع النموذجية (الإرشادات): قراءات ممتازة < ٨ مللي ثانية، مقبول < ١٢ مللي ثانية، مقبول < ٢٠ مللي ثانية، ضعيف > ٢٠ مللي ثانية؛ كتابة ممتازة < ١ مللي ثانية، جيد < ٢ مللي ثانية، مقبول < ٤ مللي ثانية، ضعيف > ٤ مللي ثانية.
- PhysicalDisk \ متوسط طول قائمة انتظار القرص: ذيول متوسطة. القيم الأقل من 2× تكون عادةً معقولة.
- القرص المادي \ تقسيم الإدخال/الإخراج في الثانيةانقسام عمليات الإدخال/الإخراج بسبب التجزئة أو عدم كفاية أحجام الكتل. كلما كان الحجم أصغر، كان ذلك أفضل.
- LogicalDisk \ % المساحة الحرة:اترك دائمًا مساحة خالية بنسبة > 15% (موصى بها ≥ 25%) على وحدات التخزين المنطقية للنظام.
كائنات القرص: المادية مقابل المنطقية.
- القرص المادي يضيف إمكانية الوصول إلى جميع أقسام الجهاز المادي (يحدد الأجهزة).
- القرص المنطقي يقيس قسمًا أو نقطة تثبيت محددة. مع الأقراص الديناميكية، يمكن لوحدة التخزين المنطقية أن تغطي عدة أقراص مادية، وستعكس عداداتها الإجمالي.
عملية: لربط الموارد بسلوك تطبيق معين، ومراقبته العملية \ % وقت المعالج, بايتات خاصة, بايتات افتراضية y مجموعة العمل. عدد المقابض من المهم إذا كنت تشك في وجود تسربات في حمام السباحة؛ نمو مقابض غالبا ما يتزوجون مع زيادات غير طبيعية في مجموعة غير مقسمة/مقسمة إلى صفحات.
مراقبة الموثوقية: التحقيق في حالات الفشل والتوافق
يلخص Windows Reliability Monitor الاستقرار والأحداث حسب اليوم أو الأسبوع، تصنيف الحرجة والتحذيرية والمعلوماتيةمن كل عمود، يمكنك فتح "عرض التفاصيل الفنية" لتفقد الوحدات النمطية والرموز والتوقيعات الرقمية للملفات الثنائية المعنية.
- مثال عمليستجد إدخالات مثل svchost.exe_MapsBroker أو تطبيقات أخرى معطلة. أحيانًا، تكون الوحدة المُبلغ عنها (مثل Kernelbase.dll) تابعة لنواة Windows وموقّعة من قِبل Microsoft، مما يشير إلى أن السبب الرئيسي ليس النواة، بل التطبيق أو المكون الإضافي الذي يعمل في مساحة المستخدم لديك.
- ماذا تفعل عندما يفشل تطبيق قديمشغّل مستكشف أخطاء التوافق وحاول تفعيل وضع التوافق (مثل Windows 7) وتعطيل معايرة DPI العالية إذا واجهت مشاكل في الواجهة أو الأداء. لقد ثبت أن هذا الإعداد يحل مشاكل الأعطال في البرامج القديمة.
- ربط نتائج الاستقرار مع PerfMonيُدمج سجل الأعطال مع سجلات العدادات لمعرفة ما إذا كانت البايتات الخاصة، أو عدد المعالجات، أو زمن وصول القرص مرتفعًا قبل التعطل. يُتيح لك هذا الارتباط تحديد مسار للتنفيذ.
- إغلاق عملي:باستخدام PerfMon وReliability Monitor، يمكنك التشخيص من الأعراض (التعطل، البطء) إلى السبب (تسرب الذاكرة، عنق الزجاجة في القرص، 100% من وحدة المعالجة المركزية، أخطاء الشبكة)، بدعم من العدادات والعتبات التي ترشدك بوضوح.
إذا كنت بحاجة دليل سريع للبدء:افتح PerfMon، وأضف عدادات لعملية الهدف (البايتات الخاصة، و% وقت المعالج، وما إلى ذلك)، واضبط العينات والمدة لتغطية النافذة التي تحدث فيها المشكلة، وسجل في الملف باستخدام Collector Set، وإذا كان ذلك ممكنًا، فقم بالأتمتة باستخدام Logman على الخوادم أو بيئات الاختبار التي تحتاج إلى التشغيل لساعات.
محرر متخصص في قضايا التكنولوجيا والإنترنت بخبرة تزيد عن عشر سنوات في الوسائط الرقمية المختلفة. لقد عملت كمحرر ومنشئ محتوى لشركات التجارة الإلكترونية والاتصالات والتسويق عبر الإنترنت وشركات الإعلان. لقد كتبت أيضًا في مواقع الاقتصاد والمالية والقطاعات الأخرى. عملي هو أيضا شغفي. الآن من خلال مقالاتي في Tecnobits، أحاول استكشاف كل الأخبار والفرص الجديدة التي يقدمها لنا عالم التكنولوجيا كل يوم لتحسين حياتنا.