Pular para conteúdo

Traces

TraceConfig

Configura os Traces e realiza o envio ao Grafana/Tempo.

Parameters:

Name Type Description Default
service_name str

Nome do serviço, aplicação ou job que está rodando

required
tempo_url str

Url da aplicação Grafana/Tempo que receberá os traces

required
Source code in observability_mtl_instrument/tracer/trace_config.py
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
class TraceConfig:
    """
    Configura os Traces e realiza o envio ao Grafana/Tempo.

    Parameters:
        service_name: Nome do serviço, aplicação ou job que está rodando
        tempo_url: Url da aplicação Grafana/Tempo que receberá os traces
    """

    def __init__(self, service_name: str, tempo_url: str) -> None:
        self.config_data_trace(service_name, tempo_url)
        self.trace = trace
        self.tracer = trace.get_tracer(__name__)

    def get_tracer(self):
        return self.tracer

    def get_trace(self):
        return self.trace

    def config_data_trace(self, service_name: str, tempo_url: str) -> None:
        resource = Resource.create({SERVICE_NAME: service_name})
        trace.set_tracer_provider(TracerProvider(resource=resource))
        trace.get_tracer_provider().add_span_processor(
            BatchSpanProcessor(OTLPSpanExporter(endpoint=tempo_url))
        )