sysdig 是一個超級系統工具,它可以用來捕獲系統狀态資訊,在運維工作中sysdig能很友善的排查異常、定位故障,它還能儲存資料進行分析,并且提供強大的指令接口。
在了解sysdig強大之處之前,首先得安裝sysdig,我這裡是環境是centos6.7.
1.建立gpg信任密鑰,配置yum倉庫
rpm --import https://s3.amazonaws.com/download.draios.com/DRAIOS-GPG-KEY.public
curl -s -o /etc/yum.repos.d/draios.repo http://download.draios.com/stable/rpm/draios.repo
2.安裝epel倉庫
rpm -i http://mirror.us.leaseweb.net/epel/6/i386/epel-release-6-8.noarch.rpm
3.安裝核心頭
yum -y install kernel-devel-$(uname -r)
4.安裝sysdig
yum -y install sysdig
如果安裝過程中報下面這個錯的話,修改/etc/yum.repos.d/epel.repo 将baseurl的注釋取消,mirrorlist的注釋掉即可

安裝成功,接下來sysdig使用示例
sysdig -cl | less 可以檢視sysdig内建的各個系統狀态檢視相關子產品
1.程序和cpu使用率
檢視整個cpu使用情況
sysdig -c topprocs_cpu
檢視cpu0的使用情況
sysdig -c topprocs_cpu evt.cpu=0
檢視程序的标準輸出,我這裡在執行指令之後用ssh又打開了兩個終端
ysdig -s1484 -A -c stdout proc.name=sshd
2.磁盤IO
檢視磁盤io使用資訊
sysdig -c topprocs_file
檢視讀寫最多的檔案
列印指定程式正在讀取或寫入的檔案
sysdig -c topfiles_bytes proc.name=cp
檢視所有檔案名為passwd的IO活動
sysdig -A -c echo_fds "fd.filename=passwd"
顯示活動的IO類型
sysdig -c fdbytes_by fd.type
3.網絡
檢視正在使用網絡的程序
顯示到主機192.168.1.253的往來資料
以二進制顯示
sysdig -s2000 -X -c echo_fds fd.cip=192.168.1.253
以 ASCII碼顯示
sysdig -s2000 -A -c echo_fds fd.cip=192.168.1.253
檢視連接配接最多的伺服器端口
sysdig -c fdcount_by fd.sport "evt.type=accept"
按位元組數
sysdig -c fdbytes_by fd.sport
檢視用戶端連接配接最多的IP
sysdig -c fdcount_by fd.cip "evt.type=accept"
sysdig -c fdbytes_by fd.cip
4.應用程式
檢視機器所有的http請求
sudo sysdig -s 2000 -A -c echo_fds fd.port=80 and evt.buffer contains GET
檢視機器所有的sql select查詢
sudo sysdig -s 2000 -A -c echo_fds evt.buffer contains SELECT
檢視所有的httpd錯誤
sysdig "proc.name=httpd and evt.type=open and evt.failed=true"
檢視系統調用用用的時間
sysdig -c topscalls_time