Runtime Stats never loads

Hi, the internet at my home has been out for three days (getting resolved) and since then I've noticed the hub running slowly and the nightly backups becoming very large. I tried looking at the Runtime Stats page locally but it never loads (have tried multiple browsers too). Rebooted the hub and all the other Hub pages I've tried work, but never the Runtime Stats. How can I see what is causing the slowdown while internet access is unavailable, if the Runtime Stats page never loads? C-7 hub, 2.2.7.126.
Thank you,

Garrett

Are you using any apps or drivers that are tied to cloud services? I would start with that. Hubitat doesn't need internet services but there are apps like the Amazon Echo services, Thermostats, and others that depend on them, some times I have seen apps that aren't well written for the loss of internet go into frenzy mode.

You may wan to reboot first and see if that brings back the responsiveness and then start reviewing the logs.

1 Like

A variation on the theme of @ronv42 is to use the Disable feature of Apps and Drivers to disable your Internet components.

On both the Apps and Drivers pages is a small Gray X that you can click on:
Screen Shot 2021-07-25 at 7.31.43 AM. Screen Shot 2021-07-25 at 7.31.55 AM

Click them and they show as Red:

Screen Shot 2021-07-25 at 7.34.09 AM Screen Shot 2021-07-25 at 7.33.52 AM

And then a column appears on the Left and you would go disable each internet dedicated App or Driver. Once your Internet is back. go enable them again :slight_smile:

1 Like

Thank you for the tip, I wasn't aware of that option and for now disabling everything has made the hub much more responsive. However, even with all Devices and Apps disabled the Runtime Stats screen still does not load. I would like to know how to fix this or maybe it is something for the Hubitat team to fix.

Strange that is missing. Wonder if there is some ad blocker or something else like that going on?

What happens if you go to your hub's IP address and add /runtimeStats to the end? [example, mine would be http://192.168.0.50/runtimeStats]

That should take you to that stats page.

When I try to browse directly to that link (in my case http://192.168.1.101/runtimeStats) I get the same issue with the browser giving the "loading" spinner in the tab but the page never loads. Same situation in Microsoft Edge browser with no add-ons or ad blockers.

You know you are on an older firmware, you probably should update to 2.2.8.xxx. Not that this will fix anything, but it wouldn't hurt to try this update and see if it acts the same.

Okay so my internet is now back and I was able to install the latest firmware update provided, 2.2.8.141. However even with ALL devices and ALL apps disabled, the hub is still running extremely slow and the runtimeStats page still will not load. Now what? :upside_down_face:

I'm not going to be much help here because I can't duplicate the issue....

I have 5 Hubitat Hubs and one of them has 160 devices on it... Clicking Runtime Stats menu item takes about 3 seconds to load.

Another hub with 5 devices takes less than 2 seconds to load. I then went and disabled all of the devices and all the apps. Again, clicking Runtime Stats menu item took the same <2 seconds, and had all the same data.

MY next suggestion, would be to do a Soft Reset. Make a backup to your PC (Settings:Backup & Restore)

Screen Shot 2021-07-27 at 9.27.31 AM

Then back in Settings there's a Diagnostic Menu. Click that and do a Soft Reset. This seems way more scary than it is. It's very safe and you lose nothing. You will need the Mac address of your hub, found on the label on the bottom. However, the "normal use" of Soft Reset urges you to directly Restore the backup you just made.. but for your particular problem I am suggesting you defer that a couple of minutes....

When the Soft Reset finishes you end up at what we call a Green Screen, with tiny words at the bottom to take you to the Restore function.

Instead, click Get Started then Skip the Introduction, Add in the Name and Zip code and you should be back to a "factory fresh" looking Hub. :smiley: There will be no devices, no apps, no rooms, and so on.

NOW try looking at Runtime Stats.

When you're ready to restore, go to Settings:Backup and Restore and click those buttons:

Screen Shot 2021-07-27 at 9.38.18 AM

You'll reboot back to the exact same hub you had when you started reading this suggestion :smiley:

(My hub is now doing the restore after doing exactly what I suggest here.

Screen Shot 2021-07-27 at 9.41.30 AM

OK, it's all back and I just went through and re-enabled all my devices and apps.)

I did the soft reset and yes the runtimeStats page works after that. But after restoring the backup, even with all Apps and all Devices still being disabled, the hub then runs super slow again and the runtimeStats page again fails to load. A runtimeStats page tab I left open eventually displayed a "HTTP ERROR 500 java.lang.OutOfMemoryError: Java heap space" error on the page. The hub load is "elevated". Is there no way to have a working hub that also has my devices on it??

Think we may need @gopher.ny 's help on this one

1 Like

There's a user device type called "IRTrans" with nearly 45,000 device instances on the hub. I suspect you'll need to roll back to a point where this device type is either not on the hub or not broken.

1 Like

Whoa, it's gone awry. How can I delete device instances that do not appear in the Devices list? (I only show seven devices of type IRTrans in my Devices list)

I do not believe there are any public tools for such a contigency, thus the "restore from a known good backup" suggestion. If this happened internally, we'd have to stop hub process and manipulate the database directly.

I am not sure when the number of devices started ramping up but I do recall seeing some duplicated Device names when creating Rule Machine rules and that has been for a long time -- I don't have any recent backups without this issue. The IRTrans driver has some code that adds and deletes child devices as needed. Questions:

  1. Is the Hubitat hub only "marking inactive" child devices when I call the deleteChildDevice command?
  2. Is the Hubitat hub creating a hidden child device if I attempt to create a child device that already exists (i.e. has the same name or deviceNetworkId)?
  3. Is there any groovy code I can run to find and delete these hidden devices?
  4. Is there a way to decompress/decode the .lzf backup file so I can remove the hidden devices before performing a restore?

With @gopher.ny pointing me in the right direction I was able to hone in on the IRTrans-type Devices and run a routine to delete all their child devices. For the routine to delete the child devices took nearly 24 hours (!) The root issue was I did not realize that child components could create their own child components (no limit to hierarchical levels), and they did not appear in the Devices list so they seemed non-existent until opening up those child devices and drilling down. I've now changed my driver code also so it will only generate child devices if it is the top parent device. Now the Hub is no longer slow and RuntimeStats and all other features are working. Thank you all for your help,

4 Likes