通过iotop或者top命令看到某个进程有大量的读写io ,但是不清楚具体是哪个文件产生的读写io。
这里整理了2个方法可以查看哪些文件在产生读写io。
bcc-tools 是一个强大的分析工具集合,里面有好多实用的工具,这里我们用到的是 filetop
# 使用方法
/usr/share/bcc/tools/filetop 1 -a [-p PID]
1:1分钟刷新
-a:显示所有类型
-p:指定pid
# 使用案例:
[root@VM-80-47-tencentos ~]# /usr/share/bcc/tools/filetop 1 -a -p 487268
....
22:59:40 loadavg: 1.24 0.39 0.20 2/172 487415
TID COMM READS WRITES R_Kb W_Kb T FILE
487268 dd 0 151 0 154624 R test.txt
487268 dd 151 0 154624 0 O zero
### 安装方法
sudo rpm --import https://s3.amazonaws.com/download.draios.com/DRAIOS-GPG-KEY.public
sudo curl -s -o /etc/yum.repos.d/draios.repo https://s3.amazonaws.com/download.draios.com/stable/rpm/draios.repo
sudo yum -y install epel-release
sudo yum -y install kernel-devel-$(uname -r)
sudo yum -y install sysdig
命令使用案例可参考
[root@VM-80-47-tencentos ~]# sysdig -c topfiles_bytes
Bytes Filename
--------------------------------------------------------------------------------
150.00M /data1/test.txt
150.00M /dev/zero
13.28M /etc/services
22.86KB /dev/null
3.17KB /usr/local/qcloud/monitor/barad/log/executor.log
2.50KB /proc/net/netstat
1.71KB /usr/local/qcloud/monitor/barad/log/dispatcher.log
1.24KB /etc/hosts
1.23KB /proc/net/snmp
1.13KB /etc/chrony.conf
[root@VM-80-47-tencentos ~]# sysdig -c topfiles_bytes "proc.name=dd" # 指定进程名称
Bytes Filename
--------------------------------------------------------------------------------
154.00M /dev/zero
154.00M /data1/test.txt
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。