This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 80f5c6f4cf [TRACES][OTEL] allow otel_debugging_on to emit traces to
otel host (#43500)
80f5c6f4cf is described below
commit 80f5c6f4cffb072e7b620d836c4e1c639bc19f25
Author: ninad-opsverse <[email protected]>
AuthorDate: Thu Oct 31 22:09:29 2024 +0530
[TRACES][OTEL] allow otel_debugging_on to emit traces to otel host (#43500)
---
airflow/traces/otel_tracer.py | 25 ++++++++++++-------------
1 file changed, 12 insertions(+), 13 deletions(-)
diff --git a/airflow/traces/otel_tracer.py b/airflow/traces/otel_tracer.py
index c6d493db14..f85d3856ae 100644
--- a/airflow/traces/otel_tracer.py
+++ b/airflow/traces/otel_tracer.py
@@ -57,7 +57,7 @@ class OtelTrace:
When OTEL is enabled, the Trace class will be replaced by this class.
"""
- def __init__(self, span_exporter: ConsoleSpanExporter | OTLPSpanExporter,
tag_string: str | None = None):
+ def __init__(self, span_exporter: OTLPSpanExporter, tag_string: str | None
= None):
self.span_exporter = span_exporter
self.span_processor = BatchSpanProcessor(self.span_exporter)
self.tag_string = tag_string
@@ -75,6 +75,10 @@ class OtelTrace:
)
else:
tracer_provider = TracerProvider(resource=resource)
+ debug = conf.getboolean("traces", "otel_debugging_on")
+ if debug is True:
+ log.info("[ConsoleSpanExporter] is being used")
+
tracer_provider.add_span_processor(BatchSpanProcessor(ConsoleSpanExporter()))
tracer_provider.add_span_processor(self.span_processor)
tracer = tracer_provider.get_tracer(component)
"""
@@ -265,21 +269,16 @@ def get_otel_tracer(cls) -> OtelTrace:
"""Get OTEL tracer from airflow configuration."""
host = conf.get("traces", "otel_host")
port = conf.getint("traces", "otel_port")
- debug = conf.getboolean("traces", "otel_debugging_on")
ssl_active = conf.getboolean("traces", "otel_ssl_active")
tag_string = cls.get_constant_tags()
- if debug is True:
- log.info("[ConsoleSpanExporter] is being used")
- return OtelTrace(span_exporter=ConsoleSpanExporter(),
tag_string=tag_string)
- else:
- protocol = "https" if ssl_active else "http"
- endpoint = f"{protocol}://{host}:{port}/v1/traces"
- log.info("[OTLPSpanExporter] Connecting to OpenTelemetry Collector at
%s", endpoint)
- return OtelTrace(
- span_exporter=OTLPSpanExporter(endpoint=endpoint,
headers={"Content-Type": "application/json"}),
- tag_string=tag_string,
- )
+ protocol = "https" if ssl_active else "http"
+ endpoint = f"{protocol}://{host}:{port}/v1/traces"
+ log.info("[OTLPSpanExporter] Connecting to OpenTelemetry Collector at %s",
endpoint)
+ return OtelTrace(
+ span_exporter=OTLPSpanExporter(endpoint=endpoint,
headers={"Content-Type": "application/json"}),
+ tag_string=tag_string,
+ )
class AirflowOtelIdGenerator(IdGenerator):