Skip to content

Commit c55fb07

Browse files
fix: troubleshooting logs
1 parent f1825bd commit c55fb07

File tree

1 file changed

+23
-6
lines changed

1 file changed

+23
-6
lines changed

packages/celery-library/src/celery_library/task_manager.py

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from uuid import uuid4
55

66
from celery import Celery # type: ignore[import-untyped]
7+
from celery.exceptions import CeleryError # type: ignore[import-untyped]
78
from common_library.async_tools import make_async
89
from models_library.progress_bar import ProgressReport
910
from servicelib.celery.models import (
@@ -18,6 +19,7 @@
1819
TaskUUID,
1920
)
2021
from servicelib.celery.task_manager import TaskManager
22+
from servicelib.logging_errors import create_troubleshootting_log_kwargs
2123
from servicelib.logging_utils import log_context
2224
from settings_library.celery import CelerySettings
2325

@@ -56,20 +58,35 @@ async def submit_task(
5658
if task_metadata.ephemeral
5759
else self._celery_settings.CELERY_RESULT_EXPIRES
5860
)
59-
await self._task_info_store.create_task(
60-
task_id, task_metadata, expiry=expiry
61-
)
6261

6362
try:
63+
await self._task_info_store.create_task(
64+
task_id, task_metadata, expiry=expiry
65+
)
6466
self._celery_app.send_task(
6567
task_metadata.name,
6668
task_id=task_id,
6769
kwargs={"task_id": task_id} | task_params,
6870
queue=task_metadata.queue.value,
6971
)
70-
except Exception:
71-
_logger.exception("Task '%s' submission failed", task_metadata.name)
72-
await self._task_info_store.remove_task(task_id)
72+
except CeleryError as exc:
73+
_logger.exception(
74+
**create_troubleshootting_log_kwargs(
75+
user_error_msg="Unable to submit task",
76+
error=exc,
77+
error_context={
78+
"task_id": task_id,
79+
"task_name": task_metadata.name,
80+
},
81+
)
82+
)
83+
try:
84+
await self._task_info_store.remove_task(task_id)
85+
except CeleryError:
86+
_logger.warning(
87+
"Unable to cleanup task '%s' during error handling",
88+
task_id,
89+
)
7390
raise
7491

7592
return task_uuid

0 commit comments

Comments
 (0)