Hi,
I’m looking for a FLOSS way to have hardware resources usage ( cpu, mem, storage, network, etc… ) over time ?
Any lightweight solution suggestion ?
It can be TUI or GUI ( XFCE )
It could be nice also to can filter result/graph by process, user etc…
Thanks
You may have a bit of a hard time finding something that’s completely FLOSS that’s not on the older side (the sar visualizer being a Java desktop application being a consequence of that age). There are various ways to dump resource usage into a time series database like Prometheus (Apache2), InfluxDB (Apache2/MIT), or VictoriaMetrics (Apache2) and then visualize it with a frontend (Grafana, APGL). The database is going to be the tricky part. All of the time series DBs I’m aware of are permissively licensed. Grafana may be a good fit for you, however. It’s written in Go so it’s relatively light, although it obviously requires a browser to interact with.
Sar is the old school way to keep a rolling log of used resources:
https://www.networkworld.com/article/969982/checking-linux-system-performance-with-sar.html
Forgot to mention, there are ways to build reports from the sar output - which would give you a chance to filter the logs.
https://www.cyberciti.biz/tips/identifying-linux-bottlenecks-sar-graphs-with-ksar.html
Ahh - yes - I haven’t looked at this for a long time – the sysstat and ksar packages.
Thank you @Unattributed@feddit.online
Sar is the old school way
I haven’t looked at this for a long timeAre you sill yourself using
sar?I see that https://github.com/vlsi/ksar require java 😭 ! is there a way to have this run contained ? ( .appimage or something else ? )
Atop, btop, htop, top.
If that’s not good enough sar.
If that’s not good enough, set up cacti.
When you realize none of that stuff is actually helping you, journalctl and grep.
If you don’t mind a web UI, Netdata is great. It collects a bunch of metrics once per second and can retain them for a long period of time
It’s mainly designed for servers, but there’s no reason you couldn’t run it on a client system. They’re focusing a lot on AI/ML-based anomaly detection as well as their cloud offering at the moment, but you don’t have to use either and can just stick to the open-source agent.
https://github.com/cockpit-project/cockpit with https://github.com/performancecopilot/pcp gives metrics but too little compared to what you are asking for. The historical data is simply cpu usage, memory usage, disk i/o and network usage.
pcp can also be used with grafana. https://grafana.com/grafana/plugins/performancecopilot-pcp-app/Cockpit example:

btop? it’s pretty customizable, if a bit too flashy (by default) to my liking. https://github.com/aristocratos/btop - should be available on repositories for most distros.
Thank @Malix@sopuli.xyz
Does
btoprecord uid, pid in it’s csv output ?I don’t think btop even records to any output file, it’s more of a “taskmanager with graphs” than a logging utility.
Uh, what about gnome-system-monitor?
It doesnt graph over time really, it only does it while open and loses the data if you close it.
Here’s an actual answer, a system monitor with historical data: https://beszel.dev/
It’s a webUI but that shouldn’t really matter vs an app with its own GUI.








