Skip to content

Commit ffa057c

Browse files
committed
feat: Add --trigger_sources and ADK service options to cli_deploy_agent_engine
COPYBARA_INTEGRATE_REVIEW=#5960 from google:adk-api-server 28b1235 Change-Id: If1e5374682468dd1f4d9a11983bcf0f830418ffd
1 parent 61a3933 commit ffa057c

10 files changed

Lines changed: 1095 additions & 421 deletions

File tree

pyproject.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,11 @@ optional-dependencies.mcp = [
176176
"mcp>=1.24,<2",
177177
]
178178

179-
optional-dependencies.otel-gcp = [ "opentelemetry-instrumentation-google-genai>=0.6b0,<1" ]
179+
optional-dependencies.otel-gcp = [
180+
"opentelemetry-instrumentation-google-genai>=0.6b0,<1",
181+
"opentelemetry-instrumentation-grpc>=0.43b0,<1",
182+
"opentelemetry-instrumentation-httpx>=0.54b0,<1",
183+
]
180184
optional-dependencies.slack = [ "slack-bolt>=1.22" ]
181185
optional-dependencies.test = [
182186
"a2a-sdk>=0.3,<0.4",

src/google/adk/cli/api_server.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import os
2727
import re
2828
import sys
29-
import time
3029
import traceback
3130
import typing
3231
from typing import Any
@@ -548,6 +547,26 @@ def _setup_instrumentation_lib_if_installed():
548547
"Unable to import GoogleGenAiSdkInstrumentor - some"
549548
" telemetry will be disabled. Make sure to install google-adk[otel-gcp]"
550549
)
550+
if os.getenv("GOOGLE_CLOUD_AGENT_ENGINE_ID"):
551+
# Set up HTTPX and gRPC instrumentation for A2A multi-agent observability.
552+
try:
553+
from opentelemetry.instrumentation.httpx import HTTPXClientInstrumentor
554+
555+
HTTPXClientInstrumentor().instrument()
556+
except (ImportError, AttributeError):
557+
logger.warning(
558+
"telemetry enabled but proceeding without HTTPX instrumentation,"
559+
" because google-adk[otel-gcp] has not been installed"
560+
)
561+
try:
562+
from opentelemetry.instrumentation.grpc import GrpcInstrumentorClient
563+
564+
GrpcInstrumentorClient().instrument()
565+
except (ImportError, AttributeError):
566+
logger.warning(
567+
"telemetry enabled but proceeding without gRPC instrumentation,"
568+
" because google-adk[otel-gcp] has not been installed"
569+
)
551570

552571

553572
class ApiServer:

0 commit comments

Comments
 (0)