Engineer GUI Extended Features

Sub-forum for general software improvements threads
Post Reply
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Engineer GUI Extended Features

Post by hamishmb »

I'm thinking of updating the Engineer to include some extra information soon.

EDIT: The engineer GUI will not be updated, because it is being replaced.

Here are my current plans:

System status page:
  • Add temperatures for all Pis (Not Started)
  • And time and date of last communication to all Pis (Not Started)
  • Add software version and release date for all Pis (Not Started)
Event log:
  • Add filters for severity level (Done)
  • Add option to display a configurable number of events, not just the last 50. (could include pagination) (Not Started)
Diagnostics pages (new page, shows diagnostics for every pi and the NAS box):
  • Load averages (Done)
  • CPU usage (also on system status page) (Done)
  • Memory usage (also on system status page) (Done)
  • Disk health (SMART) Cannot (yet) do due to poor commandline tools.
  • RAID array status and health (Done)
  • Uptime (Done)
  • Free disk space (Done)
  • Free backup drive space (Done)
  • Date of last database backup (Not Started)
  • Last software communication date (Not Started)
  • Last time software was automatically restarted when a crash occurred (feature not yet implemented) (Not Started)
  • List of the latest reported errors in the event log and the time of reporting (Not Started)
Control features:
  • Allow taking control of valves and pumps through the GUI (Not Started)
Does anyone have any thoughts/suggestions on what else might be useful?
Last edited by hamishmb on 30/08/2022, 9:56, edited 6 times in total.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI

Post by hamishmb »

NB: Updated to include field for software version and release date on System status page.

I'm going to start work on this soon, as it will aid debugging massively.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI

Post by hamishmb »

I have made improvements to the NAS box's database indexes to improve the speed of the queries the engineer GUI uses. On my desktop, the slowest table's query went from taking 1.5 seconds to 0.001 seconds. On the NAS box, the same query took 98 seconds before optimisation).

Because the NAS box is so slow, it will probably take hours to run these queries, so I will post later with the after figure.

Attached are the queries I've used to optimise the tables. Note that I'll have to make amendments to the backup and restore scripts and related documentation to ensure the indexes are lost if we have to restore or redeploy the NAS box.
Attachments
queries.txt
(2.5 KiB) Downloaded 58 times
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI

Post by hamishmb »

NAS box query now also finishes in 0.00 seconds :)

I consider this a definite win. It'll be interesting to see how much storage space the indexes take, but we've used almost no space so it's not a problem even if it's a lot.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI

Post by hamishmb »

TL;DR - the engineer GUI pages should now load in seconds instead of 10s of seconds or minutes.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI

Post by hamishmb »

Despite yesterday's issues, the indexes are now up and running, and response time has improved dramatically. I will get started on the other changes I need to make for the engineer GUI next week. They should also be beneficial when debugging any issues that arise while I developed the mobile visitor GUI.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI

Post by hamishmb »

Added RAID array status and health to list - not much use having RAID if we don't know when a disk has failed.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI

Post by hamishmb »

So, this happened rather a lot later than planned, but I am now implementing these features as part of the larger rollout that will include the ability to manually control devices.

Current status is in the first post.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI Extended Features

Post by hamishmb »

I have updated the list to include some new ideas and have diagnostic information available for all pis and the NAS box.
Hamish
hamishmb
Posts: 1891
Joined: 16/05/2017, 16:41

Re: Engineer GUI Extended Features

Post by hamishmb »

As per the discussion at viewtopic.php?p=6120&sid=aebf1411c6ea69 ... 2c28#p6120, the Engineer GUI will be replaced with a new, better GUI written in Flask. As such, these features will not be implemented in the engineer GUI. The list above still might be useful for the replacement GUI though.
Hamish
Post Reply