Skip to content

Commit 8eb50f7

Browse files
UN-2830 [MISC] Suppress OpenTelemetry EventLogger deprecation warning in prompt-service (#1585)
UN-2830 Suppress OpenTelemetry EventLogger LogRecord deprecation warning in prompt-service Suppressed the LogDeprecatedInitWarning from OpenTelemetry SDK 1.37.0's EventLogger.emit() method which still uses deprecated trace_id/span_id/trace_flags parameters instead of the context parameter. This is a temporary workaround for an upstream bug in OpenTelemetry Python SDK where EventLogger.emit() was not updated when LogRecord API was changed to accept context parameter. The warning only appears in prompt-service because llama-index emits OpenTelemetry Events. See: open-telemetry/opentelemetry-python#4328 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <noreply@anthropic.com>
1 parent 13642ba commit 8eb50f7

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

  • prompt-service/src/unstract/prompt_service

prompt-service/src/unstract/prompt_service/config.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import logging
2+
import warnings
23
from os import environ as env
34

45
from dotenv import load_dotenv
@@ -22,6 +23,19 @@ def create_app() -> Flask:
2223
"""Creates and configures the Flask application."""
2324
log_level = env.get("LOG_LEVEL", LogLevel.INFO.value).upper()
2425
setup_logging(log_level)
26+
27+
# Suppress OpenTelemetry EventLogger LogRecord deprecation warning
28+
# This is a bug in OpenTelemetry SDK 1.37.0 where EventLogger.emit() still uses
29+
# deprecated trace_id/span_id/trace_flags parameters instead of context parameter.
30+
# See: https://github.com/open-telemetry/opentelemetry-python/issues/4328
31+
# TODO: Remove this suppression once OpenTelemetry fixes EventLogger.emit()
32+
warnings.filterwarnings(
33+
"ignore",
34+
message="LogRecord init with.*trace_id.*span_id.*trace_flags.*deprecated",
35+
category=DeprecationWarning,
36+
module="opentelemetry.sdk._events",
37+
)
38+
2539
log_level = getattr(logging, log_level, logging.INFO)
2640
app = Flask("prompt-service")
2741
app.logger.setLevel(log_level)

0 commit comments

Comments
 (0)