Skip to content
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

Occasional temporary failure in name resolution #9

Open
freeranger opened this issue Jan 9, 2022 · 0 comments
Open

Occasional temporary failure in name resolution #9

freeranger opened this issue Jan 9, 2022 · 0 comments

Comments

@freeranger
Copy link
Owner

Sometimes seeing this, across multiple plugins:

2022-01-06 10:50:19 | stdout | HTTPSConnectionPool(host='tccna.honeywell.com', port=443): Max retries exceeded with url: /WebAPI/emea/api/v1/userAccount (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f2e090c0e80>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))�[0m
-- | -- | --
2022-01-06 10:50:19 | stdout | �[32m2022-01-06 10:50:19�[0m �[35mfreeranger-evologger�[0m �[34mEvoHome-plugin:[1]�[0m �[1;30mERROR�[0m �[31mEvoHome API error - aborting read
2022-01-06 10:50:13 | stdout | Exception: Failed to retrieve station data
2022-01-06 10:50:13 | stdout | raise Exception('Failed to retrieve station data')
2022-01-06 10:50:13 | stdout | File "./plugins/netatmo/__init__.py", line 225, in read
2022-01-06 10:50:13 | stdout | Traceback (most recent call last):
2022-01-06 10:50:13 | stdout | Failed to retrieve station data�[0m
2022-01-06 10:50:13 | stdout | �[32m2022-01-06 10:50:13�[0m �[35mfreeranger-evologger�[0m �[34mNetatmo-plugin:[1]�[0m �[1;30mERROR�[0m �[31mNetatmo API error - aborting read:
2022-01-06 10:50:13 | stdout | urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
2022-01-06 10:50:13 | stdout | raise URLError(err)

There could be some temporary failure of internet connectivity or perhaps really is a DNS resolution issue...for some plugins we could cache the IP for the name and use that instead perhaps (assuming the issue is DNS and not the internet) but the evohomeclient bakes the URL in so we can't do it for that...maybe we can simply detect this and do "something" to e.g. establish if it is DNS or not?
There may be no point in continuing this cycle of reading/writing if we can't access anything - maybe as a minimum we detect that all reads failed and abandon the writes?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant