trace工具的介紹和使用

2021-07-07 10:06:40 字數 1668 閱讀 4431

trace 主要用來跟蹤和記錄系統的核心(kernel)、核心擴充套件程式(kernel extension)和使用者程式(user program),尤其是對系統呼叫(system call),核心服務(kernel service)和中斷處理(interrupt handlers)進行詳細的記錄。它的記錄單位是微秒,並按照時間的順序記錄各個事件。由於trace記錄中所涉及的是作業系統底層事件,因此需要對aix的核心、系統呼叫以及中斷處理非常了解的人來解讀,因此對於普通的系統管理員最重要的是知道如何去收集trace的資訊。[@more@]trace 主要用來跟蹤和記錄系統的核心(kernel)、核心擴充套件程式(kernel extension)和使用者程式(user program),尤其是對系統呼叫(system call),核心服務(kernel service)和中斷處理(interrupt handlers)進行詳細的記錄。它的記錄單位是微秒,並按照時間的順序記錄各個事件。由於trace記錄中所涉及的是作業系統底層事件,因此需要對aix的核心、系統呼叫以及中斷處理非常了解的人來解讀,因此對於普通的系統管理員最重要的是知道如何去收集trace的資訊。 

1. trace 的工作模式 

trace 命令有三種工作模式 -- 預設模式、單一模式和迴圈模式。預設模式是將trace資料直接寫到磁碟上,而單一模式和迴圈模式則都是先將trace資料寫到記憶體的緩衝區,待trace程序終止後再寫回到磁碟;不同的是,單一模式是當緩衝區滿了後,trace程序會自動停止,並將trace資料寫到磁碟,而在迴圈模式下,當緩衝區滿後,trace程序不會停止,緩衝區會被覆蓋並迴圈使用,只有輸入「trcstop」命令後,trace程序才停止,並將trace資料寫到磁碟。 

2. trace的啟動和停止 

啟動trace的方法有很多種,使用者可參考「man trace」來獲得幫助。 

這裡舉乙個最常用的收集trace的命令作為例子:trace -a -l -t2000000 -l4000000 -o trace.out (2000000 和 4000000 只是乙個例子) 

-a : 表示trace程序在後台執行(非同步執行) 

-l :表示trace工作在迴圈模式 

-o :指定trace輸出檔案的目錄和檔名,預設的輸出檔名為 /var/adm/ras/trcfile 

-t :表示緩衝區的大小,單位為byte,預設值為128kb。 

-l :表示寫到磁碟上的trace輸出檔案的大小,單位為byte,預設值為1mb。 

在迴圈模式下,trace輸出檔案的大小應最少是緩衝區大小的一倍;而在單一模式下,trace輸出檔案的大小應最少和緩衝區大小相等。 停止trace的方法很簡單,只需要執行「trcstop」命令即可。 

注意: 

1. trace程序對系統的效能有比較大的影響,因此不要長時間的讓trace保持在執行狀態。 

2. trace所收集的資料報含了trace程序啟動和停止之間的這段時間內所有的相關資訊。所以,如果使用者是想收集某個命令的trace資訊,應當採用以下這種方式: 

trace -a -l ; command ; trcstop (command表示的是使用者需要執行的命令) 

3. 分析trace資料所需要的相關檔案 

當使用者自己收集了trace資料後,除了需要將trace輸出檔案發給ibm的工程師以外,還需要執行 /usr/bin/trcnm -a > trcnm.out 命令,然後將 trcnm.out 和 /etc/trcfmt檔案一併附上。

安卓效能優化之trace工具使用

在開發中我們想分析每段 耗時情況 就可以使用trace工具分析了,這個工具比較詳細分析每個函式耗時情況,比較直觀清晰。使用 這個工具是安卓系統自帶的直接使用就可以了 1先定義個file檔案儲存trace檔案 2在需要分析的 前面寫下面 debug.startmethodtracing file.ge...

git版本工具介紹和使用

首先呢,我們了解git是個什麼東西?以及為什麼越來越多的企業使用這個工具 git它是乙個免費,開源的分布式版本控制工具,可以敏捷高效的管理各種中大小專案,檔案的版本管理.linux macos solaris windows raspberry pi 準備環境 電腦已安裝git 如果是windows...

psql工具的使用介紹

psql l或 l d c dbname資料庫名 d tabname表名 或 d tabname表名 d idxname索引名 或 d idxname索引名 d 表名開頭字母 或 d 表名開頭字母 或 d 表名開頭字母 或 d 表名開頭字母 dt di ds dv df timing dn db d...