我对在CentOS上监控每个文件的磁盘IO的实用程序或进程感兴趣.
在Win2008上,resmon实用程序允许这种类型的向下钻取,但是我找到的Linux实用程序都没有这样做(iostat,iotop,dstat,nmon).
我对监控数据库服务器上的IO瓶颈感兴趣.使用MSsql,我发现它是一个信息性的诊断,以了解哪些文件/文件空间受到最严重的打击.
SystemTap可能是你最好的选择.
原文链接:https://www.f2er.com/centos/374077.html以下是iotime.stp示例的输出结果:
825946 3364 (NetworkManager) access /sys/class/net/eth0/carrier read: 8190 write: 0 825955 3364 (NetworkManager) iotime /sys/class/net/eth0/carrier time: 9 [...] 117061 2460 (pcscd) access /dev/bus/usb/003/001 read: 43 write: 0 117065 2460 (pcscd) iotime /dev/bus/usb/003/001 time: 7 [...] 3973737 2886 (sendmail) access /proc/loadavg read: 4096 write: 0 3973744 2886 (sendmail) iotime /proc/loadavg time: 11
缺点(除了学习曲线)是您需要安装内核调试,这在生产系统上可能是不可能的.但是,您可以使用cross-instrumentation在开发系统上编译模块,然后在生产系统上运行.ko.
或者,如果您不耐烦,请查看初学者指南中的Chapter 4. Useful SystemTap Scripts.