gpt4 book ai didi

.net-core - 在.net core应用程序中使用Prometheus

转载 作者:行者123 更新时间:2023-12-02 03:44:03 26 4
gpt4 key购买 nike

我正在 .net core 应用程序中使用 Prometheus 进行 POC。我在 Prometheus 网站上没有找到足够的信息来开始使用,我有以下问题,如果有人能回答的话会很有帮助

  • a) 我是否需要编写自己的 .net core 客户端才能使用普罗米修斯在应用程序中?

  • b) 使用 Prometheus 进行指标记录的最佳方法是什么,例如我应该在每个客户端中使用还是添加普罗米修斯日志逻辑services 方法,以便记录每个请求的指标并管道中的响应?

  • c) 在.net core应用程序中哪里配置prometheus服务器?

最佳答案

Monitor .Net core web API using prometheus

安装以下软件包

<PackageReference Include="App.Metrics.AspNetCore" Version="3.2.0" />
<PackageReference Include="App.Metrics.AspNetCore.Endpoints" Version="3.2.0" />
<PackageReference Include="App.Metrics.AspNetCore.Tracking" Version="3.2.0" />
<PackageReference Include="App.Metrics.Formatters.Prometheus" Version="3.2.0" />

在Program.cs类中添加以下代码以支持prometheus

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseMetricsWebTracking()
.UseMetrics(option =>
{
option.EndpointOptions = endpointOptions =>
{
endpointOptions.MetricsTextEndpointOutputFormatter = new MetricsPrometheusTextOutputFormatter();
endpointOptions.MetricsEndpointOutputFormatter = new MetricsPrometheusProtobufOutputFormatter();
endpointOptions.EnvironmentInfoEndpointEnabled = false;
};
})
.UseStartup<Startup>();

进行上述所有更改后,确保以下端点正常工作

  http://<ip:port>/metrics
http://<ip:port>/metrics-text

在 prometheus.yml 中添加新作业

  - job_name: 'SampleWebAPi'
metrics_path: /metrics-text
static_configs:
- targets: ['<ip:port>']

重启 prometheus 然后检查目标页面

<强> http://localhost:9090/targets

Github Code

关于.net-core - 在.net core应用程序中使用Prometheus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47395762/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com