ANÚNCIO

~/questoes/devops

Qual informação um span captura sobre uma operação?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência OpenTelemetry do Zero: Guia Rápido para Devs, SREs e DevOps
Para fixar

O que um Span Captura em OpenTelemetry

Conceito central

Um span é a unidade fundamental de um trace distribuído que registra uma operação individual. Ele captura muito mais que apenas duração: inclui timestamps precisos, atributos customizados, erros e como se relaciona hierarquicamente com outras operações na mesma requisição.

Por que essa resposta faz sentido

A alternativa A está correta porque um span é um contentor rico de informações. Ele registra quando começou e terminou (timestamps), quanto tempo levou (duração), dados adicionais configurados pela aplicação (atributos customizados) e como se conecta a outros spans — se é pai, filho ou irmão na árvore de execução.

Armadilhas comuns

  • Confundir span com métrica — spans registram eventos e operações completas, enquanto métricas capturam medidas agregadas (taxa, latência média, contadores).
  • Pensar que spans servem apenas para medir duração — na verdade, duração é apenas uma das informações capturadas; atributos e contexto hierárquico são igualmente importantes.
  • Acreditar que um span registra dados de infraestrutura — spans vivem no aplicativo; infraestrutura é domínio de métricas de sistema e ferramentas de monitoramento distintas.

Entenda as alternativas

A

Timestamps e duração permitem rastrear quando operações ocorrem e quanto tempo levam. Atributos customizados adicionam contexto relevante (usuário, ID da requisição, versão). Relacionamentos hierárquicos mostram como uma operação se encaixa no fluxo total — essencial para reconstruir o caminho completo de uma requisição através de múltiplos serviços.

B

Reduz um span apenas a duração. Na prática, saber que uma operação levou 500ms sem contexto (qual operação? qual erro? qual usuário?) oferece muito pouca valor. Spans foram projetados justamente para capturar contexto rico além de tempo.

C

Spans rastreiam operações de aplicação, não infraestrutura. Dados de CPU e memória do servidor pertencem ao domínio de métricas de sistema e logs de infraestrutura — conceitos complementares mas distintos em OpenTelemetry.

D

Um span captura informações independentemente de sucesso ou falha. Ele registra dados de operação normalmente funcionando e, caso haja erro, adiciona também informações sobre esse erro — mas não limita seu escopo apenas a casos de falha.

Dica prática: Quando instrumentar código OpenTelemetry, pense em cada span como um 'cartão postal' que viaja pela requisição: escreva nele o que importa (atributos), marque quando saiu e chegou (timestamps) e deixe claro a relação com outros cartões. Isso ajuda debugar quando algo sai errado meses depois em produção.

Revise pensando: Se você vê um span que levou 2 segundos, mas não consegue entender por quê, qual informação adicional do span ajudaria a diagnosticar o problema?