Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
Skip to content
World desk6 min

Observabilidade com .NET, Prometheus e Grafana: métricas, Docker e /metrics — Parte 2

Veja como expor métricas .NET em /metrics, configurá-las como target de scrape do Prometheus no Docker e consultá-las em painéis Grafana com PromQL.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Esta configuração usa o modelo pull do Prometheus: a aplicação .NET expõe métricas por HTTP em /metrics, o Prometheus consulta esse endpoint e o Grafana lê os dados armazenados para exibi-los em painéis. OTLP também é uma opção, mas usa outro fluxo e outro endpoint; não confunda o receptor OTLP com /metrics.

Como os dados passam da aplicação ao painel

O fluxo desta parte é: instrumentos na aplicação .NET → exporter Prometheus e endpoint HTTP → scrape e armazenamento no Prometheus → consultas e dashboards no Grafana. A aplicação registra medições; a instrumentação e o exporter as disponibilizam. No modelo pull, o Prometheus busca as métricas no endereço configurado, em vez de a aplicação enviá-las a cada coleta. O Grafana consulta o Prometheus como fonte de dados e apresenta os resultados.

As an Amazon Associate I earn from qualifying purchases.

O guia do OpenTelemetry para exportar métricas .NET a Prometheus e Grafana demonstra esse fluxo. Para contexto sobre métricas no ASP.NET Core, consulte também a visão geral de métricas do ASP.NET Core e a documentação do Microsoft Learn sobre métricas do ASP.NET Core.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Configure e confirme o endpoint /metrics

O caminho /metrics não aparece automaticamente só porque a aplicação tem instrumentação: é preciso configurar o exporter Prometheus e registrar o middleware de scraping na aplicação ASP.NET Core. A documentação do exporter consultada indica /metrics como caminho padrão e mostra UseOpenTelemetryPrometheusScrapingEndpoint() para registrar o endpoint. O caminho pode ser personalizado; se você o alterar, o target do Prometheus precisa usar o caminho correspondente.

  1. Configure o exporter Prometheus na configuração de OpenTelemetry da aplicação, conforme o guia de exporters do OpenTelemetry .NET.
  2. Registre o middleware de scraping com UseOpenTelemetryPrometheusScrapingEndpoint() no pipeline do ASP.NET Core, depois de configurar o serviço e o caminho de acordo com a aplicação.
  3. Inicie a aplicação e confirme que ela está escutando na porta esperada. A partir de um cliente que consiga alcançá-la, abra http://<host>:<porta>/metrics (ou o caminho personalizado). Uma resposta com conteúdo de métricas confirma que a rota responde; não confirma, por si só, que o Prometheus já a está coletando.

Configure o scrape do Prometheus no Docker

O Prometheus precisa de um target HTTP acessível a partir do próprio container. Em uma configuração de scraping, scrape_configs define os jobs; cada job tem um job_name, pode definir um scrape_interval e lista os endereços em targets. Exemplo estrutural:

scrape_configs:
  - job_name: "dotnet-app"
    scrape_interval: 15s
    static_configs:
      - targets: ["app:8080"]

app:8080 é apenas um exemplo de nome de serviço e porta, não um endereço universal. Substitua-o pelo nome e pela porta em que a aplicação pode ser alcançada na rede Docker compartilhada com o Prometheus. Se a aplicação estiver fora dessa rede, use um endereço acessível a partir do container do Prometheus. Dentro de um container, localhost aponta para esse próprio container; não presuma que seja a máquina host nem outro serviço. A documentação consultada não estabelece uma topologia universal de Docker Compose: verifique a rede e os nomes definidos na sua configuração.

Depois de carregar a configuração, confira o estado do target na interface do Prometheus e consulte métricas recebidas. Se o target estiver indisponível, confira primeiro se a aplicação responde no endereço e caminho configurados a partir da rede do Prometheus, e então revise o nome do host, a porta e o protocolo escolhido.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

