-
Notifications
You must be signed in to change notification settings - Fork 29
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
Don't hide handler exceptions behind debug #108
base: dev
Are you sure you want to change the base?
Conversation
I would suggest |
DeliveyError is a real error. We failed at doing something. Same with timeout. Hiding these type of things is why zha is so flakey at times. |
I don't think that results in anything actionable, though. What does a user do if they get a delivery error during startup? This is where |
That being said, more logging during device joining (and increased retries) would be good. We actually swapped it from a warning to a debug statement a few months ago because of log spam. |
This is also used during the configure step which can be triggered by user on a button. Manual configure should be verbose to indicate what worked and what failed. It should be actionable to create a bug report on the issue. I do agree that during normal startup: IF we have cached values, we could ignore some errors like timeouts. But we can only do it if we have cached values and user have not requested a reconfigure. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## dev #108 +/- ##
==========================================
+ Coverage 95.64% 95.65% +0.01%
==========================================
Files 61 61
Lines 9232 9255 +23
==========================================
+ Hits 8830 8853 +23
Misses 402 402 ☔ View full report in Codecov by Sentry. |
Definitely not. Delivery errors are unavoidable. Some devices are aggressive with sleeping after joining ad just are hard to reach. Some devices are hard to reach because the network has poor connectivity and the delivery error is genuine.
It would be best to isolate this change then to just those scenarios. Otherwise, such verbose and user-visible logging creates a support burden. |
Converted to draft until we have some consensus. Also trying out #120 which might be a better alternative (can't decide yet). |
Don't swallow exceptions during configure of clusters in debug logs.
Catching generic Exceptions will hide programming errors. We could hide specific exceptions if we know their cause, other exceptions should be fixed.