Lobby Dashboard: System Information - Filtering Content

Started by ChirpyTurnip, April 30, 2023, 07:28:52 AM

Previous topic - Next topic
Hi,

Just wondering how I can filter the System Information widget on the Lobby Dashboard? Of particular annoyance is the disk usage section which shows a whole pile of categorised usage meters...all of which are 0%.

Disk usage   
1% / [zfs] (1.1G/207G)
1% /boot/efi [msdosfs] (1.8M/260M)
0% /tmp [zfs] (596K/206G)
0% /usr/src [zfs] (96K/206G)
0% /usr/home [zfs] (96K/206G)
0% /zroot [zfs] (96K/206G)
0% /usr/ports [zfs] (96K/206G)
0% /var/audit [zfs] (96K/206G)
0% /var/crash [zfs] (96K/206G)
0% /var/mail [zfs] (104K/206G)
0% /var/log [zfs] (7.5M/206G)
0% /var/tmp [zfs] (96K/206G)
0% /var/log [tmpfs] (3.9M/2.0G)
0% /tmp [tmpfs] (1.7M/2.0G)

All I really want is an overall disk consumption figure (which I have at the top of the list - showing 1%) - the rest might be useful for super duper power users, but I don't care as long as my disk is still got a lot of free space...when it gets past 50% I might go and look to see what's gobbling space....so until then I'd like to hide all the extra detail and save on screen real estate - I could fit the Thermal, SMART, and NTP widgets in the space occupied by all the lines of 0% for the disk usage.

There is a pencil at the top of the widget, but it is not enabled....?

Help?

Thanks!


The first one is the full usage. ZFS will work this way with different datasets so I don't think there is too much we can do. Hiding always bears the risk of someone else not finding things and calling bug.


Cheers,
Franco

May 02, 2023, 07:44:15 AM #2 Last Edit: May 02, 2023, 09:36:09 PM by ChirpyTurnip

So if it is smart enough to put the "total" as the first row then surely it can't be that hard to set an option to return only the first row, or all rows?


Similarly each chunk of data is returned in its own row for all the other elements in the
System Information widget - again an option to enable/disable each row would be kind of neat - I'm not sure I'm getting much value from always seeing that my CPU is "12th Gen Intel(R) Core(TM) i3-1215U (6 cores, 8 threads)" because I already know that, and it's never going to change.

I guess I just wish it was more configurable so I can hide what doesn't matter and surface what does...  :-(

Cheers!
[/size]
[/size]EDIT: Fixed font

Please fix the font size, this is hard to read ;)

I don't want to add filters and smartness to a static widget just because people get upset with ZFS way of things. The next one gets upset because I did add it. Endless circle.


Cheers,
Franco

I've heard this argument before...and I know that adding to a product increases the maintenance overhead - I do some SQL development so this is not a foreign concept. However I don't really buy the the argument of "If we add it then person X will be happy but person Y will be sad".

For starters we're talking about adding a configuration option, not hardcoding a feature. We can also have the default as the status quo with the opt-in being to change the appearance of an element. Those who want to hide extraneous information can and will, those who don't won't.

Furthermore OPNsense is full of features I don't use or don't need....on my part you can get rid of OpenVPN and IPsec I don't use these, I have have no idea who asked for them, so dump them already! Except that I know that *others* live and die by those features...so fine, no worries, they are there, I can simply not use them. Maybe in the future I will and then I'll be glad that they're there....  UI enhancements and filters etc are the same...:-)

Being able to filter the dashboard so you can not get lost in the weeds is simply a good design principle - Ideally everything you need will fit on a single page (on a HD screen) - today I cannot achieve this and I end up scrolling. With pfSense (I know I know) I could do this. I log into any of my FW, glance at the screen - all is well or X is broken....instantly. OPNsense can totally do this too....but not without making the modules slightly easier to tweak.

And this, as I've posted previously, is all over the place - the WireGuard module for example is really poorly designed from a UX perspective....and the widget is no exception - why does the public key need to be displayed in the widget? Like, seriously, WHY? Does anyone seriously go "Oh, it looks like /mgdTRoYwoRPdwLlqbO4pQWObI827Af2j6mwwlw6DrfC4sU7 is stale as the handshake is a bit old....I'd better call Steve to get him to take a look at [/size][/font]/mgdTRoYwoRPdwLlqbO4pQWObI827Af2j6mwwlw6DrfC4sU7 because we specifically set up /mgdTRoYwoRPdwLlqbO4pQWObI827Af2j6mwwlw6DrfC4sU7 as a back up connection in case 0HNSrxrpdh8WLXnIeHvuLQyrP0HiZkyZwRvAOHRqpfacEcCSOJf1g went down....so right now we're on n instead of n-1."  Personally I don't think this belongs on the dashboard *at all*, but if others want to see it that's fine, just give the rest of us an option to hide it...then everyone can be happy.

Similarly the widget doesn't show you how long since the last handshake, it only gives the you time of the last handshake - which means you need to know the time to know if the handshake is super current or getting a bit old - "Hmm, last hand shake was at 07:23....what the time now? Oh right, about 3 minutes ago, give or take". So not only is this the least efficient way of communicating the key fact, it's also greedy in terms of real estate because returning "2023-05-03 07:52:33+12:00" takes up more column width than just "01:35" (being one minute 35 seconds since last handshake). And yes, the WG Status tab actually reports a sensible value for last handshake...in minutes and seconds....so why doesn't the widget?

If I ever want to see something at a glance it's the dashboard...that why it exists. If I want more detail I'll click on the dashboard header and jump to the module so I can dig around....

I'm truly not bashing, but I get the overwhelming sense that UX is an afterthought and it shouldn't be....users should love (or at least like) the experience of interacting with OPNsense (or any product for that matter) and I just find myself tolerating it. And that really irks me because OPNsense is truly good and my experience has been pretty good so far but the UI is suboptimal.

Want another example? Sure - Wireguard, again - a double banger for you: If your WireGuard tunnels stall you need to restart the tunnel or Wireguard service. It turns out there is a CRON job to do this:

       
  • The CRON job is called "Renew DNS for WireGuard of stale connections" - this might be technically correct, but not as intuitive as "Attempt to recover stalled WireGuard connections"
  • The CRON job doesn't appear to be mentioned in the documentation
  • There is an option to renew ACME certificates in the ACME module that enables a CRON job automatically, but *NOT* for WireGuard - you have to know that the CRON job exists and then you have to manually enable it. Why is there no option to under Wireguard > General to automatically enable recovery?

Anyway, enough from me. I really do appreciate OPNsense and your work (I see you post on here like a rabid hamster on acid) - I just hate to see a good job done suboptimally. ;-)

    Quote from: ChirpyTurnip on May 02, 2023, 10:28:31 PM

    And this, as I've posted previously, is all over the place - the WireGuard module for example is really poorly designed from a UX perspective....

    I'm truly not bashing, but I get the overwhelming sense that UX is an afterthought and it shouldn't be....users should love (or at least like) the experience of interacting with OPNsense (or any product for that matter) and I just find myself tolerating it. And that really irks me because OPNsense is truly good and my experience has been pretty good so far but the UI is suboptimal.

       
    • The CRON job is called "Renew DNS for WireGuard of stale connections" - this might be technically correct, but not as intuitive as "Attempt to recover stalled WireGuard connections"
    • The CRON job doesn't appear to be mentioned in the documentation
    • There is an option to renew ACME certificates in the ACME module that enables a CRON job automatically, but *NOT* for WireGuard - you have to know that the CRON job exists and then you have to manually enable it. Why is there no option to under Wireguard > General to automatically enable recovery?

    Anyway, enough from me. I really do appreciate OPNsense and your work (I see you post on here like a rabid hamster on acid) - I just hate to see a good job done suboptimally. ;-)
    Wow. Yes, you are bashing. And pointing out your dislikes in a product that is available for free, and not doing it in a gracious way.
    Can you help to make it more to your liking? Code it and submit it, and let the community vote on your design decisions.
    You can't code it, fine, not everyone can. Those who can and do it for a free product don't need to be bashed. And yes of course it is clear there is a financial product behind the free one.
    There is a githib repository https://github.com/opnsense/core where you can submit the request as "issue" that can be labelled as enhancement request or "feature".

    Seriously not meaning to bash. But I am direct...that comes from being Dutch and I try to tone it down as best I can but, clearly, I am still a bit of a brick.  :-[


    I think it is important to remember that my posts are not:

         
    • Bashing - I'm not out to hurt anyone, my comments are not mindless, unconstructive, nor in my opinion unfair. If the UI was more user friendly who would complain? Feedback from users can be valuable in seeing the application and the use cases from a different perspective!
    • Targeted at anyone in particular - Yes, I refer to WG a lot...it's what I have spent most of my time on and it was a pain. It is what it is. I can also provide feedback on the traffic shaper and firewall aliases but others have already done this and there is no point adding to that...WG though I did not see much feedback.
    • A sign that I am unappreciative of the fact that the software is free - One shouldn't look a gift horse in the mouth but that doesn't mean that one may not have an opinion on it...and if voicing that opinion results in a better experience for all then what is the problem?
    • Pointless (hopefully) - The developers are clearly passionate and no doubt they want to deliver excellence - why else spend so much time forking pfSense? I'm passionate too - that's why I've left pfSense! I cannot code to save myself, my talents lay elsewhere, and include a considerable amount of UX design of late. There are users who will post on the subtleties of the static route configuration...whereas I post on the user experience. It's no less valid.
    I do get the sense though that such feedback is not always welcomed and that's a pity. I had not expected such a high level of defensiveness...but it seems that some forum users are more interested in shooting the messengers than hearing the messages as I'm not the only one to have mentioned the UI and potential opportunities to improve various aspects. They two didn't get very far...


    If I could, I would code and PR what are likely to be relatively trivial UI tweaks...but I can't...so I guess I might just have no option but to spin in the vortex of despair....


    :-\