mirror of
https://github.com/encounter/adk-python.git
synced 2026-07-09 18:19:28 -07:00
fix: Yield event with error code when agent run raised A2AClientHTTPError
PiperOrigin-RevId: 840816236
This commit is contained in:
committed by
Copybara-Service
parent
9d2388a46f
commit
b7ce5e17b6
@@ -31,7 +31,7 @@ from a2a.client import ClientEvent as A2AClientEvent
|
||||
from a2a.client.card_resolver import A2ACardResolver
|
||||
from a2a.client.client import ClientConfig as A2AClientConfig
|
||||
from a2a.client.client_factory import ClientFactory as A2AClientFactory
|
||||
from a2a.client.errors import A2AClientError
|
||||
from a2a.client.errors import A2AClientHTTPError
|
||||
from a2a.types import AgentCard
|
||||
from a2a.types import Message as A2AMessage
|
||||
from a2a.types import Part as A2APart
|
||||
@@ -558,6 +558,24 @@ class RemoteA2aAgent(BaseAgent):
|
||||
|
||||
yield event
|
||||
|
||||
except A2AClientHTTPError as e:
|
||||
error_message = f"A2A request failed: {e}"
|
||||
logger.error(error_message)
|
||||
yield Event(
|
||||
author=self.name,
|
||||
error_message=error_message,
|
||||
invocation_id=ctx.invocation_id,
|
||||
branch=ctx.branch,
|
||||
custom_metadata={
|
||||
A2A_METADATA_PREFIX
|
||||
+ "request": a2a_request.model_dump(
|
||||
exclude_none=True, by_alias=True
|
||||
),
|
||||
A2A_METADATA_PREFIX + "error": error_message,
|
||||
A2A_METADATA_PREFIX + "status_code": str(e.status_code),
|
||||
},
|
||||
)
|
||||
|
||||
except Exception as e:
|
||||
error_message = f"A2A request failed: {e}"
|
||||
logger.error(error_message)
|
||||
|
||||
Reference in New Issue
Block a user