Appdaemon 0.16.3 makes all of HA barely responsive

Couldn’t figure out how to ‘unsolve’ my previous appdaemon post, so starting a new thread:

After upgrading to 0.16.3, won’t complete initialization at startup, and is spinning in a loop that slows down all of HA to make it barely responsive. I had to wait 7 minutes just for the appdaemon screen to refresh so I could click ‘Stop’ to shut it down.

I removed all apps except hello.py from apps.yaml and tried restarting. Same thing, had to wait a long time again just to be able to shut it down. It’s definitely appdaemon-with it shut down everything becomes responsive again. Can’t see anything in my config that would cause unexpected behavior, and obviously the original hello.py isn’t suspect.

This is at the end of appdaemon.log after I stopped it:

2024-01-18 22:37:42.399778 INFO AppDaemon: App initialization complete
2024-01-18 22:37:57.413406 WARNING AppDaemon: Excessive time spent in utility loop: 2611.0ms, 2440.0ms in check_app_updates(), 171.0ms in other
2024-01-18 22:38:01.194722 WARNING AppDaemon: Excessive time spent in utility loop: 2416.0ms, 2415.0ms in check_app_updates(), 1.0ms in other
2024-01-18 22:38:22.301241 INFO AppDaemon: SIGTERM Received
2024-01-18 22:38:22.320479 INFO AppDaemon: AppDaemon is shutting down
2024-01-18 22:38:22.340152 INFO HASS: Disconnecting from Home Assistant
2024-01-18 22:38:22.343530 INFO AppDaemon: Shutting down webserver
2024-01-18 22:38:22.962472 INFO AppDaemon: Saving all namespaces
2024-01-18 22:38:22.964233 INFO AppDaemon: AppDaemon is stopped.

so it seems could be related to check_app_updates()?

This is my appdaemon.yaml in addon_configs:

secrets: /homeassistant/secrets.yaml
appdaemon:
  latitude: xxxx
  longitude: xxxx
  elevation: 2
  time_zone: xxxxx
  plugins:
    HASS:
      type: hass
http:
  url: http://127.0.0.1:5050
admin:
api:
hadashboard:

app_dir: /homeassistant/appdaemon/apps/

logs:
  main_log:
    filename: /homeassistant/appdaemon/logs/appdaemon.log
  access_log:
    filename: /homeassistant/appdaemon/logs/access.log
  error_log:
    filename: /homeassistant/appdaemon/logs/error.log
  diag_log:
    filename: /homeassistant/appdaemon/logs/diag.log
    log_generations: 5
    log_size: 1024
    format: "{asctime} {levelname:<8} {appname:<10}: {message}"

After a long time spent I discovered that my apps weren’t even being loaded when appdaemon is restarted. Despite the above appdaemon.yaml using the above logs configuration- meaning it was writing to logs back in the old location, the app_dir setting apparently doesn’t work that way. Instead it appears to require that dir to be in the addon_configs volume.

I had removed apps from addon_configs after moving them back to their original location /homeassistant/appdaemon/apps (where they were prior to 0.15.0), which caused them not to be recognized, and also apparently triggers a bug in appdaemon that causes it to spin on the cpu and make HA barely responsive.

When I moved the apps dir back to the addon_configs dir, all apps intialized and the spinning did not happen.

That brings me back to the original issue in my previous post- how can I make the addon_configs dir accessible by SSH so that I can develop and debug my apps in their permanent location, as I have been doing for a long time prior to this new version?

In addition to not being able to access the addon_configs volume via ssh, I discovered recently that my apps were not actually running, even though the log inidicatied it was initializing them.

Too many issues for me with the introduction of v0.15, and definitely too much of my time spent trying to troubleshoot a version update for a single addon.

I’ve rolled back to v0.13, everything working again, and will stay there for the forseeable future unless a stable update is released that doesn’t take away my means of maintaining apps.