|  | 
| 11 | 11 | from opentelemetry.instrumentation.requests import RequestsInstrumentor | 
| 12 | 12 | from opentelemetry.instrumentation.httpx import HTTPXClientInstrumentor | 
| 13 | 13 | from opentelemetry.instrumentation.confluent_kafka import ConfluentKafkaInstrumentor | 
| 14 |  | - | 
|  | 14 | +from cdip_connector.core import cdip_settings | 
| 15 | 15 | 
 | 
| 16 | 16 | def configure_tracer(name: str, version: str = ""): | 
| 17 |  | -    resource = Resource.create( | 
| 18 |  | -        { | 
| 19 |  | -            "service.name": name, | 
| 20 |  | -            "service.version": version, | 
| 21 |  | -        } | 
| 22 |  | -    ) | 
| 23 |  | -    tracer_provider = TracerProvider(resource=resource) | 
| 24 |  | -    cloud_trace_exporter = CloudTraceSpanExporter() | 
| 25 |  | -    tracer_provider.add_span_processor( | 
| 26 |  | -        # BatchSpanProcessor buffers spans and sends them in batches in a | 
| 27 |  | -        # background thread. The default parameters are sensible, but can be | 
| 28 |  | -        # tweaked to optimize your performance | 
| 29 |  | -        BatchSpanProcessor(cloud_trace_exporter) | 
| 30 |  | -    ) | 
| 31 |  | -    trace.set_tracer_provider(tracer_provider) | 
| 32 |  | -    # Using the X-Cloud-Trace-Context header | 
| 33 |  | -    set_global_textmap(CloudTraceFormatPropagator()) | 
|  | 17 | +    if cdip_settings.TRACING_ENABLED: | 
|  | 18 | +        resource = Resource.create( | 
|  | 19 | +            { | 
|  | 20 | +                "service.name": name, | 
|  | 21 | +                "service.version": version, | 
|  | 22 | +            } | 
|  | 23 | +        ) | 
|  | 24 | +        tracer_provider = TracerProvider(resource=resource) | 
|  | 25 | +        cloud_trace_exporter = CloudTraceSpanExporter() | 
|  | 26 | +        tracer_provider.add_span_processor( | 
|  | 27 | +            # BatchSpanProcessor buffers spans and sends them in batches in a | 
|  | 28 | +            # background thread. The default parameters are sensible, but can be | 
|  | 29 | +            # tweaked to optimize your performance | 
|  | 30 | +            BatchSpanProcessor(cloud_trace_exporter) | 
|  | 31 | +        ) | 
|  | 32 | +        trace.set_tracer_provider(tracer_provider) | 
|  | 33 | +        # Using the X-Cloud-Trace-Context header | 
|  | 34 | +        set_global_textmap(CloudTraceFormatPropagator()) | 
| 34 | 35 |     return trace.get_tracer(name, version) | 
| 35 | 36 | 
 | 
| 36 | 37 | 
 | 
|  | 
0 commit comments