"""Logger for stream_asset_mezzanine_coverart events.""" class AssetMezzanineCoverartEventLogger: """AssetMezzanineCoverartEventLogger.""" def __init__(self, logger): self.logger = logger self.data = None def start(self, event_key=None, payload=None): """Begin processing.""" self.data = { "filename": payload.filename, "asset_type": payload.asset_type, "asset_subtype": payload.asset_subtype, "asset_final_id": payload.asset_final_id, "event_key": event_key, } def set_data(self, **kwargs): """Set logging data.""" self.data.update(kwargs) def end(self): """Log result.""" status = self.data.get("status") result = self.data.get("result") event_key = self.data.get("event_key") self.data.update(message=f'{status}: result="{result}" event_key={event_key}') if status == "error": self.logger.error(self.data) elif status == "skip": self.logger.warning(self.data) else: self.logger.info(self.data)