Linux
使用 Sysstat(或類似工具)的 Linux 中的 Windows 等效性能計數器
我管理一系列 Windows 和 Linux 伺服器。在 Windows 伺服器上,我有以下性能計數器每 15 秒記錄一次 CSV 文件:
瓶頸分析:
- 處理器隊列長度
- 記憶體:頁面輸入/秒(從磁碟讀取頁面以解決硬頁面錯誤的速率,即當系統的物理 RAM 太少時)
- 物理磁碟:目前磁碟隊列長度(對於每個驅動器)
- 網路介面:輸出隊列長度(每個 NIC)
一般活動:
- % 處理器時間(總計)
- 總工作集(所有程序的總和)
- 記憶體:可用 MBytes
- 物理磁碟:字節/秒(每個驅動器)
- 網路介面:總字節數/秒(每個 NIC)
我的 Linux 伺服器缺少類似的性能日誌。我看過 Sysstat ( http://sebastien.godard.pagesperso-orange.fr/ ),它看起來很有希望,雖然相當複雜。
如果我要使用 Sysstat(或其他東西),如何設置與上述 Windows 計數器等效的 Linux?
dstat 和 collectl 是很好的工具,可以為您提供系統概覽,但如果您希望獲取特定資訊以放入 CSV 文件,我認為最簡單的方法是解析 sysstat 工具或 vmstat 的輸出,或者只是解析/proc 中的原始數據。
具體來說:
- 處理器隊列長度:來自 /proc/loadavg 的 1 分鐘平均負載
- 記憶體頁輸入/輸出:來自 vmstat 輸出的 si/so 列
- 物理磁碟:iostat -x 的輸出
- 網路介面輸出隊列長度:ethtool -g ethN 和 ifconfig ethN(靜態值,所以可能沒有多大意義?)
- % 處理器時間:參見例如 mpstat 或 per-CPU with “mpstat -P ALL”
- 總工作集:參見“free”或“vmstat -s”的輸出
- 可用記憶體:free 或 vmstat -s
- 物理磁碟:見 iostat -x
- nic: ip -s link 或 netstat -i 併計算,或 sar -n DEV