最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用?HttpReports?監(jiān)控?.NET?Core?應(yīng)用程序的方法

 更新時間:2023年02月21日 15:03:03   作者:SpringLeee  
這篇文章主要介紹了使用?HttpReports?監(jiān)控?.NET?Core?應(yīng)用程序的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

簡介

HttpReports 基于.NET Core 開發(fā)的APM監(jiān)控系統(tǒng),使用MIT開源協(xié)議,主要功能包括,統(tǒng)計, 分析, 可視化, 監(jiān)控,追蹤等,適合在中小項目中使用。

github:https://github.com/dotnetcore/HttpReports

我也很榮幸在.NET Conf 2020 大會上, 做了簡單的分享,開源不易,感興趣的同學歡迎Star,支持一下...

在線預覽: http://apm.nonop.cn/
賬號: admin 密碼 123456

項目結(jié)構(gòu)

用戶訪問了我們的三個程序,每個程序都安裝了HttpReports,它負責采集一些程序的數(shù)據(jù)和指標,然后通過Http的方式發(fā)送到Collector,簡單處理后,會錄入到不同的數(shù)據(jù)庫中,同時,HttpReports.UI 負責把這些數(shù)據(jù)多維度的展示出來。

快速開始

接下來,我會構(gòu)建監(jiān)控的 Dashboard,然后在我們的.NET Core 程序中安裝HttpReports來收集數(shù)據(jù),最后展示到UI上,讓我們看看這有多簡單!

首先,需要初始化數(shù)據(jù)庫,來存儲收集的數(shù)據(jù),這里我使用的是MySql數(shù)據(jù)庫(或者是SqlServer,PostgreSQL), 我手動創(chuàng)建了一個數(shù)據(jù)庫 HttpReports, 記住這個地址,后邊會用到。

引用 HttpReports.Dashboard

首先,我們需要構(gòu)建 Dashboard 來接收,處理和展示數(shù)據(jù),Dashboard 使用了 Vue + Antv + ElementUI 構(gòu)建了頁面,然后把靜態(tài)文件打包到了程序集,我們只要在.NET Core 應(yīng)用中,通過Nuget安裝即可。

新建一個 .Net Core 的空的Web項目,支持 2.1 及以上版本

新建完成后,通過Nuget包分別安裝 HttpReports.DashboardHttpReports.MySQL(或者是HttpReports.SqlServer, HttpReports.PostgreSQL)。

安裝完成之后,需要簡單的配置一下,我們直接修改項目的 appsetting.json 文件

{
 "HttpReportsDashboard": { 
  "ExpireDay": 3,
  "Storage": {
   "ConnectionString": "DataBase=HttpReports;Data Source=localhost;User Id=root;Password=123456;", 
   "DeferSecond": 3,
   "DeferThreshold": 10
  },
  "Check": {
   "Mode": "Self",
   "Switch": true,
   "Endpoint": "",
   "Range": "500,2000"
  },
  "Mail": {
   "Server": "smtp.163.com",
   "Port": 465,
   "Account": "HttpReports@qq.com",
   "Password": "*******",
   "EnableSsL": true,
   "Switch": true
  }
 } 
}

現(xiàn)在參數(shù)有很多,不要擔心,我們現(xiàn)在只需要檢查數(shù)據(jù)庫的連接字符串,確保讓它可以成功的連接到你的數(shù)據(jù)庫,其他的參數(shù),你可以在官方的文檔中找到它們,本文就不再多說。

修改完 appsetting.json 后,我們接著修改 Dahboard 項目的 Startup.cs 文件:

public void ConfigureServices(IServiceCollection services)
 { 
	services.AddHttpReportsDashboard().AddMySqlStorage(); 
}

 
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{ 
	app.UseHttpReportsDashboard(); 
}

然后 Run,如果沒有問題的話,會跳轉(zhuǎn)到Dashboard的登陸頁面,默認的賬號:admin 密碼: 123456

現(xiàn)在我們有了 Dashboard,但是沒有數(shù)據(jù), 我們還需要在我們的.NET Core 應(yīng)用中安裝HttpReports,它負責采集和發(fā)送數(shù)據(jù)。

