Skip to content

Commit c89d68c

Browse files
Merge branch 'master' into is6791/fix-projects-inactivity-interval-env-var
2 parents f384146 + c85f825 commit c89d68c

File tree

4 files changed

+17
-19
lines changed

4 files changed

+17
-19
lines changed

services/api-server/src/simcore_service_api_server/exceptions/handlers/_log_streaming_errors.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
from ..log_streaming_errors import (
66
LogStreamerNotRegisteredError,
7-
LogStreamerRegistionConflictError,
7+
LogStreamerRegistrationConflictError,
88
LogStreamingBaseError,
99
)
1010
from ._utils import create_error_json_response
@@ -18,7 +18,7 @@ async def log_handling_error_handler(request: Request, exc: Exception) -> JSONRe
1818
status_code: int = status.HTTP_500_INTERNAL_SERVER_ERROR
1919
if isinstance(exc, LogStreamerNotRegisteredError):
2020
status_code = status.HTTP_500_INTERNAL_SERVER_ERROR
21-
elif isinstance(exc, LogStreamerRegistionConflictError):
21+
elif isinstance(exc, LogStreamerRegistrationConflictError):
2222
status_code = status.HTTP_409_CONFLICT
2323

2424
return create_error_json_response(msg, status_code=status_code)

services/api-server/src/simcore_service_api_server/exceptions/log_streaming_errors.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ class LogStreamerNotRegisteredError(LogStreamingBaseError):
99
msg_template = "{msg}"
1010

1111

12-
class LogStreamerRegistionConflictError(LogStreamingBaseError):
12+
class LogStreamerRegistrationConflictError(LogStreamingBaseError):
1313
msg_template = "A stream was already connected to {job_id}. Only a single stream can be connected at the time"

services/api-server/src/simcore_service_api_server/services/log_streaming.py

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from ..exceptions.backend_errors import BaseBackEndError
1717
from ..exceptions.log_streaming_errors import (
1818
LogStreamerNotRegisteredError,
19-
LogStreamerRegistionConflictError,
19+
LogStreamerRegistrationConflictError,
2020
)
2121
from ..models.schemas.errors import ErrorGet
2222
from ..models.schemas.jobs import JobID, JobLog
@@ -70,7 +70,7 @@ async def _distribute_logs(self, data: bytes):
7070

7171
async def register(self, job_id: JobID, queue: Queue[JobLog]):
7272
if job_id in self._log_streamers:
73-
raise LogStreamerRegistionConflictError(job_id=job_id)
73+
raise LogStreamerRegistrationConflictError(job_id=job_id)
7474
self._log_streamers[job_id] = queue
7575
await self._rabbit_client.add_topics(
7676
LoggerRabbitMessage.get_channel_name(), topics=[f"{job_id}.*"]
@@ -126,26 +126,24 @@ async def log_generator(self) -> AsyncIterable[str]:
126126
except TimeoutError:
127127
done = await self._project_done()
128128

129-
except BaseBackEndError as exc:
130-
_logger.info("%s", f"{exc}")
131-
yield ErrorGet(errors=[f"{exc}"]).model_dump_json() + _NEW_LINE
129+
except (BaseBackEndError, LogStreamerRegistrationConflictError) as exc:
130+
error_msg = f"{exc}"
131+
132+
_logger.info("%s: %s", exc.code, error_msg)
133+
yield ErrorGet(errors=[error_msg]).model_dump_json() + _NEW_LINE
134+
132135
except Exception as exc: # pylint: disable=W0718
133136
error_code = create_error_code(exc)
134-
user_error_msg = (
135-
MSG_INTERNAL_ERROR_USER_FRIENDLY_TEMPLATE + f" [{error_code}]"
136-
)
137+
error_msg = MSG_INTERNAL_ERROR_USER_FRIENDLY_TEMPLATE + f" [{error_code}]"
137138

138139
_logger.exception(
139140
**create_troubleshotting_log_kwargs(
140-
user_error_msg,
141+
error_msg,
141142
error=exc,
142143
error_code=error_code,
143144
)
144145
)
145-
yield ErrorGet(
146-
errors=[
147-
MSG_INTERNAL_ERROR_USER_FRIENDLY_TEMPLATE + f" (OEC: {error_code})"
148-
]
149-
).model_dump_json() + _NEW_LINE
146+
yield ErrorGet(errors=[error_msg]).model_dump_json() + _NEW_LINE
147+
150148
finally:
151149
await self._log_distributor.deregister(self._job_id)

services/api-server/tests/unit/test_services_rabbitmq.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
from simcore_service_api_server.services.log_streaming import (
4646
LogDistributor,
4747
LogStreamer,
48-
LogStreamerRegistionConflictError,
48+
LogStreamerRegistrationConflictError,
4949
)
5050
from tenacity import AsyncRetrying, retry_if_not_exception_type, stop_after_delay
5151

@@ -219,7 +219,7 @@ async def _(job_log: JobLog):
219219
pass
220220

221221
await log_distributor.register(project_id, _)
222-
with pytest.raises(LogStreamerRegistionConflictError):
222+
with pytest.raises(LogStreamerRegistrationConflictError):
223223
await log_distributor.register(project_id, _)
224224
await log_distributor.deregister(project_id)
225225

0 commit comments

Comments
 (0)