Linux下的一些资源信息统计工具

Linux下有专注于某一类资源信息的统计工具,如:netstat, vmstat, iostat, ifstat等各种单一统计工具;还有如:dstat 这样的号称各种资源统计工具(dstat 用 Python 语言编写)。

dstat 能够清晰显示每列的信息,特别是单位及大小很明确。最重要的是,因为它是基于模块化设计,因此我们可以很容易的写一个插件来收集我们需要的统计信息。

另外,dstat的输出还可以导出为CSV格式文件,从而可以在电子表格工具里分方便的生成统计图形。

目前 dstat 的插件已经相当多了,查看已安装的插件列表:

# dstat --list
internal:
aio, cpu, cpu24, disk, disk24, disk24old, epoch, fs, int, int24, io, ipc, load, lock, mem, net, page, page24, proc, raw, socket, swap, swapold, sys, tcp,
time, udp, unix, vm
/usr/share/dstat:
battery, battery-remain, cpufreq, dbus, disk-tps, disk-util, dstat, dstat-cpu, dstat-ctxt, dstat-mem, fan, freespace, gpfs, gpfs-ops, helloworld,
innodb-buffer, innodb-io, innodb-ops, lustre, memcache-hits, mysql-io, mysql-keys, mysql5-cmds, mysql5-io, mysql5-keys, net-packets, nfs3, nfs3-ops, nfsd3,
nfsd3-ops, ntp, postfix, power, proc-count, qmail, rpc, rpcd, sendmail, snooze, squid, test, thermal, top-bio, top-bio-adv, top-childwait, top-cpu,
top-cpu-adv, top-cputime, top-cputime-avg, top-int, top-io, top-io-adv, top-latency, top-latency-avg, top-mem, top-oom, utmp, vm-memctl, vmk-hba, vmk-int,
vmk-nic, vz-cpu, vz-io, vz-ubc, wifi

指定需要显示的列

# dstat -c --top-cpu -d --top-bio --top-latency

指定需要显示的列,并同时将结果导出到文件

# dstat --disk --mem --proc --io --sys --filesystem --tcp --vm --output dstat.csv

然后,平时使用的话可以为dstat建立一个别名:

# alias dstat='dstat -cdlmnpsy'

更多用法请自行查看dstat的manual以及针对自己的需求进行搜索&测试。

################

ifstat 是一个统计网络接口活动状态的工具。在Ubuntu下使用命令:sudo apt-get install ifstat 安装完毕后直接输入ifstat即可实时查看网卡流量

iftop 是一款实时流量监控工具,监控TCP/IP连接等,缺点就是无报表功能。必须以root身份才能运行。

vmstat 命令报告关于内核线程、虚拟内存、磁盘、陷阱和 CPU 活动的统计信息。由 vmstat 命令生成的报告可以用于平衡系统负载活动。系统范围内的这些统计信息(所有的处理器中)都计算出以百分比表示的平均值,或者计算其总和。

netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等统计数据,一般用于检验本机各端口的网络连接情况。

##########

相关参考资源:
再增加一些学习资源:

发表评论

电子邮件地址不会被公开。 必填项已用*标注