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

找出應用程式的疑難雜症 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

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *