Sysdig 是 Linux 系統可視化的「核磁共振」,能捕獲系統呼叫、進程活動、網路 I/O、檔案存取等完整事件流,支援即時分析、離線重播、Lua 腳本擴展。本文涵蓋安裝、事件捕獲與儲存、輸出欄位解讀、過濾語法、Chisels 進階分析腳本實戰。
# 官方一鍵安裝腳本(支援 rpm/deb 系統)
curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash
| 指令 | 用途 |
|---|---|
sysdig | 即時輸出到標準輸出 |
sysdig -w system.scap | 儲存到檔案供離線分析 |
sysdig -n 200 -w system.scap | 捕獲 200 事件後自動停止 |
sysdig -r system.scap | 讀取並分析儲存的捕獲檔 |
每行事件包含 8 欄核心資訊:

| 欄位 | 說明 | 範例 |
|---|---|---|
| 1. 事件編號 | 遞增序號 | 5 |
| 2. 時間戳 | 納秒精度 | 10:54:50.463206317 |
| 3. CPU 編號 | 處理該事件的 CPU 核心 | 0 |
| 4. 進程名 | 進程命令名稱 | sysdig |
| 5. 執行緒 ID (TID) | Linux 執行緒識別碼 | 29043 |
| 6. 事件方向 | > 進入系統呼叫,< 返回 | > |
| 7. 事件類型 | 系統呼叫名稱 | switch, open, read |
| 8. 事件參數 | 呼叫參數與回傳值 | next=0 pgft_maj=0... |
語法:sysdig -r file.scap "過濾表達式"
sysdig -l 查看完整清單)proc.name, proc.pid, proc.exe, proc.argsfd.num, fd.name, fd.type, fd.directoryevt.type, evt.dir, evt.args, evt.latencyuser.uid, user.name, group.gid, group.namesyslog.facility, syslog.severity, syslog.message= != < <= > >= contains bcontains glob
and or not
# 僅顯示 sysdig 進程的事件
sysdig -r system.scap proc.name=sysdig
# sysdig 進程的 context switch 事件
sysdig -r system.scap proc.name=sysdig and evt.type=switch
# 特定 PID 開啟的檔案
sysdig -r system.scap proc.pid=1234 and evt.type=open
# 網路連接埠 80 的傳輸
sysdig -r system.scap fd.port=80
# 包含 "error" 字串的系統日誌
sysdig -r system.scap syslog.message contains error
Chisels 為預寫好的分析腳本,類似「分析插件」。
| Chisel | 功能 |
|---|---|
topprocs_file | 讀寫檔案最頻繁的進程排行 |
topprocs_net | 網路流量最大的進程排行 |
topprocs_cpu | CPU 佔用最高的進程排行 |
fdcount_by | 依進程統計開啟檔案描述符數量 |
spy_users | 監控使用者互動指令 |
httplog | 解析 HTTP 請求/回應 |
shellshock_detect | 檢測 Shellshock 攻擊嘗試 |
# 列出所有可用 Chisels
sysdig -cl
# 執行特定 Chisel
sysdig -c topprocs_file
# 針對捕獲檔執行
sysdig -r system.scap -c topprocs_net
Bytes Process
------------------------------
448.36KB mozStorage
220.38KB perl
1.69KB tmux
1.62KB sh
1.59KB Xorg
熟悉 Lua 者可編寫專屬分析腳本,放置於 /usr/share/sysdig/chisels/ 或 ~/.sysdig/chisels/,即可透過 sysdig -c my_chisel 呼叫。
-n 限制事件數或 -w 寫入檔案,避免即時輸出影響效能.scap) 可壓縮存檔,sysdig -r file.scap.gz 直接讀取csysdig (TUI 介面) 進行互動式探索sysdig -k https://k8s-api ... 直接採集 Kubernetes 叢集事件Sysdig 以「系統呼叫級別可視化」解決傳統 top/strace/tcpdump 割裂視野的痛點。掌握「捕獲 → 過濾 → Chisels 分析」三步驟,即可快速定位效能瓶頸、安全異常、應用故障根因。