Process Monitor از Sysinternals یک ابزار تشخیصی عالی برای زمانی است که میخواهید بفهمید در فرآیند و/یا فایلها چه اتفاقی میافتد. من این ابزار را در نکته ای با عنوان Understanding Process Monitor معرفی کردم. در این نکته به شما نشان خواهم داد که چگونه از برخی از ویژگی های آن در تشخیص استفاده کنید.
در این سناریوی اول، تصور کنید که فرآیندی در حال اجرا است، اما به نظر میرسد کاری انجام نمیدهد. میخواهید بدانید که آویزان است یا در واقع کاری را انجام میدهد که در حال حاضر نمیتوانید آن را تشخیص دهید. مانند همه تشخیصها، ممکن است چندین روش وجود داشته باشد، اما از آنجایی که این نکته بر روی مانیتور فرآیند تمرکز دارد، از قابلیتهای آن برای دیدن آنچه در حال وقوع است استفاده میکنیم.
Process Monitor را راه اندازی کنید و ببینید آیا می توانید روند حرکت خود را در زیر ستون Process Name مشاهده کنید. اگر آن را نمی بینید، با کلیک کردن روی نماد دوربین دوچشمی ("یافتن") و تایپ نام فرآیند (شامل پسوند آن، به عنوان مثال "MyProgram.exe" را تایپ کنید، آن را جستجو کنید. اگر پیدا شد، Process Monitor پیمایش را متوقف می کند و ردیفی را که برای اولین بار نام فرآیند را پیدا می کند برجسته می کند. اگر از نام exe مطمئن نیستید، می توانید از نماد "Include Process from Window" (هشتم از سمت چپ) استفاده کنید. با کلیک کردن و کشیدن نماد به پنجره ای که فرآیند شما در آن اجرا می شود، از این استفاده می کنید. هنگامی که نماد را به پنجره کشیدید، ماوس را رها کنید، و Process Monitor به ردیفی می رود که فرآیند آن پنجره پیدا شده است.
فیلتر کردن یک مفهوم قدرتمند و در عین حال ساده در Process Monitor است. یک فیلتر را می توان طوری تنظیم کرد که ورودی ها را شامل شود یا ورودی ها را حذف کند. توجه به این نکته مهم است که اگر فیلتر «شامل» روشن باشد، تنها ورودیهایی که با فیلتر مطابقت دارند نمایش داده میشوند. از طرف دیگر، اگر فیلترهای "exclude" را روشن کرده باشید، همه چیز به جز آنچه در فیلتر است نمایش داده می شود. فیلترهای «شامل» همیشه بر فیلترهای «حذف» اولویت دارند.
روی نماد فیلتر (هرم وارونه) کلیک کنید. توجه داشته باشید که Process Monitor قبلاً به طور خودکار یک فیلتر «شامل» برای فرآیندی که پیدا کرده است ایجاد کرده است، بنابراین شما واقعاً مجبور نیستید کاری انجام دهید جز روی لغو در پنجره فیلتر کلیک کنید و فعالیتهای فرآیند خود را در صفحه اصلی تماشا کنید. (شکل 1 را ببینید.)
شکل 1. پنجره فیلتر مانیتور فرآیند.
در سناریوی دوم، فرض کنید فایلی در هارد دیسک شما وجود دارد که به طور متناوب رفتار عجیبی از خود نشان می دهد. به عنوان مثال، تاریخ اصلاح آن گاهی اوقات تغییر می کند یا گاهی اوقات به دلیل خطای "فایل توسط کاربر دیگری قفل شده است" خراب می شود. می توانید از Process Monitor برای تماشای فایل استفاده کنید و ببینید چه فرآیندهایی به آن دسترسی دارند.
مانیتور فرآیند را راه اندازی کنید. از آنجایی که آخرین باری که Process Monitor را اجرا کردید یک فیلتر تنظیم کردید، این تنظیمات را به خاطر میسپارد و پنجره فیلتر را بهطور خودکار باز میکند. میخواهید این جلسه را با یک صفحه تمیز شروع کنید، بنابراین روی دکمه Reset کلیک کنید تا معیارهای فیلتر کردن به تنظیمات پیشفرض خود بازگردند. سپس روی OK کلیک کنید.
فرض کنید فایلی که می خواهید تماشا کنید "C:TempIndexes.dat" نام دارد. مجدداً، میتوانید اطلاعات موجود در صفحه اصلی را مشاهده کنید تا فایل شما در ستون Path ظاهر شود، اما احتمالاً راحتتر میتوانید روی نماد فیلتر کلیک کنید و یک فیلتر «شامل» ایجاد کنید تا فقط فعالیت مربوط به آن فایل ظاهر شود.
روی نماد فیلتر کلیک کنید و در لیست کشویی بالا سمت چپ "مسیر" را انتخاب کنید. سپس "C:TempIndexes.dat" (بدون نقل قول) را در کادر سمت راست لیست کشویی حاوی کلمه "is" تایپ کنید. (شکل 2 را ببینید.)
شکل 2. فیلتر کردن روی یک نام فایل خاص.
حالا روی دکمه های Add و OK کلیک کنید تا به صفحه اصلی بازگردید. اکنون میتوانید ببینید دقیقاً چه زمانی به فایل دسترسی پیدا میشود و چه فرآیندی آن را انجام میدهد.
در یک سناریوی نهایی، فرض کنید که متوجه میشوید که به نظر میرسد مقدار فوقالعادهای از فعالیت هارد دیسک در حال انجام است. می توانید از Process Monitor برای گرفتن عکس فوری از این فعالیت برای تجزیه و تحلیل بعدی استفاده کنید. Process Monitor را اجرا کنید و فیلتر را به حالت پیش فرض خود بازگردانید، همانطور که در سناریوی دو انجام دادید. سپس، هنگامی که در صفحه اصلی هستید، روی نماد "Capture" (سوم از سمت چپ) کلیک کنید. این باعث می شود که یک عکس فوری از فعالیت فعلی گرفته شود و پیمایش متوقف شود.
برای اینکه اکنون به فعالیت دیسک این عکس فوری نگاه کنید، روی Tools | کلیک کنید آیتم منوی خلاصه فایل. کادر محاوره ای خلاصه فایل نمایش داده می شود که شامل تمام فعالیت های فایل گرفته شده توسط عکس فوری است. (شکل 3 را ببینید.)
شکل 3. خلاصه فایل بر اساس مسیر.
این خلاصه در حال حاضر بر اساس ستون مجموع رویدادها مرتب شده است، اما با کلیک بر روی عنوان ستون، داده ها بر اساس آن فیلد خاص مرتب می شوند. همچنین جالب است که روی تب "By Folder" کلیک کنید تا فایل ها را با نام آنها گروه بندی کنید. (شکل 4 را ببینید.)
شکل 4. خلاصه فایل بر اساس پوشه.
اکنون میتوانید با کلیک کردن روی علامتهای مثبت در سمت چپ و مشاهده اینکه چه فایلهایی در حال دسترسی هستند، کار را انجام دهید.
این نکته سه سناریو را ارائه کرده است که ممکن است با آنها روبرو شوید که در آن می توان از Process Monitor در تشخیص مشکلات استفاده کرد. ممکن است در طول مسیر متوجه شده باشید که بسیاری از نمادها و آیتم های منو وجود دارد که به آنها پرداخته نشده است. همانطور که در ابتدا گفته شد، بهترین راه برای کشف آنچه که Process Monitor می تواند انجام دهد این است که خودتان آن را آزمایش کنید.