File tree Expand file tree Collapse file tree 4 files changed +34
-0
lines changed
preview/reasoning_engines/templates Expand file tree Collapse file tree 4 files changed +34
-0
lines changed Original file line number Diff line number Diff line change 1818import os
1919import cloudpickle
2020import sys
21+ import re
2122from unittest import mock
2223from typing import Optional
2324
@@ -769,8 +770,17 @@ def test_tracing_setup(
769770 otlp_span_exporter_mock .assert_called_once_with (
770771 session = mock .ANY ,
771772 endpoint = "https://telemetry.googleapis.com/v1/traces" ,
773+ headers = mock .ANY ,
772774 )
773775
776+ user_agent = otlp_span_exporter_mock .call_args .kwargs ["headers" ]["User-Agent" ]
777+ assert (
778+ re .fullmatch (
779+ r"Vertex-Agent-Engine\/[\d\.]+ OTel-OTLP-Exporter-Python\/[\d\.]+" ,
780+ user_agent ,
781+ )
782+ is not None
783+ )
774784 assert (
775785 trace_provider_mock .call_args .kwargs ["resource" ].attributes
776786 == expected_attributes
Original file line number Diff line number Diff line change 1717import importlib
1818import json
1919import os
20+ import re
2021from unittest import mock
2122from typing import Optional
2223
@@ -723,8 +724,17 @@ def test_tracing_setup(
723724 otlp_span_exporter_mock .assert_called_once_with (
724725 session = mock .ANY ,
725726 endpoint = "https://telemetry.googleapis.com/v1/traces" ,
727+ headers = mock .ANY ,
726728 )
727729
730+ user_agent = otlp_span_exporter_mock .call_args .kwargs ["headers" ]["User-Agent" ]
731+ assert (
732+ re .fullmatch (
733+ r"Vertex-Agent-Engine\/[\d\.]+ OTel-OTLP-Exporter-Python\/[\d\.]+" ,
734+ user_agent ,
735+ )
736+ is not None
737+ )
728738 assert (
729739 trace_provider_mock .call_args .kwargs ["resource" ].attributes
730740 == expected_attributes
Original file line number Diff line number Diff line change @@ -357,8 +357,10 @@ def _detect_cloud_resource_id(project_id: str) -> Optional[str]:
357357
358358 if enable_tracing :
359359 try :
360+ import opentelemetry .exporter .otlp .proto .http .version
360361 import opentelemetry .exporter .otlp .proto .http .trace_exporter
361362 import google .auth .transport .requests
363+ from google .cloud .aiplatform import version as aip_version
362364 except (ImportError , AttributeError ):
363365 return _warn_missing_dependency (
364366 "opentelemetry-exporter-otlp-proto-http" , needed_for_tracing = True
@@ -367,12 +369,17 @@ def _detect_cloud_resource_id(project_id: str) -> Optional[str]:
367369 import google .auth
368370
369371 credentials , _ = google .auth .default ()
372+ vertex_sdk_version = aip_version .__version__
373+ otlp_http_version = opentelemetry .exporter .otlp .proto .http .version .__version__
374+ user_agent = f"Vertex-Agent-Engine/{ vertex_sdk_version } OTel-OTLP-Exporter-Python/{ otlp_http_version } "
375+
370376 span_exporter = (
371377 opentelemetry .exporter .otlp .proto .http .trace_exporter .OTLPSpanExporter (
372378 session = google .auth .transport .requests .AuthorizedSession (
373379 credentials = credentials
374380 ),
375381 endpoint = "https://telemetry.googleapis.com/v1/traces" ,
382+ headers = {"User-Agent" : user_agent },
376383 )
377384 )
378385 span_processor = opentelemetry .sdk .trace .export .BatchSpanProcessor (
Original file line number Diff line number Diff line change @@ -359,8 +359,10 @@ def _detect_cloud_resource_id(project_id: str) -> Optional[str]:
359359
360360 if enable_tracing :
361361 try :
362+ import opentelemetry .exporter .otlp .proto .http .version
362363 import opentelemetry .exporter .otlp .proto .http .trace_exporter
363364 import google .auth .transport .requests
365+ from google .cloud .aiplatform import version as aip_version
364366 except (ImportError , AttributeError ):
365367 return _warn_missing_dependency (
366368 "opentelemetry-exporter-otlp-proto-http" , needed_for_tracing = True
@@ -369,12 +371,17 @@ def _detect_cloud_resource_id(project_id: str) -> Optional[str]:
369371 import google .auth
370372
371373 credentials , _ = google .auth .default ()
374+ vertex_sdk_version = aip_version .__version__
375+ otlp_http_version = opentelemetry .exporter .otlp .proto .http .version .__version__
376+ user_agent = f"Vertex-Agent-Engine/{ vertex_sdk_version } OTel-OTLP-Exporter-Python/{ otlp_http_version } "
377+
372378 span_exporter = (
373379 opentelemetry .exporter .otlp .proto .http .trace_exporter .OTLPSpanExporter (
374380 session = google .auth .transport .requests .AuthorizedSession (
375381 credentials = credentials
376382 ),
377383 endpoint = "https://telemetry.googleapis.com/v1/traces" ,
384+ headers = {"User-Agent" : user_agent },
378385 )
379386 )
380387 span_processor = opentelemetry .sdk .trace .export .BatchSpanProcessor (
You can’t perform that action at this time.
0 commit comments