https://www.cnblogs.com/linhuiy/p/13157250.html?share_token=7F3145A5-DB3B-473A-9825-17C5E5B27FBE&tt_from=mobile_qq&utm_source=mobile_qq&utm_medium=toutiao_ios&utm_campaign=client_share

简单集成Prometheus+Grafana,指标的上报收集可视化。

Prometheus
Prometheus是一个监控平台,监控从HTTP端口收集受监控目标的指标。在微服务的架构里Prometheus多维度的数据收集是非常强大的 我们首先下载安装Prometheus和node_exporter,node_exporter用于监控CPU、内存、磁盘、I/O等信息

node_exporter下载地址

https://github.com/prometheus/node_exporter/releases/

Prometheus下载地址

https://prometheus.io/download/

启动服务

http://localhost:5000/metrics

http://localhost:5901/metrics

平台集成 RG3.PF.Web.StartUsed 6.0.4以上版本

  1. Startup.cs public void Configure(IApplicationBuilder app, IWebHostEnvironment env)

            #region Prometheus+Grafana  监控服务  http://localhost:5901/metrics  2022-04-14 cbg
            // 放着  UseRouting 前面
            app.UseMetricServer();
            #endregion Prometheus+Grafana


            #region Prometheus+Grafana  监控服务  http://localhost:5000/metrics   2022-04-14 cbg
            // 放在UseEndpoints和UseRouting中间
            app.UseMetricServer();
            #endregion Prometheus+Grafana
  1. Program.cs

#region Prometheus+Grafana 监控服务 http://localhost:5000/metrics 2022-04-14 cbg

    ```json
// 放在UseEndpoints和UseRouting中间

        ////每100事件采集一个
        //.WithThreadPoolSchedulingStats(sampleRate: SampleEvery.HundredEvents)

        DotNetRuntimeStatsBuilder
            .Customize()
            //每5个事件个采集一个
            .WithContentionStats(sampleRate: SampleEvery.FiveEvents)
            //每10事件采集一个
            .WithJitStats(sampleRate: SampleEvery.TenEvents)
            .WithThreadPoolStats()
            .WithGcStats()
            .StartCollecting();
        #endregion Prometheus+Grafana

`

文档更新时间: 2022-04-14 09:28   作者:admin