From 19d1ac02f6157728f8cbc91fac1c73169e770a91 Mon Sep 17 00:00:00 2001 From: Jonathan Dickson Date: Thu, 19 Oct 2023 15:25:14 -0700 Subject: [PATCH 1/2] added debug log to ResourceException error for when method call to NS1 fails --- octodns_ns1/__init__.py | 8 ++++++++ tests/test_provider_ns1.py | 3 +++ 2 files changed, 11 insertions(+) diff --git a/octodns_ns1/__init__.py b/octodns_ns1/__init__.py index 1ce529c..b430f7b 100644 --- a/octodns_ns1/__init__.py +++ b/octodns_ns1/__init__.py @@ -283,6 +283,14 @@ def _try(self, method, *args, **kwargs): ) sleep(period) tries -= 1 + except ResourceException as e: + self.log.debug( + "_try: method=%s, args=%s, error=%s", + method.__name__, + str(args), + e.message, + ) + raise class Ns1Provider(BaseProvider): diff --git a/tests/test_provider_ns1.py b/tests/test_provider_ns1.py index 5b70276..5a4ce17 100644 --- a/tests/test_provider_ns1.py +++ b/tests/test_provider_ns1.py @@ -273,6 +273,7 @@ def reset(): provider._client.reset_caches() zone_retrieve_mock.reset_mock() zone_retrieve_mock.side_effect = None + zone_retrieve_mock.__name__ = 'retrieve' record_retrieve_mock.reset_mock() record_retrieve_mock.side_effect = None @@ -470,7 +471,9 @@ def reset(): provider._client.reset_caches() record_retrieve_mock.reset_mock() zone_create_mock.reset_mock() + zone_create_mock.__name__ = 'create' zone_retrieve_mock.reset_mock() + zone_retrieve_mock.__name__ = 'retrieve' # Fails, general error reset() From 6ee9cf88e915dfa53e55d3af346133ee1712b0df Mon Sep 17 00:00:00 2001 From: Jonathan Dickson Date: Wed, 25 Oct 2023 16:08:51 -0700 Subject: [PATCH 2/2] changed the log from debug level to exeception, added response and body content to the log --- octodns_ns1/__init__.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/octodns_ns1/__init__.py b/octodns_ns1/__init__.py index b430f7b..1c881c3 100644 --- a/octodns_ns1/__init__.py +++ b/octodns_ns1/__init__.py @@ -284,11 +284,12 @@ def _try(self, method, *args, **kwargs): sleep(period) tries -= 1 except ResourceException as e: - self.log.debug( - "_try: method=%s, args=%s, error=%s", + self.log.exception( + "_try: method=%s, args=%s, response=%s, body=%s", method.__name__, str(args), - e.message, + e.response, + e.body, ) raise