From d2ef68b3e3ff31962c730fdb76d4b82251515b6a Mon Sep 17 00:00:00 2001 From: Shweta Bhosale Date: Tue, 28 Apr 2026 11:18:15 +0530 Subject: [PATCH] mgr/cephadm: log full tracebacks for upgrade exceptions Fixes: https://tracker.ceph.com/issues/76284 Signed-off-by: Shweta Bhosale --- src/pybind/mgr/cephadm/upgrade.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/pybind/mgr/cephadm/upgrade.py b/src/pybind/mgr/cephadm/upgrade.py index 26396f7f93d..61283f5d0b9 100644 --- a/src/pybind/mgr/cephadm/upgrade.py +++ b/src/pybind/mgr/cephadm/upgrade.py @@ -527,6 +527,7 @@ class CephadmUpgrade: }) return False except Exception as e: + logger.exception('Upgrade: unexpected exception during _do_upgrade') self._fail_upgrade('UPGRADE_EXCEPTION', { 'severity': 'error', 'summary': 'Upgrade: failed due to an unexpected exception', @@ -723,6 +724,7 @@ class CephadmUpgrade: try: j = json.loads(out) except Exception: + logger.exception('Upgrade: failed to parse quorum_status JSON: %s', out) raise OrchestratorError('failed to parse quorum status') mons = [m['name'] for m in j['monmap']['mons']] @@ -934,6 +936,11 @@ class CephadmUpgrade: ) self.mgr.cache.metadata_up_to_date[d.hostname] = False except Exception as e: + logger.exception( + 'Upgrade: %s daemon %s on host %s failed', + action.lower(), + d.name(), + d.hostname) self._fail_upgrade('UPGRADE_REDEPLOY_DAEMON', { 'severity': 'warning', 'summary': f'{action} daemon {d.name()} on host {d.hostname} failed.', -- 2.47.3