Skip to content

Commit e50202d

Browse files
authored
Log httpx errors with repr (#1188)
Some httpx errors have empty descriptions, e.g. `ReadError("")`, so logging with `str` is not informative. Logging with `repr` will allow to see the exception type.
1 parent d5c56f1 commit e50202d

File tree

2 files changed

+5
-5
lines changed
  • gateway/src/dstack/gateway/core
  • src/dstack/_internal/server/services/gateways

2 files changed

+5
-5
lines changed

gateway/src/dstack/gateway/core/auth.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ async def has_access(self, project: str, token: str) -> bool:
2424
if resp.status_code == 200:
2525
return True
2626
except httpx.RequestError as e:
27-
logger.debug("Failed to check access: %s", e)
27+
logger.debug("Failed to check access: %r", e)
2828
return False
2929

3030

src/dstack/_internal/server/services/gateways/__init__.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,7 @@ async def register_service(session: AsyncSession, run_model: RunModel):
365365
except SSHError:
366366
raise ServerClientError("Gateway tunnel is not working")
367367
except httpx.RequestError as e:
368-
raise GatewayError(f"Gateway is not working: {e}")
368+
raise GatewayError(f"Gateway is not working: {e!r}")
369369

370370

371371
async def register_replica(
@@ -382,7 +382,7 @@ async def register_replica(
382382
)
383383
logger.info("%s: replica is registered for service %s", fmt(job_model), run.id.hex)
384384
except (httpx.RequestError, SSHError) as e:
385-
raise GatewayError(str(e))
385+
raise GatewayError(repr(e))
386386

387387

388388
async def unregister_service(session: AsyncSession, run_model: RunModel):
@@ -400,7 +400,7 @@ async def unregister_service(session: AsyncSession, run_model: RunModel):
400400
# ignore if service is not registered
401401
logger.warning("%s: unregistering service: %s", fmt(run_model), e)
402402
except (httpx.RequestError, SSHError) as e:
403-
raise GatewayError(str(e))
403+
raise GatewayError(repr(e))
404404

405405

406406
async def unregister_replica(session: AsyncSession, job_model: JobModel):
@@ -431,7 +431,7 @@ async def unregister_replica(session: AsyncSession, job_model: JobModel):
431431
# ignore if replica is not registered
432432
logger.warning("%s: unregistering replica from service: %s", fmt(job_model), e)
433433
except (httpx.RequestError, SSHError) as e:
434-
raise GatewayError(str(e))
434+
raise GatewayError(repr(e))
435435

436436

437437
async def get_gateway_connection(

0 commit comments

Comments
 (0)