Linux命令strace跟蹤程式的系統呼叫-linux學習用什麼書

老男孩Linux發表於2021-05-07

strace是Linux環境下的一款程式除錯工具,用於檢查一個應用程式所使用的系統呼叫以及它所接收的系統資訊。strace會追蹤程式執行時的整個生命週期,輸出每一個系統呼叫的名字、引數、返回值和執行所消耗的時間等,是高階運維和開發人員排查問題的殺手鐧。Linux命令是Linux運維學習的必備內容。跟蹤程式的系統呼叫命令strace引數選項有哪些?

-c 統計每一個系統呼叫所執行的時間、次數和出錯的次數等。

-d 輸出strace關於標準錯誤的除錯資訊。

-f 跟蹤目標程式,以及目標程式建立的所有子程式。

-ff 如果提供-o filename,則將所有程式的跟蹤結果輸出到相應的filename.pid中,pid是各程式的程式號。

-i 輸出系統呼叫的入口指標。

-q 禁止輸出關於脫離的訊息。

-r 輸出每一個系統呼叫的相對時間。

-t 在輸出中的每一行前加,上時間資訊。

-tt 在輸出中的每一行前加上時間資訊,精確到微秒。

-ttt 在輸出中的每一行前加上時間資訊,精確到微秒,而且時間表示為UNIX時間戳。

-T 顯示每次系統呼叫所花費的時間。

-v 對於某些相關呼叫,把完整的環境變數、檔案stat結構等列印出來。

-x 以十六進位制形式輸出非標準字串。

-xx 所有字串以十六進位制形式輸出。

-o filename 將strace的輸出寫入檔案filename。

-p pid 指定要跟蹤的程式pid,要同時跟蹤多個pid,重複多次p選項即可。

-s strsize 指定輸出的字串的最大長度,跌認為32。並沒有將檔名視為字串,預設全部輸出。

-u username 以usermame的UID和GID執行所跟蹤的命令。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952968/viewspace-2771247/,如需轉載,請註明出處,否則將追究法律責任。

相關文章