-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Metricbeat doesnt give network io and disk io per process #7461
Comments
Oh, I see in the title only that you also mention "per process". I'm not aware of per process network metrics on Linux in the /proc unless the process has been put into its own netns. There's an open issue around grabbing this data. Additionally I do think you could get per process data with eBPF (it would just take a bit of work). So I think this is a duplicate? There's an open issue for process IO too. #4241 |
Thank you very much @andrewkroh . eBPF is just the best idea, just that integrating its stats with metricbeat may be tedious, and metricbeat is something we can't live without because of its easy compatibility with ELK stack. There are other tools out there just for network i/o and diskio nethugs and iotop respectively. By the way, i can see you've committed code in your private branch. What shall i do to consume your branch and achieve the one i've been looking for ? |
To get the netns metrics integrated I would checkout elastic/beats from master and port over the changes from andrewkroh@7dd6ba8 by hand. It's been sitting on that branch for close to 2 years and lot's of things in Metricbeat have changed. The main change being that code for collecting process data was moved over to libbeat so that will be where a lot the changes are needed now. https://github.com/elastic/beats/tree/master/libbeat/metric/system/process |
I had similar debugging issue recently and I had to use a tool like atop to get that info. So I could see disk spikes on the io dashboard, but couldn't associate it back to a process. |
Will the disk io and network io per process stats be released on a version of metricbeat in the near future? |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Imho, this shouldn't be closed, see also https://discuss.elastic.co/t/metricbeat-not-getting-diskio/251606/8 |
Reopening this since it seems that slipped attention and was closed automatically. |
Adding this to the dashboard. We recently introduced a feature to report more detailed per-cgroup network metrics, and we can piggyback off that functionality.
Either way, will probably not have time to work on this until the release after next. |
I also filed a similar issue a while ago in #18863 |
I saw you have closed the other ticket and moved it to this one. I am wondering what is the latest plan of implementing the per-process network io and disk io into Metricbeat? We have been long to this feature as well. Thanks, |
Sorry, should have been a little more descriptive. We don't have any short term plans for implementing this, as I'm going to have my hands full for the next 1-2 release cycles. As soon as we're in a place to start making enhancements soon, I'd like to prioritize this, as it shouldn't be too difficult. |
Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane) |
We need this feature too) |
@fearful-symmetry can we consider this one as closed? |
Hi Amitkanfer, We’ll test this out. Based on the conversation, it seems only the per process network stats are implemented so far? Are the per process disk stats also implemented? Best, |
@musiczhzhao you're right, still pending the disk stats per process |
Sorry about the delay here; this is still a work in progress, and I think it'll take more time than I realized. The |
…lastic#114) ## What does this PR do? Part of elastic/beats#7461 This ended up being fairly simple; we just fetch per-process IO from procfs, and these values appear to be largely identical to what's reported by the netlink taskstat. This just reads metrics from `/proc/[pid]/io` and reports them as part of other process metrics, same as how things like memory usage are reported. ## Why is it important? We want per-process I/O metrics. ## Checklist - [x] My code follows the style guidelines of this project - [x] I have commented my code, particularly in hard-to-understand areas - [x] I have added tests that prove my fix is effective or that my feature works - [ ] I have added an entry in `CHANGELOG.md`
@amitkanfer so, I think we should probably close the remainder of this. We have per-process disk IO, but per-process network IO is a different story; the implementation more or less requires copying packetbeat, to the point that users would probably be better served using the packetbeat process monitor. |
let's close and re-open if needed just for the network IO. Thanks @fearful-symmetry |
Metricbeat is lacking with big feature i.e network io and disk io. These are the most critical metrics which need to be considered. Can somebody take a look at this ?
The text was updated successfully, but these errors were encountered: