2

Using

iostat -Nkx 1

I can see that I am getting regular IO on a volume group. What I'm trying to do is find a way to link that IO to a file/pipe/whatever to see what process is creating this IO and what destination it's hitting. Has anyone come across this before and solved please?

Khushil
  • 553
  • 3
  • 11

2 Answers2

1

I can't think of a definitive way, but this is an attempt that should do some work. I think, you can blktrace and collect the data and then use blkparse to see it. The system calls should show that which are responsible for generating IO. And then if you can map the system calls to the corresponding files, then you can get some clues. For example, if you see a good number of mkdir calls and you create one new dir or something, then you can attribute the IO to that.

You can even btt it and then use seekwatcher to see the IO pattern at the filesystem level, But, I don't really know of a tool to get which files are responsible for the IO.

Soham Chakraborty
  • 3,534
  • 16
  • 24
1

Have you taken a look at iotop to try to isolate the troublesome processes by name or process ID (PID)? From there, lsof -p PID would give a reasonable picture of the main files in use.

ewwhite
  • 194,921
  • 91
  • 434
  • 799