From 55aa6f669b0c0a47d630db6740a8310da87d43e9 Mon Sep 17 00:00:00 2001 From: Kacper Jawoszek Date: Thu, 9 Oct 2025 04:37:48 -0700 Subject: [PATCH] feat(otel): set default_log_name for GCP logging exporter Uses value of GCP_DEFAULT_LOG_NAME env var if it exists, defaults to literal adk-otel. PiperOrigin-RevId: 817125337 --- src/google/adk/telemetry/google_cloud.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/google/adk/telemetry/google_cloud.py b/src/google/adk/telemetry/google_cloud.py index 64016d64..fbad8cea 100644 --- a/src/google/adk/telemetry/google_cloud.py +++ b/src/google/adk/telemetry/google_cloud.py @@ -15,6 +15,7 @@ from __future__ import annotations import logging +import os from typing import cast from typing import Optional from typing import TYPE_CHECKING @@ -37,6 +38,9 @@ if TYPE_CHECKING: logger = logging.getLogger('google_adk.' + __name__) +_GCP_LOG_NAME_ENV_VARIABLE_NAME = 'GOOGLE_CLOUD_DEFAULT_LOG_NAME' +_DEFAULT_LOG_NAME = 'adk-otel' + @experimental def get_gcp_exporters( @@ -118,9 +122,13 @@ def _get_gcp_metrics_exporter(project_id: str) -> MetricReader: def _get_gcp_logs_exporter(project_id: str) -> LogRecordProcessor: from opentelemetry.exporter.cloud_logging import CloudLoggingExporter + default_log_name = os.environ.get( + _GCP_LOG_NAME_ENV_VARIABLE_NAME, _DEFAULT_LOG_NAME + ) return BatchLogRecordProcessor( - # TODO(jawoszek) - add default_log_name once design is approved. - CloudLoggingExporter(project_id=project_id) + CloudLoggingExporter( + project_id=project_id, default_log_name=default_log_name + ), )