beszel icon indicating copy to clipboard operation
beszel copied to clipboard

[Feature] Improve CPU, Memory, Disks, SWAP and Process Monitoring

Open svenvg93 opened this issue 6 months ago • 11 comments

Sorry for the big PR as most changes are related to each other it made sense to do it all in ones.

General

  • Add an optional legend to the charts, legend can be enabled/disabled in the settings page.

skipped bandwidth and Docker charts for this due to the other prs for these charts, will handle those in the other prs.

CPU

  • Add System/User/IOWait/Steal stats
  • Add Stats per Core
Scherm­afbeelding 2025-08-31 om 19 01 37 Scherm­afbeelding 2025-08-31 om 19 01 32

Memory / Swap

  • Add the Used/Cache stats for Swap
  • Always show the Swap chart even when all the Swap is free/unused

Disks

  • Add the mount path as for extra disks as heading name to make it more informative.
  • Add Inodes used.
Scherm­afbeelding 2025-07-01 om 21 05 03
  • Add a column for extra disks that only shows up when there are extra disks. With mouse over to see the mount path.
  • Show the free amount in an tooltip.
Scherm­afbeelding 2025-07-01 om 21 04 36 Scherm­afbeelding 2025-08-31 om 19 00 05

Processes

  • Show count of process running per state Scherm­afbeelding 2025-08-31 om 19 00 08

closes https://github.com/henrygd/beszel/issues/278 closes https://github.com/henrygd/beszel/issues/741 closes https://github.com/henrygd/beszel/issues/748 closes https://github.com/henrygd/beszel/issues/379 closes https://github.com/henrygd/beszel/issues/343 closes https://github.com/henrygd/beszel/issues/332 closes: https://github.com/henrygd/beszel/issues/850 closes: https://github.com/henrygd/beszel/issues/551 closes: https://github.com/henrygd/beszel/issues/2 closes https://github.com/henrygd/beszel/issues/980 closes https://github.com/henrygd/beszel/issues/1119 closes https://github.com/henrygd/beszel/issues/1122 closes https://github.com/henrygd/beszel/issues/930 closes https://github.com/henrygd/beszel/issues/446

svenvg93 avatar Jun 27 '25 21:06 svenvg93

@henrygd Taking your comment in the other PR about the Load Average into account, I’m guessing the Extra Disks section is also taking up too much space here, especially when there are many disks. I’ll look into creating a more compact view for it — maybe something where the user can select 2 or 3 disks they want to focus on.

Idea: One there is one disk we just show it as normal. Scherm­afbeelding 2025-07-15 om 19 55 44

When there are more we show an x Disks with an tooltip to show them all. Scherm­afbeelding 2025-07-15 om 19 54 59

svenvg93 avatar Jul 15 '25 05:07 svenvg93

@henrygd would it be possible to get this one in the 0.12 release as it would be great possibility to deliver some of the most requested features 😁

svenvg93 avatar Jul 24 '25 20:07 svenvg93

I'm trying to get the 0.12.0 release out today or tomorrow (dealing with a WinGet upgrade issue). So it won't be in that, but I can definitely get it in a patch release afterwards.

I like the look of the tooltip for the extra disks. Maybe we can add it to the existing disk column rather than adding the extra column?

henrygd avatar Jul 24 '25 20:07 henrygd

I like the look of the tooltip for the extra disks. Maybe we can add it to the existing disk column rather than adding the extra column?

That is a good idea as well, the only doubt I have with the tooltip is that it might become to big when there is a lot of disks. Maybe we can add a "+" next to the current disk and have it expend a sheet with all the disks, it will give enough room of the disks.

svenvg93 avatar Jul 25 '25 04:07 svenvg93

I like the look of the tooltip for the extra disks. Maybe we can add it to the existing disk column rather than adding the extra column?

I move the tooltip to the Disk colunm 😄

svenvg93 avatar Jul 28 '25 17:07 svenvg93

Hello! I can't tell from the issue description or screenshots: Does this add the ability to show max memory use when plots are aggregated? That'd be very helpful for detecting memory leaks.

jonashaag avatar Aug 20 '25 06:08 jonashaag

FYI - I moved some API related stuff to its own module which may create more merge conflicts on multiple PRs. Please don't worry about this as I will sort it out when merging.

These changes are good but I'm not 100% sure about adding free memory and free disk space. To me it's already clear how much free memory exists by the empty space and the fact the Y axis is based on the total value.

The chart is also a little harder to read, at least for me. Maybe it would be easier if the order was always free at the top, cache / buff in the middle, and used at the bottom.

Just my two cents, and I'm happy to include free if it's the standard way that other software displays this. I'll look further into it :)

henrygd avatar Aug 28 '25 22:08 henrygd

@jonashaag It does not but I'll add that to my list.

henrygd avatar Aug 28 '25 22:08 henrygd

I'm fine with removing the free part, if you prefer that. It might make the charts easier to read.

edit: I removed them.

svenvg93 avatar Aug 29 '25 05:08 svenvg93

@henrygd This one is up to date and ready as well

svenvg93 avatar Aug 30 '25 21:08 svenvg93

I agree that it might be not so useful for the beszel graphs. But free disk space would definitely be a good thing for the API (like using it in Home Asisstant).

StephanRoemer avatar Aug 31 '25 14:08 StephanRoemer

@henrygd I fixed all the conflicts, hopefully without breaking anything ;)

svenvg93 avatar Oct 07 '25 08:10 svenvg93

I just added a way to pretty name devices with double underscores like sda2__Jellyfin Media.

This caused some minor conflicts again but it's no trouble for me to resolve these on my side :+1:

henrygd avatar Oct 09 '25 17:10 henrygd

@henrygd Is there anything I can do to help getting this PR across the finish line? Don't mind breaking it up in smaller PRs If that makes it easier for you.

svenvg93 avatar Oct 29 '25 17:10 svenvg93

If it's not too much trouble that would be great!

henrygd avatar Oct 29 '25 20:10 henrygd

If it's not too much trouble that would be great!

Of course! I will close this one and will slowly work on separate PRs

svenvg93 avatar Oct 29 '25 20:10 svenvg93