引用HttpReports

我新建了一個 WebAPI 項目 UserService(用戶服務(wù)) ,然后我們通過 Nuget 分別安裝 HttpReports , HttpReports.Transport.Http

安裝完成后,同樣的,我們修改 appsettings.json,簡單配置一下

{
 "HttpReports": {
  "Transport": {
   "CollectorAddress": "http://localhost:5000/",
   "DeferSecond": 10,
   "DeferThreshold": 100
  },
  "Server": "http://localhost:7000",
  "Service": "User",
  "Switch": true,
  "RequestFilter": [ "/api/health/*", "/HttpReports*" ],
  "WithRequest": true,
  "WithResponse": true,
  "WithCookie": true,
  "WithHeader": true
 }
}

參數(shù)介紹:
Transport - CollectorAddress - 數(shù)據(jù)批量發(fā)送的地址,配置Dashboard 的項目地址即可
Server - 服務(wù)的地址,User服務(wù)我用了localhost:7000
Service - 服務(wù)名稱 User

修改完成后,我們接著修改 UserService 項目的 Startup.cs 文件

app.UseHttpReports();
這一行一定要放到 UseRouting() 和 UseEndpoints()方法 的上面。

public void ConfigureServices(IServiceCollection services)
{
  services.AddHttpReports().AddHttpTransport();
  services.AddControllers();
}

    
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
  app.UseHttpReports();
  .... 

修改 UserService 項目的啟動端口為7000,然后在解決方案中設(shè)置多項目啟動, 同時運行 UserService 和 Dashboard項目。

public static IHostBuilder CreateHostBuilder(string[] args) =>
  Host.CreateDefaultBuilder(args)
  .ConfigureWebHostDefaults(webBuilder =>
        {
          webBuilder.UseStartup<Startup>().UseUrls("http://localhost:7000");
        });

我們多請求幾次 UserService 的接口,然后再回到 Dashboard的頁面,選擇一下時間,現(xiàn)在已經(jīng)可以看到數(shù)據(jù)了!

到目前為止,我們已經(jīng)在.NET Core 的程序中簡單的使用了HttpReports,還有一些其他的功能,你可以在官方文檔中更詳細的介紹。

語雀:https://www.yuque.com/yuque-edenn/kb/gpgk0c5lg4fzvy85?singleDoc#

總結(jié)

在中小的項目中,你可以使用 HttpReports監(jiān)控你的 .NET Core程序,這很簡單, 并且它是開源的。

另外 HttpReports 也有一些其他的問題,比如,難以應(yīng)對海量數(shù)據(jù),沒有完全按照 OpenTrace 規(guī)范,這些和項目早期的設(shè)計有很大的關(guān)系,我也愿意接受大家的批評和意見,開源不能只是崇高的理想主義,社區(qū)需要各懷鬼胎的求同存異。

但是沒有關(guān)系,現(xiàn)在有 OpenTelemetry,它兼容了OpenTracing和OpenCensus, 目前 1.0 版本也才發(fā)布了一個月左右,未來它會有更多的應(yīng)用場景。

所以,我在最近啟動了一個新項目 Furtuna,是按照 OpenTelemetry 規(guī)范去設(shè)計,你完全可以在 java, dotnet,php, go等語言中使用它,當然目前還只是在開發(fā)階段。

關(guān)于這個名字,F(xiàn)urtuna 是羅馬神話最古老的女神之一,能夠帶來幸福和機遇,寓意也很簡單,守護我們的程序,讓它變的更好!

