Skip to content

Commit 47f0c06

Browse files
review @pcrespov
1 parent 2f4d9dc commit 47f0c06

File tree

2 files changed

+20
-3
lines changed
  • services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/exceptions

2 files changed

+20
-3
lines changed

services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/exceptions/errors.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33

44
class ResourceUsageTrackerBaseError(OsparcErrorMixin, Exception):
5-
msg_template = "Resource Usage Tracker unknown error"
5+
msg_template = "Resource usage Tracker Service Error"
66

77

88
class ConfigurationError(ResourceUsageTrackerBaseError):
9-
msg_template = "Resource usage Tracker configuration error"
9+
...
1010

1111

1212
### NotCreatedDBError

services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/exceptions/handlers/_http_error.py

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,32 @@
1+
import logging
12
from collections.abc import Callable
23
from typing import Awaitable
34

45
from fastapi import HTTPException, Request, status
56
from fastapi.encoders import jsonable_encoder
7+
from servicelib.logging_errors import create_troubleshotting_log_kwargs
8+
from servicelib.status_codes_utils import is_5xx_server_error
69
from starlette.responses import JSONResponse
710

811
from ...exceptions.errors import RutNotFoundError
912

13+
_logger = logging.getLogger(__name__)
1014

11-
async def http_error_handler(_: Request, exc: Exception) -> JSONResponse:
15+
16+
async def http_error_handler(request: Request, exc: Exception) -> JSONResponse:
1217
assert isinstance(exc, HTTPException) # nosec
18+
19+
if is_5xx_server_error(exc.status_code):
20+
_logger.exception(
21+
**create_troubleshotting_log_kwargs(
22+
"Unexpected error happened in the Resource Usage Tracker. Please contact support.",
23+
error=exc,
24+
error_context={
25+
"request": request,
26+
"request.method": f"{request.method}",
27+
},
28+
)
29+
)
1330
return JSONResponse(
1431
content=jsonable_encoder({"errors": [exc.detail]}), status_code=exc.status_code
1532
)

0 commit comments

Comments
 (0)