From a483d4a656a3b339c8b0c2c4bab9ff5041ba509f Mon Sep 17 00:00:00 2001 From: Jer Miller Date: Wed, 1 Jul 2026 13:14:04 -0600 Subject: [PATCH] Disable OpenTelemetry SDK by default --- solstone/__init__.py | 5 +++-- tests/test_telemetry_env.py | 37 ++++++++++++++++++++++++++++++++----- 2 files changed, 35 insertions(+), 7 deletions(-) diff --git a/solstone/__init__.py b/solstone/__init__.py index fdbd81eb5..c41e35534 100644 --- a/solstone/__init__.py +++ b/solstone/__init__.py @@ -9,10 +9,11 @@ from importlib.metadata import version as _pkg_version from solstone.log_policy import apply_http_logging_policy -# HuggingFace Hub reads this at import time. Default telemetry off before any -# optional provider path can import huggingface_hub. +# HuggingFace Hub and OpenTelemetry-compatible SDKs read these at import/init +# time. Default telemetry off before any optional provider path can import them. os.environ.setdefault("HF_HUB_DISABLE_TELEMETRY", "1") os.environ.setdefault("DO_NOT_TRACK", "1") +os.environ.setdefault("OTEL_SDK_DISABLED", "true") try: __version__ = _pkg_version("solstone") diff --git a/tests/test_telemetry_env.py b/tests/test_telemetry_env.py index 0092fa650..53d356016 100644 --- a/tests/test_telemetry_env.py +++ b/tests/test_telemetry_env.py @@ -7,12 +7,16 @@ import os import subprocess import sys +TELEMETRY_ENV_KEYS = { + "HF_HUB_DISABLE_TELEMETRY", + "DO_NOT_TRACK", + "OTEL_SDK_DISABLED", +} -def test_huggingface_telemetry_env_defaults_set_at_import(): + +def test_telemetry_env_defaults_set_at_import(): env = { - key: value - for key, value in os.environ.items() - if key not in {"HF_HUB_DISABLE_TELEMETRY", "DO_NOT_TRACK"} + key: value for key, value in os.environ.items() if key not in TELEMETRY_ENV_KEYS } result = subprocess.run( @@ -23,7 +27,30 @@ def test_huggingface_telemetry_env_defaults_set_at_import(): "import os; " "import solstone; " "assert os.environ['HF_HUB_DISABLE_TELEMETRY'] == '1'; " - "assert os.environ['DO_NOT_TRACK'] == '1'" + "assert os.environ['DO_NOT_TRACK'] == '1'; " + "assert os.environ['OTEL_SDK_DISABLED'] == 'true'" + ), + ], + env=env, + check=False, + text=True, + capture_output=True, + ) + + assert result.returncode == 0, result.stderr + + +def test_otel_env_default_preserves_explicit_value(): + env = {**os.environ, "OTEL_SDK_DISABLED": "false"} + + result = subprocess.run( + [ + sys.executable, + "-c", + ( + "import os; " + "import solstone; " + "assert os.environ['OTEL_SDK_DISABLED'] == 'false'" ), ], env=env, -- 2.51.2