from opentelemetry import trace from opentelemetry.sdk.resources import Resource from opentelemetry.sdk.trace import TracerProvider from opentelemetry.sdk.trace.export import BatchSpanProcessor from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter from opentelemetry.sdk.trace.export import ConsoleSpanExporter, SimpleSpanProcessor from .config import Settings def setup_tracing(): settings = Settings() resource = Resource.create({"service.name": "growthops-os"}) provider = TracerProvider(resource=resource) if settings.otlp_endpoint: exporter = OTLPSpanExporter(endpoint=settings.otlp_endpoint, insecure=True) provider.add_span_processor(BatchSpanProcessor(exporter)) else: provider.add_span_processor(SimpleSpanProcessor(ConsoleSpanExporter())) trace.set_tracer_provider(provider)