diff --git a/app/core/models/node_storage.py b/app/core/models/node_storage.py index 491de6d..9aac4ac 100644 --- a/app/core/models/node_storage.py +++ b/app/core/models/node_storage.py @@ -92,7 +92,7 @@ class StoredContent(AlchemyBase, AudioContentMixin): 'content_type': content_type or 'application/x-binary' } except BaseException as e: - make_log("NodeStorage.open_content", f"Can't open content: {self.id} {e}", level='error') + make_log("NodeStorage.open_content", f"Can't open content: {self.id} {e}", level='warning') raise e def json_format(self): @@ -114,12 +114,21 @@ class StoredContent(AlchemyBase, AudioContentMixin): ]: extra_fields[k] = self.meta.get(k, None) - spec_field_updated = self.updated.isoformat() if isinstance(self.updated, datetime) else ( - datetime.fromisoformat(self.updated).isoformat() if isinstance(self.updated, str) else None - ) - spec_field_created = self.created.isoformat() if isinstance(self.created, datetime) else ( - datetime.fromisoformat(self.created).isoformat() if isinstance(self.created, str) else None - ) + try: + spec_field_updated = self.updated.isoformat() if isinstance(self.updated, datetime) else ( + datetime.fromisoformat(self.updated).isoformat() if isinstance(self.updated, str) else None + ) + except BaseException as e: + make_log("StoredContent.json_format", f"[{self.id}] Can't convert updated field: {self.updated} {e}", level='debug') + spec_field_updated = datetime(1970, 1, 1).isoformat() + + try: + spec_field_created = self.created.isoformat() if isinstance(self.created, datetime) else ( + datetime.fromisoformat(self.created).isoformat() if isinstance(self.created, str) else None + ) + except BaseException as e: + make_log("StoredContent.json_format", f"[{self.id}] Can't convert created field: {self.created} {e}", level='debug') + spec_field_created = datetime(1970, 1, 1).isoformat() return { **extra_fields,