From 2f90ce475652a32c67663e99f2737d31ca911dfd Mon Sep 17 00:00:00 2001 From: "Yaroshevich, Denis" Date: Tue, 9 Mar 2021 16:26:22 +0300 Subject: [PATCH] add more information in logs when RR create/update/delete fail --- octodns/provider/gcore.py | 46 ++++++++++++++++++++++++--------------- 1 file changed, 29 insertions(+), 17 deletions(-) diff --git a/octodns/provider/gcore.py b/octodns/provider/gcore.py index 5865431..6387771 100644 --- a/octodns/provider/gcore.py +++ b/octodns/provider/gcore.py @@ -179,27 +179,39 @@ class GCoreProvider(BaseProvider): _params_for_AAAA = _params_for_single def _apply_create(self, change): - new = change.new - rrset_name = self._build_rrset_name(new) - data = getattr(self, "_params_for_{}".format(new._type))(new) - self._client.record_create( - new.zone.name[:-1], rrset_name, new._type, data - ) + try: + new = change.new + rrset_name = self._build_rrset_name(new) + data = getattr(self, "_params_for_{}".format(new._type))(new) + self._client.record_create( + new.zone.name[:-1], rrset_name, new._type, data + ) + except: + self.log.exception("failed to create RR: %s", change) + rai def _apply_update(self, change): - new = change.new - rrset_name = self._build_rrset_name(new) - data = getattr(self, "_params_for_{}".format(new._type))(new) - self._client.record_update( - new.zone.name[:-1], rrset_name, new._type, data - ) + try: + new = change.new + rrset_name = self._build_rrset_name(new) + data = getattr(self, "_params_for_{}".format(new._type))(new) + self._client.record_update( + new.zone.name[:-1], rrset_name, new._type, data + ) + except: + self.log.exception("failed to update RR: %s", change) + raise def _apply_delete(self, change): - existing = change.existing - rrset_name = self._build_rrset_name(existing) - self._client.record_delete( - existing.zone.name[:-1], rrset_name, existing._type - ) + try: + existing = change.existing + rrset_name = self._build_rrset_name(existing) + self._client.record_delete( + existing.zone.name[:-1], rrset_name, existing._type + ) + except: + self.log.exception("failed to delete RR: %s", change) + raise def _apply(self, plan): desired = plan.desired