Prometheus собирает метрики только из HomeController

Я пытаюсь реализовать новые метрики в своем приложении ASP.NET Core MVC, используя .NET 8 и новую OpenTelemetry (1.6.0-rc.1).

Все работает нормально, кроме одной проблемы: почему-то мое приложение отображает только метрики изHomeControllerи никаких показателей от других моих контроллеров.

Вот как я все настроил:

      var builder = WebApplication.CreateBuilder(args);
builder.Services.AddOpenTelemetry()
  .WithMetrics(builder =>
  {
      builder.AddPrometheusExporter();
      builder.AddAspNetCoreInstrumentation();
      builder.AddPrometheusHttpListener();

      builder.AddMeter("Microsoft.AspNetCore.Hosting",
             "Microsoft.AspNetCore.Server.Kestrel");

      builder.AddView("http-server-request-duration",
        new ExplicitBucketHistogramConfiguration
        {
          Boundaries = new double[] { 0, 0.005, 0.01, 0.025, 0.05,
               0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10 }
        });
  });

Домашний контроллер:

      public class HomeController : Controller
{
    [HttpGet]
    public IActionResult Index()
    {
        return View();
    }
}

Контроллер настроек:

      [Authorize]
public class SettingsController : Controller
{
    private readonly IUsersService _accountsService;

    public SettingsController(IUsersService accountsService)
    {
        _accountsService = accountsService;
    }

    public IActionResult Index()
    {
        return View();
    }
}

Часть моих показателей

Я не могу понять причину этой проблемы и надеюсь, что кто-нибудь сможет мне помочь.

Пробовал точно так же, как https://www.youtube.com/watch?v=A2pKhNQoQUU

0 ответов

Другие вопросы по тегам