Hi, On 6/9/20 3:39 PM, Laura Fernández Becerra wrote: > I would like to know if is it possible by using Prometheus to record the > CPU, RAM, net I/O of every process in a system for an interval of time. > Thanks in advance!
Something like that might be (almost) possible with a process_exporter such as [1]. Keep in mind that a process list with all its stats will always be a specific snapshot of some point in time, even with a very short scrape interval. For example, short-lived processes might well be missed by such a scrape, even if they take up a large part of CPU time. In many cases its more useful to gather such statistics on some higher level such as container, systemd or cgroup (which both techniques use). cadvisor and maybe the systemd_exporter would be good candidates for that. Also keep in might that depending on your workload you might see a large number of processes with individual names/PIDs over time. This may lead to cardinality explosions which are hard to handle for Prometheus. In other words: If you accept some tradeoffs, it's possible, but if you intend to leave this running for a larger fleet and/or a longer timeframe, you might want to look into other tools as well. If you need more specific insights, I would suggest looking for some way of tracing (e.g. perf, kprobes, execsnoop) instead. Kind regards, Christian [1] https://github.com/ncabatoff/process-exporter -- You received this message because you are subscribed to the Google Groups "Prometheus Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-users/40cc0efc-5c09-c9ca-989c-964d181627ea%40hoffmann-christian.info.

