Pular para o conteúdo principal
Quando nenhum dado é reportado do seu app para o AppSignal, confira os problemas comuns abaixo.

Nenhum dado está sendo reportado

O endpoint de exportação do OpenTelemetry está mal configurado

Apps OpenTelemetry, por padrão, exportam dados para http://localhost:4318. O AppSignal exige um endpoint customizado para enviar dados ao AppSignal collector. O AppSignal collector pode rodar como hospedado ou self-hosted. Leia nossa página Hospedado vs Self-hosted para mais informações sobre a diferença entre esses tipos de collector. Siga as instruções para o tipo de collector que sua aplicação usa abaixo:

Collector hospedado

Ao usar o collector hospedado, certifique-se de usar a URL do collector exibida no assistente de adicionar app como endpoint do exporter do OpenTelemetry. No assistente de adicionar app, selecione a linguagem que sua aplicação usa que o AppSignal suporta para OpenTelemetry, ou use a opção “More languages” para visualizar o endpoint do collector hospedado. Ela pode estar em um exemplo de código, atribuída a uma variável chamada endpoint. O formato do collector hospedado é o seguinte:
  • https://COLLECTOR-ID.REGION.appsignal-collector.net
O endpoint do exporter precisa ser configurado via variável de ambiente OTEL_EXPORTER_OTLP_ENDPOINT ou no próprio app, onde o OpenTelemetry é configurado. Consulte o guia de instalação específico da linguagem que sua aplicação está usando para mais detalhes.

Collector self-hosted

Ao usar um collector self-hosted, o endpoint do exporter do OpenTelemetry precisa apontar para a localização onde o collector está rodando. Se o collector estiver rodando no mesmo host (instalado usando o [pacote Linux]), o hostname é localhost. Se o collector roda em um [contêiner Docker][imagem Docker] ou cluster Kubernetes, o hostname pode variar com base no nome de serviço especificado. Recomendamos nomear o serviço como appsignal e atualizar o endpoint do exporter para corresponder ao hostname appsignal.
  • Hostname, vários valores são possíveis:
    • [Pacote Linux]: localhost:8099
    • [Imagem Docker]: appsignal:8099
  • Exemplos:
    • http://localhost:8099, ou http://appsignal:8099 em Docker.
Para algumas linguagens, no SDK do OpenTelemetry o esquema da URI (http/https) não deve ser definido como parte do endpoint do exporter do OpenTelemetry. Consulte o guia de instalação da linguagem que sua aplicação usa. O endpoint do exporter precisa ser configurado via variável de ambiente OTEL_EXPORTER_OTLP_ENDPOINT ou no próprio app, onde o OpenTelemetry é configurado. Consulte o guia de instalação específico da linguagem que sua aplicação está usando para mais detalhes.

Endpoints do exporter

Alguns exporters do OpenTelemetry podem precisar ser configurados por tipo de dado do OpenTelemetry para endpoints específicos. Ao configurar um exporter de trace/span, use o endpoint de traces; para métricas, use o endpoint de métricas; etc. Esses endpoints no AppSignal collector são:
  • Dados de trace:
    • /v1/traces ou,
    • /v1/traces
  • Dados de métricas:
    • /v1/metrics ou,
    • /v1/metrics
  • Dados de log:
    • /v1/logs ou,
    • /v1/logs

O protocolo de exportação do OpenTelemetry não está definido como http/protobuf

O AppSignal collector só suporta o OpenTelemetry Protocol (OTLP) sobre HTTP com codificação Protobuf. Configuração obrigatória:
  • Formato de protocolo: http/protobuf
Se o OpenTelemetry no seu app está usando gRPC ou JSON como formato de exportação, atualize a configuração para usar o formato HTTP/protobuf. Para configurar o formato de protocolo do exporter, siga as etapas de instalação da linguagem que sua aplicação está usando.

O collector self-hosted não está rodando ou está inacessível

Para enviar dados ao AppSignal, o collector self-hosted precisa ter iniciado corretamente. Erros de exportação visíveis nos logs da aplicação podem indicar que o collector não está rodando. Para verificar se está rodando, confira os logs do collector. Os logs do collector podem ser encontrados em: Se o collector está rodando mas não pode ser alcançado, verifique as configurações de rede internas para ver se a aplicação consegue chegar ao host do collector.

Dados reportados ausentes ou incompletos

Se você está vendo apenas alguns dados e está faltando mais dados sobre o que sua aplicação está fazendo, provavelmente isso se deve a instrumentação ausente do OpenTelemetry na sua aplicação. O OpenTelemetry não instrumenta tudo automaticamente. Para coletar dados de frameworks e bibliotecas específicos, você precisará instalar e configurar bibliotecas adicionais de instrumentação. Para reportar mais dados, instale as bibliotecas de instrumentação do OpenTelemetry apropriadas para as bibliotecas correspondentes usadas na sua aplicação. Consulte o guia adicionar mais instrumentação do OpenTelemetry para a linguagem da sua aplicação sobre como instalar mais pacotes de instrumentação.