-
-
Notifications
You must be signed in to change notification settings - Fork 32.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Diagnostics report for Thread networks #88541
Conversation
Hey there @home-assistant/core, mind taking a look at this pull request as it has been labeled with an integration ( Code owner commandsCode owners of
|
a1f87ce
to
294aa2d
Compare
9b66cdb
to
6b84f0c
Compare
try: | ||
return value.decode() | ||
except UnicodeDecodeError: | ||
return None |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this base64 encode the value prefixed with encode-error:
, so we know it's not None?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I only moved what was already there so I could re-use it, so I don't know if theres any reason for the current behaviour. I'm not opposed to changing it - @emontnemery?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok let's do it in another PR then.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess I would like that detail in the diagnostic report, but the same decoder is used by the thread panel and It would be weird there. Probably better to show nothing that show the user garbage? Maybe leave as is for now and we can revisit if we see it in practice? Can always include the raw TXT
record (in the diagnostics report only) if we start seeing trash border routers?
6b84f0c
to
7b15281
Compare
* dev: (60 commits) Update frontend to 20230222.0 (home-assistant#88615) Add controller support to `zwave_js/subscribe_firmware_update_status` (home-assistant#87348) Bump Freebox to 1.1.0 (home-assistant#88609) Always include platform in `config/entity_registry/list_for_display` (home-assistant#88601) Add dsk option to zwave_js/add_node WS command (home-assistant#87823) Update zwave_js FirmwareUploadView to support controller updates (home-assistant#87239) Add new zwave_js WS command to parse DSK from QR code (home-assistant#87237) Diagnostics report for Thread networks (home-assistant#88541) Set default for `hass_config_yaml` fixture to "" (home-assistant#88608) Bump reolink-aio to 0.5.0 (home-assistant#88594) Bump intents package version; hassil==1.0.5; home-assistant-intents==2023.2.22 (home-assistant#88605) Add Reolink update entity (home-assistant#87865) Fix cover template: optimistic mode is ignored (home-assistant#87925) Fix 500 error when getting calendar events (home-assistant#88276) Add clarifying comment about unit of elevation (home-assistant#88489) Add ZHA "consumer connected" binary sensor for Xiaomi EU plugs (home-assistant#88194) Bump Insteon dependencies (home-assistant#88514) Use load_json_object in ecobee (home-assistant#88584) Use load_json_object in html5 (home-assistant#88586) Improve type hint in homeassistant trigger (home-assistant#88596) ...
Proposed change
To streamline user support that involves thread, this report helps spot and rule out:
VLANs or WiFi isolation that is blocking the RA packets.
Right now it is extremely hard to help HAOS users because getting the route and neighbour data involves SSH access at the OS level (the SSH addon is not nearly enough).
The report doesn't yet automatically diagnose any faults, but it does provide enough information to help me rule out a border router / network configuration issue, which is about a third of my triaging process.
This does not do any connectivity checks to end devices. For example, we have cases where an Apple TV thats in a cupboard full of HDMI cables has probably fallen off the mesh and evicting routes to it from the HA instance will magically fix things. We can't detect that case with this.
Type of change
Additional information
Checklist
black --fast homeassistant tests
)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest
.requirements_all.txt
.Updated by running
python3 -m script.gen_requirements_all
..coveragerc
.To help with the load of incoming pull requests: