上一篇: 網頁建設公司:用CSS設置圖片效果

如何建設一個網站:SystemTap是運維調試利器。
只用Wireshark抓包,流程思想和TcpDump是類似的,同樣需要選擇監(jiān)聽的網卡(這
里包括是否用混雜模式),填寫基本的過濾條件和表達式等??紤]到圖形界面不適合在服
務器端運行,故在這里不進行闡述。
在已經擁有TcpDump導出的數據包后,可以將其導入Wireshark查看,界面如圖1-5
所示。圖1-5顯示的界面相當清新。在filter中填寫過濾條件時會有自動補全的提示。比
如,只需要寫“http.res”,就自動提示了“http.response.code”。在第二行中,顯示的是解
碼后的信息,并且以協(xié)議層次作為樹結構展示,這樣大大提高了數據的可讀性。
其中,qualifier只能是trace、abbrev、verbose、raw、signal、read、write其中之一,
默認為trace。舉例如下。
◎ -eopen:等價于.e trace=open,表示只跟蹤open調用。
◎ -etraceI =open:跟蹤除了open以外的其他調用。
除了具體的系統(tǒng)調用以外,還可以指定跟蹤某一類的系統(tǒng)調用,包括file、process、
network、signal和ipc,分別代表文件操作、進程操作、網絡操作、信號操作和進程間通信。
另一個常用qualifier是signal,用來指定跟蹤的系統(tǒng)信號,默認為all。如signal=! SIGIO
(或者signal= !io),表示不跟蹤SIGIO信號。
在strace的輸出中,我們經??吹酱罅康?span lang="EN-US">“ENOENT(No such file or directory)”,這是
因為Linux本身對動態(tài)庫和頭文件等的存放位置是都多處記錄的,需要全部查詢來進行查
找。比如下面這樣。
以在不中斷和影響進程運行的情況下,暴露出其內部變量和事件信息等。
SystemTap的主要工作方式是由使用者書寫一種類似awk語法的腳本語言(一般我們
會保存成.stap/.stp文件),然后根據stap腳本自動生成一個臨時的內核模塊并加載進內核
運行。
注意它需要使用Linux的Utrace特性來探測用戶空間,所以目前對默認不支持Utrace
的Debian系服務器來說,SystemTap還不太方便使用。但對于生產線上更常見的RedHat
系服務器,SystemTap無疑是運維調試利器。