Thanks.
I’d think that in a “normal” Home Assistant
implementation there are the following sources of disk writes, and depending on how many sensors you have and how frequently they refresh, the order will change:
- HA database:
Capturing the sensor changes and events. This is the only disk writes with real added value to our system, and should ideally be the only ones.
So you can achieve a lot by just rethinking what you really need, and exclude the rest.- If you don’t need to know what time the door closed or the tv was switched off, don’t log it.
- If you don’t need to see in
HA
that your phone is charging, exclude that integration. - If you don’t need to see the WiFi strength of your MQTT device, disable it (in TasmoAdmin or wherever).
- Etc.
- HA, the app
- logs generated by internal processes, like
hassio_supervisor
checks and refreshes. Same goes forhassio_audio
, evenHACS
. - automations, scripts, notifications, … are all captured if you don’t exclude them in the logger and other filters.
- logs generated by internal processes, like
- OS
Linux is logging stuff all the time. When you do a “sudo” there’s a log created. Samba, VNC, X, cron, … are all quite vocal when it comes to logging. - Other apps (in your container stack)
e.g. Mosquitto, that in my case logs info like database updates, device connections etc. to a EXT4 log file (means it’s not in RAM but on disk).
As you may have picked up, my biggest gripe is with how Home Assistant
just generates lots of crap. And even worse, all these debug info is logged as errors. Thing is that it is completely superfluous for the average user, even when you’re troubleshooting a specific problem. My ticket to change the hassio_supervisor
logging was to me wrongfully rejected, so I’m now trying it as a feature request.