OTLP é uma alternativa, não outro nome para /metrics

Com OTLP, a aplicação exporta métricas ao receptor OTLP do Prometheus, que precisa ser habilitado com --web.enable-otlp-receiver. O guia consultado mostra o endpoint receptor /api/v1/otlp/v1/metrics. Isso não é o endpoint de scraping HTTP da aplicação: para scrape, o Prometheus busca /metrics no serviço .NET; para OTLP, o exporter envia ao receptor configurado no Prometheus. Use a configuração de aplicação e servidor correspondente a apenas um fluxo por vez, sem apontar um target de scrape para o endpoint OTLP. Veja o guia OpenTelemetry para a configuração OTLP.

Aspecto Scrape Prometheus Exportação OTLP
Direção Prometheus consulta o endpoint HTTP da aplicação. A aplicação/exporter envia ao receptor OTLP configurado.
Configuração ilustrada Middleware de scraping na aplicação e scrape_configs com target no Prometheus. Exporter OTLP na aplicação e receptor OTLP habilitado no Prometheus.
Endereço representativo /metrics é o padrão do exporter ASP.NET Core descrito; o caminho pode ser personalizado. Fonte: documentação dos exporters .NET. /api/v1/otlp/v1/metrics no guia consultado. Fonte: guia de métricas .NET.
Estado e observações na documentação consultada Em 4 de outubro de 2026, a documentação dos exporters informava que o exporter Prometheus ASP.NET Core estava em desenvolvimento e não suportava exemplars. O mesmo guia de exporters recomendava OTLP para produção.

Essas observações refletem a documentação consultada em 4 de outubro de 2026, não uma garantia sobre versões futuras. Antes de adotar um exporter, confira a documentação e o estado da versão que pretende usar.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Conecte o Grafana e monte um painel

O Grafana consulta o Prometheus; não substitui o scrape nem armazena a coleta como o Prometheus. Configure Prometheus como fonte de dados no Grafana usando um endereço que o servidor Grafana consiga alcançar. Em Docker, aplique a mesma regra de rede: um endereço acessível do navegador pode não ser acessível do container Grafana, e vice-versa.

  1. Adicione a fonte de dados Prometheus nas configurações de fontes de dados do Grafana e informe a URL de serviço do Prometheus acessível pelo Grafana.
  2. Crie um painel e escolha Prometheus como fonte da consulta.
  3. Escreva PromQL usando uma métrica realmente exposta pela sua aplicação. O guia oficial usa rate(MyFruitCounter_total[5m]) como demonstração: calcula a taxa por segundo de aumento do contador ao longo da janela de cinco minutos. MyFruitCounter_total é um nome de exemplo, não uma métrica obrigatória de aplicações .NET.

Se preferir começar com um dashboard existente, o Grafana Labs publica o ASP.NET OTEL Metrics e o OpenTelemetry dotnet webapi. Trate-os como modelos a conferir contra os nomes e rótulos de métricas disponíveis na sua aplicação, não como garantia de que toda configuração terá os mesmos dados.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Diagnóstico quando os dados não aparecem

  • A aplicação não responde: confirme que o processo está ativo, escutando na porta esperada e acessível a partir de onde o teste está sendo feito.
  • /metrics não responde: verifique se o exporter e o middleware foram configurados e se o caminho usado corresponde ao padrão ou ao caminho personalizado.
  • O target do Prometheus está indisponível: confira job_name, porta, caminho e endereço resolvível a partir do container Prometheus. Não use localhost como atalho para outro container.
  • Há incompatibilidade de protocolo: confirme que a aplicação usa o exporter correspondente ao método escolhido. No scrape, o Prometheus consulta o endpoint da aplicação; em OTLP, o exporter envia ao receptor OTLP habilitado.
  • O Prometheus coleta, mas o painel está vazio: confira se a fonte de dados Grafana aponta para o Prometheus correto e se a consulta usa o nome de métrica e os rótulos que existem nos dados coletados.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.