Voltar
Trace linkage: conecte os traces da aplicação às queries do banco de dados

Grafana Cloud lança trace linkage para ligar traces da aplicação às queries do banco de dados

Aprofundamento CEVIU

Aprofundamento

O Grafana Cloud tornou o trace linkage geralmente disponível no Database Observability. A ideia é sair de um span de banco dentro de um trace e chegar direto aos detalhes da query, sem cruzar timestamps ou texto de query na mão. O link aparece sobre o texto da query no span. Dali, o app leva às amostras de execução, ao histórico de performance, ao schema e ao explain plan.

O Grafana Cloud Traces, baseado em Tempo, mantém os atributos do span. O trace linkage usa o texto da query, o sistema de banco e o nome do banco para fazer a ligação. Há suporte às convenções estáveis do OpenTelemetry, como db.query.text, e também ao equivalente legado db.statement, então instrumentação existente continua funcionando.

Há dois níveis de correspondência. O primeiro é por texto da query: o Grafana compensa diferenças de formatação, comentários, valores literais mascarados ou não e placeholders de parâmetros, além da normalização que cada engine aplica ao texto coletado pelo Alloy. Esse modo não exige mudança na aplicação. O segundo usa o sqlcommenter, projeto open source doado à comunidade OpenTelemetry, que injeta o trace ID e o span ID num comentário ao fim do SQL. O Alloy extrai o traceparent e o inclui nos logs de amostra de query, o que permite apontar uma execução específica.

Há limites, e a própria fonte os admite. O sqlcommenter não garante que o Alloy capturou aquela execução, pois isso depende de a query ser curta e da frequência de polling. Nem todo engine é suportado, e o recurso pode trazer desvantagens para os caches do banco. Mesmo com sqlcommenter, o match exato continua sendo best-effort.

Por que isso importa

Para quem opera plataforma, a leitura é prática: o caminho de "a requisição ficou lenta" até "esta query, com este plano" encurta, e isso reduz tempo de diagnóstico em incidente. Como o match por texto funciona sem mexer no código, dá para começar sem um ciclo de deploy. Já ligar o sqlcommenter pede um teste, principalmente por causa do possível impacto no cache do banco em produção.

Linha do tempo

  1. Grafana Alloy ganha engine OpenTelemetry em Public Preview, a partir da v1.21.0.

  2. Grafana Cloud torna o trace linkage geralmente disponível no Database Observability.

Perguntas frequentes

O que é o trace linkage do Grafana Cloud?

É um recurso do Database Observability que liga spans de banco de traces OpenTelemetry aos dados de query coletados pelo Alloy. Do span, você clica no texto da query e chega a amostras, histórico de performance, schema e explain plan. Está geralmente disponível.

Preciso do sqlcommenter para usar o trace linkage?

Não. Se o span já traz o texto da query em db.query.text ou db.statement e o Database Observability coletou essa query, o match por texto tende a funcionar sem instrumentação extra. O sqlcommenter é opcional e melhora a precisão, ligando o trace a uma execução específica.

Quais são as limitações do sqlcommenter nesse cenário?

Ele não garante que o Alloy capturou aquela execução, pois isso depende da duração da query e da frequência de polling. Nem todo engine de banco é suportado, e pode haver desvantagens para os caches do banco. O match exato segue como best-effort.

O que preciso ter configurado para começar?

A aplicação precisa estar instrumentada com um SDK OpenTelemetry que envia traces ao Grafana Cloud, e o Database Observability precisa estar configurado com o Alloy coletando telemetria do banco. A documentação do Grafana traz o passo a passo do trace linkage.

Fontes

Avalie este artigo:
Categoria
CEVIU DevOps
Publicado
06 de novembro de 2026
Editoria
CEVIU DevOps

Quer receber mais sobre CEVIU DevOps?

Conteúdo curado diariamente, direto no seu e-mail.

Conteúdo curado diariamenteDiversas categoriasCancele quando quiser