到此這篇關(guān)于使用 HttpReports 監(jiān)控 .NET Core 應(yīng)用程序的方法的文章就介紹到這了,更多相關(guān)HttpReports 監(jiān)控 .NET Core 應(yīng)用程序內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • asp.net實現(xiàn)簡單分頁實例

    asp.net實現(xiàn)簡單分頁實例

    這篇文章主要介紹了asp.net實現(xiàn)簡單分頁的方法,實例分析了asp.net分頁的基本原理與實現(xiàn)流程,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-01-01
  • ASP.NET生成eurl.axd Http異常錯誤的處理方法

    ASP.NET生成eurl.axd Http異常錯誤的處理方法

    在IIS6中同時啟用了ASP.NET 2.0 和 ASP.NET 4.0 后,網(wǎng)站程序可能會出現(xiàn)如下錯誤:“ System.Web.HttpException: Path ‘//eurl.axd/‘ was not found. ”
    2011-05-05
  • 用戶控件(ASCX)向網(wǎng)頁(ASPX)傳值使用反射實現(xiàn)

    用戶控件(ASCX)向網(wǎng)頁(ASPX)傳值使用反射實現(xiàn)

    用戶控件向網(wǎng)頁傳遞值,網(wǎng)上的方法有很多,本文嘗試一下使用反射來實現(xiàn),感興趣的朋友可以參考下哈,希望可以幫助到你
    2013-03-03
  • ASP.NET?Core實現(xiàn)動態(tài)審計日志功能

    ASP.NET?Core實現(xiàn)動態(tài)審計日志功能

    這篇文章主要為大家詳細介紹了如何通過ASP.NET?Core設(shè)計和實現(xiàn)一個靈活、可擴展的審計日志系統(tǒng),同時保持對主業(yè)務(wù)邏輯的最小化干擾,需要的可以參考下
    2024-03-03
  • IIS和.NET(1.1/2.0)的安裝順序及錯誤解決方法

    IIS和.NET(1.1/2.0)的安裝順序及錯誤解決方法

    安裝順序及錯誤的解決方法:基于.net2.0的情況與基于.net1.1的情況,分別給予解決方法,遇到此問題的朋友可以了解下,或許對你的學習有所幫助
    2013-02-02
  • 一個簡單的文件MD5碼自動計算比較器(附源碼)

    一個簡單的文件MD5碼自動計算比較器(附源碼)

    一直在玩 WOW ,發(fā)現(xiàn)網(wǎng)上的 MD5 計算工具都沒有自動比較功能,每次下載更新計算后,都要自己一個一個字母核對,比較麻煩。 最近開始學習 C# ,用 .NET ,做了一個簡單的文件MD5碼自動計算比較器。
    2013-02-02
  • .NET Core使用FluentEmail發(fā)送郵件的示例代碼

    .NET Core使用FluentEmail發(fā)送郵件的示例代碼

    這篇文章主要介紹了.NET Core使用FluentEmail發(fā)送郵件的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • C#將DataTable轉(zhuǎn)化為List<T>

    C#將DataTable轉(zhuǎn)化為List<T>

    本文給大家講解的是如何使用C#將DataTable數(shù)據(jù)源轉(zhuǎn)化為List<T>泛型集合(已知T類型) 的方法和示例,有需要的小伙伴可以參考下
    2015-06-06
  • ASP.NET?Core?MVC自定義Tag?Helpers用法介紹

    ASP.NET?Core?MVC自定義Tag?Helpers用法介紹

    這篇文章介紹了ASP.NET?Core?MVC自定義Tag?Helpers的用法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-02-02
  • 詳解ASP.NET Core 2.0 路由引擎之網(wǎng)址生成(譯)

    詳解ASP.NET Core 2.0 路由引擎之網(wǎng)址生成(譯)

    這篇文章主要介紹了詳解ASP.NET Core 2.0 路由引擎之網(wǎng)址生成(譯),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11

最新評論

大宁县| 马公市| 东兰县| 雷波县| 德阳市| 南陵县| 静安区| 玉门市| 临潭县| 吉首市| 集安市| 务川| 雅江县| 平顶山市| 喀喇沁旗| 夹江县| 临江市| 靖西县| 客服| 会东县| 辽阳市| 孟津县| 西林县| 定西市| 高碑店市| 周口市| 普格县| 三原县| 霍州市| 五常市| 沛县| 徐汇区| 高安市| 井冈山市| 巴塘县| 青铜峡市| 扎兰屯市| 兴仁县| 武冈市| 会昌县| 新安县|