Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Per-process, per-disk IO accounting.
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
tlhonmey
n00b
n00b


Joined: 06 Nov 2014
Posts: 9

PostPosted: Wed Sep 18, 2024 2:24 am    Post subject: Per-process, per-disk IO accounting. Reply with quote

I keep getting asked for a way to monitor not only how much disk IO each process on the system is using, but how much of it is going to which specific disk in the system.

All of the basic IO monitoring tools everyone recommends just give total IO per process and total IO per disk, which doesn't let one figure out which of the high-throughput processes is hammering the one specific disk that is overloaded.

There are a number of advanced system audit and logging tools, but the feature description is always a little vague on details, and the search engines I've tried don't seem to be able to work with the nuance of my requirements. So I'm down to asking if there's anyone out there who has set up such a thing before and knows which tools will actually work.

For clarity, the system is pushing something like 240 megabytes/second to bulk storage drives via a data processing pipeline, and some part of that pipeline is writing a lot more data to the OS drive than it should be, but I'm not finding any way to split out how much of a process' IO is going to bulk storage and how much is going to the OS drive, so there's no way to tell which of the processes involved is the misbehaving one.

I don't care how complicated it is to set up, I just don't want to waste a lot of time going through one tool after another just to find out that they don't do what I need.

Obviously per-file, per-process IO accounting would work too since it's easy to figure out which disk a file is on.
Back to top
View user's profile Send private message
druggo
Guru
Guru


Joined: 24 Sep 2003
Posts: 319
Location: Hangzhou, China

PostPosted: Mon Sep 23, 2024 5:59 am    Post subject: Reply with quote

You can consider using the cgroup IO controller to achieve this. By placing each process that needs to be monitored into its own cgroup, you can determine the IO usage of each process by monitoring the IO activity of the cgroups.

By the way, programs started by systemd naturally have their own independent cgroups.

and if the system is already containerized, there is usually only one process per container. In such cases, the cgroup IO activity of the container will be quite clear.
_________________
HighWayToHell(blog)
https://blog.druggo.org/
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum