Add request context logging for failed HASS API calls #2465
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently when a call to Home Assistant fails the log entry in appdaemon is pretty useless. It just says "Error with websocket result" and gives the error information but without knowing the context of the call, the service that was called, it's impossible to know what user code caused it in the first place. Theoretically it may be possible to get this information by running appdaemon with loglevel=DEBUG but that is not practical for a production environment.
This PR saves the request based on the call_id, in the same way that silent_result is handled, and then writes it to the log in case the response indicated an error.