process Monitor

from https://www.qa-knowhow.com/?p=1061


找出應用程式的疑難雜症 by process Monitor

這篇文章主要說明應用程式出錯的幾種情況,例如:
  • 應用程式變得很慢
  • 異常錯誤
  • 耗用許多的 CPU 資源
  • 應用程式無法正常啟動
建議可以使用 Process Monitor 觀察並且解決這些異常的狀況。

如何取得 process Monitor

相關的工具可以在這個網站上取得 www.microsoft.com/technet/sysinternals

啟動 process Monitor

工具下載之後,直接執行就會開始擷取系統所有的”事件”
事件包含:網路、檔案存取、Registry Key 存取
事件擷取之後,可以利用這個工具分析檔案、網路與CPU使用狀況,如下圖所示:
Tools > Process Activity Summary
ProcessActSummary

Filter 

由於抓取的電腦系統事件可能超過上千個,因此可以利用 Filter 的功能,
將關鍵的事件過濾,筆者這邊建議幾種常用而且有效的過濾方式
  • Operation is “TCP Connect”
  • Operation is “RegSetValue”
  • Operation is “WriteFile”
  • “Category” is “Write”
為什麼建議設定這些 filter 呢?
主要是因為我們想要專注應用程式對於系統做那些改變?
這個改變主要不外乎是檔案的寫入或是註冊碼的寫入

另外 Operation is “TCP Connect”,主要看的是這個應用程式是否有異常或是往外連線的狀況,如果有往外連線,那麼主要的溝通內容與目的就必須進一步釐清。
舉例來說,如果一個”小算盤”的應用程式,有大量的 TCP connect 對外部的電腦連線與溝通,那麼該連線的目的就很可疑,也是另外一個偵測可疑病毒的方法之一。


processFilter

Log量還是很大怎麼辦?

這邊建議三個設定
  • Options > history Depth  (限制事件擷取的深度)
  • Filter > Drop Filtered Events (將部分不需要的系統事件排除)
  • File > Backing File > To Disk (擷取時儲存至檔案)
ProcessMon_Logsize


Analysis Summary

Process Monitor 功能最強的就是它的分析功能
可以針對 process ,  activity, File, Registry, Network  ..等提供各式歷史的分析摘要
可以初步了解電腦主要都在忙什麼, CPU, process, Memory, Disk  or Network
對於效能瓶頸分析,這是一個利器 !
ProcAnalysis





留言

熱門文章