How to identify heavy write to disk?
I have this problem with server running CakePHP application. The server is insanely slow, I first thought that it's application problem, but then I found constant 5-6MB/s write to disk.
What is the easiest way to find cause of such a heavy write?
The server is running Gentoo.
Solution 1:
Install iotop, and find which program is doing it.
Solution 2:
As the author of Dstat I would point to additional options. You can easily see what process is consuming the most I/O bandwidth:
dstat -ta --top-bio
or dstat -ta --top-io
The first being the top block I/O, and the second the top I/O (including cached). This may help you validate if this is what you expect (both as consumer as well as the consumption).
There are some other plugins that can help you identify the disks utilization rate:
dstat -tdf --disk-util
So if you have I/O bottlenecks, this will tell you which disk(s) are involved so you can see if something can be done about it at that end.
And if you are troubleshooting specific (network) filesystems, one can use other plugins to get more information regarding those filesystems. Dstat also has plugins for other metrics (cpu, VM, virtualization, etc...) and depending on what you need to visualize you can write your own plugins, or modify existing plugins to show exactly what you need to correlate.
However if you need help, want to contribute or have a nifty new idea, contact me to see how we can proceed...