I've got a C8 Hub that I've been running for about 2.5 years at this point, and I've noticed memory over time decreases (which isn't totally a surprise). I had set a rule to notify on memory going below 150M, and see that the rule triggers about 2 weeks after a reboot and then maybe once/twice a day after that. With the help of Watchtower (Awesome App!), I've got the graphs below of the overall memory usage, CPU usage, and DB size. You'll clearly notice the two times I rebooted the hub in December.
My question is ultimately - what are the thresholds I should be concerned about? How low should I go before I reboot, or when should I consider moving to a C8 Pro for the increased memory?
What do others use for their thresholds on when to trigger events for memory/cpu/db size?
Everyone’s hub is different - devices, apps,RF evironment, etc. Rule of thumb though is that most hubs are stable to around 120 MB and functional to about 80 — much below that it begins to strugle or crash. CPU wise again you need to understand your mix — hubs with a lot of cloud interaction will generally see higher load numbers than those only doing Z traffic. Matter and HomeKit add additional load also. My rule of thumb here is not to worry until I’m consistently over 30% (my hubs generally run in the 3-8%% range)). Database hasn’t been a problem in so long that I rarely look at it - look for sudden uncontrolled growth normal fluctuation is +/— 5%
I've got out of the habit of looking at mine which are getting down below 50Mb after 30+ days and still functional (a mix of C-7s and a C-8, plus my original C-4). Some rules might have some delays occasionally, but haven't investigated to see what the cause may be. Will probably restart them today.
Trying to test my database size (dbsize). I can test this variable OK, but this particular variable does not seem to have a Local Variable, %text% that contains the variable name and current value. All of the other variables I have tested contain a %text%. If there is not a problem creating this local variable, I would appreciate your adding it to your Hub Information driver.
The driver has an attribute named dbSize that contains the value. Can either use it directly or use a Rule to assign it to a variable of your choosing.