Skip to content

Commit 53f3b28

Browse files
authored
Merge pull request #18 from cybertec-postgresql/fix/logging-adjustments
Make log messages more human digestible
2 parents 10c1bc4 + 480c58c commit 53f3b28

1 file changed

Lines changed: 13 additions & 11 deletions

File tree

patroni/multisite.py

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ def heartbeat(self):
163163
Need to send out an async lease update. If that fails to complete within safety margin of ttl running
164164
out then we need to demote.
165165
"""
166-
logger.info("Triggering multisite hearbeat")
166+
logger.info("Triggering multisite heartbeat")
167167
self._heartbeat.set()
168168

169169
def release(self):
@@ -202,7 +202,8 @@ def is_follower(self):
202202
return cfg is not None and 'host' in cfg
203203

204204
def _set_standby_config(self, other: Member):
205-
logger.info(f"Multisite replicate from {other}")
205+
other_address = ','.join([':'.join([i, other.data['port']]) for i in other.data['host']])
206+
logger.info(f"Setting standby config to replicate from site {other.name} ({other_address})")
206207
# TODO: add support for replication slots
207208
try:
208209

@@ -240,7 +241,7 @@ def _check_transition(self, leader: bool, note: str = ''):
240241
self._status = leader
241242

242243
def _resolve_multisite_leader(self):
243-
logger.info("Running multisite consensus.")
244+
logger.info("Running multisite consensus")
244245
try:
245246
# Refresh the latest known state
246247
cluster = self.dcs.get_cluster()
@@ -281,13 +282,13 @@ def _resolve_multisite_leader(self):
281282
lock_owner = cluster.leader and cluster.leader.name
282283
# The leader is us
283284
if lock_owner == self.name:
284-
logger.info("Multisite has leader and it is us")
285+
logger.info("Multisite has a leader and it is us")
285286
if self._release:
286287
logger.info("Releasing multisite leader status")
287288
self.dcs.delete_leader(cluster.leader)
288289
self._release = False
289290
self._disconnected_operation()
290-
self._check_transition(leader=False, note="Released multisite leader status on request")
291+
self._check_transition(leader=False, note="Released multisite leader status upon request")
291292
return
292293
if self.dcs.update_leader(cluster, None):
293294
logger.info("Updated multisite leader lease")
@@ -301,7 +302,7 @@ def _resolve_multisite_leader(self):
301302
self._check_transition(leader=False, note="Failed to update multisite leader status")
302303
# Current leader is someone else
303304
else:
304-
logger.info(f"Multisite has leader and it is {lock_owner}")
305+
logger.info(f"Multisite has a leader and it is {lock_owner}")
305306
self._release = False
306307
# Failover successful or someone else took over
307308
if self._failover_target is not None:
@@ -313,12 +314,12 @@ def _resolve_multisite_leader(self):
313314
if not self._has_leader:
314315
self.on_change() # pyright: ignore [reportOptionalCall]
315316
note = (f"Lost leader lock to {lock_owner}" if self._has_leader else
316-
f"Current leader {lock_owner}")
317+
f"Current leader is {lock_owner}")
317318
self._check_transition(leader=False, note=note)
318319

319320
except DCSError as e:
320321
logger.error(f"Error accessing multisite DCS: {e}")
321-
self._dcs_error = 'Multi site DCS cannot be reached'
322+
self._dcs_error = 'Multisite DCS cannot be reached'
322323
if self._has_leader:
323324
self._disconnected_operation()
324325
self._has_leader = False
@@ -340,7 +341,7 @@ def _observe_leader(self):
340341
cluster = self.dcs.get_cluster()
341342

342343
if cluster.is_unlocked():
343-
logger.info("Multisite has no leader because cluster is unlocked")
344+
logger.info("Multisite has no leader because the cluster is unlocked")
344345
self._disconnected_operation()
345346
else:
346347
# There is a leader cluster
@@ -416,7 +417,8 @@ def touch_member(self):
416417
'host': self.config['host'],
417418
'port': self.config['port'],
418419
}
419-
logger.info(f"Touching member {self.name} with {data!r}")
420+
address = ','.join([':'.join([i, data['port']]) for i in data['host'].split(',')])
421+
logger.info(f"Registering site {self.name} in DCS with address {address}")
420422
self.dcs.touch_member(data)
421423

422424
def run(self):
@@ -462,7 +464,7 @@ def state_transition(self, new_state: str, note: str):
462464
failover_time = datetime.now(timezone.utc).strftime("%Y-%m-%dT%H:%M:%S.%fZ")
463465
reason = 'Promote' if new_state == 'Leader' else 'Demote'
464466
if note == '':
465-
note = 'Acquired multisite leader' if new_state == 'Leader' else 'Became a standby cluster'
467+
note = 'Acquired multisite leader lock' if new_state == 'Leader' else 'Became a standby site'
466468

467469
self._event_obj = kubernetes.client.EventsV1Event(
468470
action='Failover',

0 commit comments

Comments
 (0)