diff --git a/ops/charm.py b/ops/charm.py index 3b7efb9df..cb599863b 100755 --- a/ops/charm.py +++ b/ops/charm.py @@ -15,6 +15,7 @@ """Base objects for the Charm, events and metadata.""" import enum +import logging import os import pathlib from typing import ( @@ -74,6 +75,9 @@ total=False) +logger = logging.getLogger(__name__) + + class HookEvent(EventBase): """Events raised by Juju to progress a charm's lifecycle. @@ -894,8 +898,12 @@ def add_status(self, status: model.StatusBase): raise TypeError(f'status should be a StatusBase, not {type(status).__name__}') model_ = self.framework.model if self.handle.kind == 'collect_app_status': + if not isinstance(status, model.ActiveStatus): + logger.debug('Adding app status %s', status, stacklevel=2) model_.app._collected_statuses.append(status) else: + if not isinstance(status, model.ActiveStatus): + logger.debug('Adding unit status %s', status, stacklevel=2) model_.unit._collected_statuses.append(status)