日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Ocelot监控

發(fā)布時間:2023/12/4 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ocelot监控 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

網(wǎng)關(guān)的作用之一,就是有統(tǒng)一的數(shù)據(jù)出入口,基于這個功能,我們可以在網(wǎng)關(guān)上配置監(jiān)控,從而把所有web服務(wù)的請求應(yīng)答基本數(shù)據(jù)捕獲并展顯出來。
關(guān)于web的監(jiān)控,一般的做法是采集數(shù)據(jù)并保存,然后通過圖表的方式展示出來,所使用的數(shù)據(jù)庫一般是時序數(shù)據(jù)庫Graphite,InfluxDB(https://portal.influxdata.com/downloads),OpenDSDB等,本文使用的是InfluxDB,展示數(shù)據(jù)一般采用一個圖形化框架,本文用的是Grafana(https://grafana.com/get)
首先按上面鏈接下載InfluxDB和Grafana
InfluxDB下載后如下圖

關(guān)于InfluxDB的操作,有相應(yīng)的命令,可以參考官方文檔,這里不贅述,我們只在這里創(chuàng)建一個數(shù)據(jù)庫MetricsDB即可

Grafana下載后,在Bin目錄下grafana-server.exe為啟動程序,啟動即可
在瀏覽器里輸入http://localhost:3000,用戶名和密碼都是admin(進(jìn)入后可修改)
添加DataSource

添加Dashboards,可以使用導(dǎo)入https://grafana.com/dashboards/2125


點(diǎn)擊Import即可進(jìn)行圖形視圖面板

我們使用的是App.Metrics(https://www.app-metrics.io)的包來實(shí)現(xiàn)監(jiān)控
在OcelotGateway項(xiàng)目中,添加引用下面五個Nuget包
App.Metrics主包
App.Metrics.AspNetCore.Endpoints
App.Metrics.AspNetCore.Reporting
App.Metrics.AspNetCore.Tracking
App.Metrics.Reporting.InfluxDB

Startup.cs

using Microsoft.AspNetCore.Builder;

using Microsoft.AspNetCore.Hosting;

using Microsoft.Extensions.Configuration;

using Microsoft.Extensions.DependencyInjection;

using Ocelot.DependencyInjection;

using Ocelot.Middleware;

using Ocelot.JWTAuthorizePolicy;

using App.Metrics;

using System;


namespace OcelotGateway

{

public class Startup

{

public Startup(IConfiguration configuration)

{

Configuration = configuration;

}

public IConfiguration Configuration { get; }

public void ConfigureServices(IServiceCollection services)

{

#region 注放Metrics?

var metrics = AppMetrics.CreateDefaultBuilder()

.Configuration.Configure(

options =>

{

options.AddAppTag("RepairApp");

options.AddEnvTag("stage");

})

.Report.ToInfluxDb(

options =>

{

options.InfluxDb.BaseUri = new Uri("http://127.0.0.1:8086");

options.InfluxDb.Database = "AppMetricsDemo";

options.InfluxDb.UserName = "admin";

options.InfluxDb.Password = "123456";

options.HttpPolicy.BackoffPeriod = TimeSpan.FromSeconds(30);

options.HttpPolicy.FailuresBeforeBackoff = 5;

options.HttpPolicy.Timeout = TimeSpan.FromSeconds(10);

options.FlushInterval = TimeSpan.FromSeconds(5);

})

.Build();

services.AddMetrics(metrics);

services.AddMetricsReportScheduler();

services.AddMetricsTrackingMiddleware();

services.AddMetricsEndpoints();

#endregion


#region 注放JWT

var audienceConfig = Configuration.GetSection("Audience");

//注入OcelotJwtBearer

services.AddOcelotJwtBearer(audienceConfig["Issuer"], audienceConfig["Issuer"], audienceConfig["Secret"], "GSWBearer");

#endregion

//注入配置文件,AddOcelot要求參數(shù)是IConfigurationRoot類型,所以要作個轉(zhuǎn)換

services.AddOcelot(Configuration as ConfigurationRoot);

}

public void Configure(IApplicationBuilder app, IHostingEnvironment env)

{

#region Metrics中間件

app.UseMetricsAllMiddleware();

app.UseMetricsAllEndpoints();

#endregion

app.UseOcelot().Wait();

}

}

}

接下來啟動AuthenticationAPI,DemoAAPI,DemoBAPI,OcelotGateway,TestClient,請求幾次后,查看localhost:3000的監(jiān)控頁面如下:

相關(guān)文章:

  • Ocelot——初識基于.Net Core的API網(wǎng)關(guān)

  • Ocelot API網(wǎng)關(guān)的實(shí)現(xiàn)剖析

  • 微服務(wù)網(wǎng)關(guān)Ocelot

  • API網(wǎng)關(guān)Ocelot 使用Polly 處理部分失敗問題

  • 談?wù)勎⒎?wù)中的 API 網(wǎng)關(guān)(API Gateway)

  • Ocelot網(wǎng)關(guān)

  • Ocelot統(tǒng)一權(quán)限驗(yàn)證

  • 應(yīng)用監(jiān)控怎么做?

  • ASP.NET Core之跨平臺的實(shí)時性能監(jiān)控

  • .Net Core 2.0+ InfluxDB+Grafana+App Metrics 實(shí)現(xiàn)跨平臺的實(shí)時性能監(jiān)控

  • 應(yīng)用程序的8個關(guān)鍵性能指標(biāo)以及測量方法

  • 使用Metrics監(jiān)控應(yīng)用程序的性能

  • 下一個計(jì)劃 : .NET/.NET Core應(yīng)用性能管理

原文:http://www.cnblogs.com/axzxs2001/p/8005101.html


.NET社區(qū)新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com

總結(jié)

以上是生活随笔為你收集整理的Ocelot监控的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。