我试图监视 Linux 服务器中最后(例如 1、5 或 15 分钟)的交换活动。
一种方法是运行虚拟机状态并继续观看斯和所以在这些间隔期间进行计数器。
但是,我如何检查“一次性”操作(例如通过 Nagios 插件)以获取显示上述间隔期间交换活动的值?
换句话说,我需要一种方法即刻检查我的服务器是否正在主动交换。
答案1
相信你可以使用/proc/vmstat
输出,比如
cat /proc/vmstat | grep pswp
命令。
这将向您显示换入和换出计数器。
或者:
仅有的si
:
vmstat 1 1 | awk 'NR == 1 {next} NR == 2 {for (i = 1; i <= NF; i++) fields[$i] = i; next} {split($0, data); item = data[fields["si"]]; print item; totals[fields["si"]] += item} NR >= 6 + 2 {exit}'
仅有的so
:
vmstat 1 1 | awk 'NR == 1 {next} NR == 2 {for (i = 1; i <= NF; i++) fields[$i] = i; next} {split($0, data); item = data[fields["si"]]; print item; totals[fields["so"]] += item} NR >= 6 + 2 {exit}'