ASP.NET Core使用Elasticsearch記錄API請求響應日誌實戰演練

一、ASP.NET Core WebApi如何設計一個日誌中間件?

ASP.NET Core WebApi一個良好的日誌記錄內容包含,唯一請求Id(traceId),請求url,請求body內容,相應body內容,執行開始和執行結束時間,總耗時時間等等。通過組合 Docker,ElasticSearch,Kibana,ASP.NET Core 和 Serilog ,您獲得了前所未有的便利性和功能,再也沒有理由不再將日誌記錄整合到應用程序中了。。

• 一句話總結今天我們學習到達的目標?
如何在ASP.NET Core使用Elasticsearch和Kibana 來存儲和展示我們應用程序的請求詳細日誌。

ElasticSearch 和 Kibana 改變了這一切。而 Docker 已經使 ElasticSearch 和 Kibana 的啓動和運行變得毫不費力。ElasticSearch 和 Kibana 提供的強大功能以及非常高的性能,再加上它是開源的,這真的令人印象非常深刻。

 如果對本次分享課程《ASP.NET Core使用Elasticsearch記錄請求響應日誌實戰演練》感興趣的話,那麼請跟着阿笨一起學習吧。

廢話不多說,直接上乾貨,我們不生產乾貨,我們只是乾貨的搬運工。 

二、ASP.NET Core WebApi如何存儲應用程序請求相應日誌?

• 什麼是 ElasticSearch ?

簡單來說,ElasticSearch 是一個開源數據庫,非常適合索引日誌和分析數據。

• 什麼是 Serilog ?

Serilog 是 ASP.NET Core 的一個插件,可以簡化日誌記錄。Serilog 有各種可用的接收器,例如,有純文本、SQL 和 ElasticSearch 接收器等等。

三、使用Docker快速安裝Elasticsearch和Kibana

• 爲什麼我需要 ElasticSearch 和 Kibana ?

如果您曾經構建過應用程序,那麼你一定記錄過日誌。我們經常去記錄錯誤,但這些錯誤日誌存儲在服務器某處的文件文件裏,經常會無法被訪問。ElasticSearch 使任何類型的日誌記錄變得簡單,易於訪問和搜索。

ElasticSearch 令人難以置信的速度和簡單的查詢語言加上 Kibana 的圖形界面,構成了強大的組合。如果您還沒有使用 ElasticSearch 進行日誌記錄,我強烈建議您開始使用它。

  

 

 

 

四、ASP.NET Core WebApi如何友好的檢索和實時展示日誌?

1)、關於日誌的檢索,可以通過開啓服務端目錄訪問權限,方便進行檢索查到定位日誌。

• ASP.NET Core開啓目錄瀏覽 EnableDirectoryBrowsing = true

2)、關於日誌的實時展示,通過kibana工具來進行顯示和分析。

• 什麼是 Kibana ?

Kibana 是開源的 ElasticSearch 的數據可視化用戶界面。可以將 ElasticSearch 視爲數據庫,將Kibana 視爲 Web 用戶界面,您可以使用它在 ElasticSearch 中構建圖表和查詢數據

作者:阿笨 

      官方QQ羣:422315558 跟着阿笨一起玩NET 574187616跟着阿笨一起玩NET(二) 967920586跟着阿笨一起玩ASP.NET 

      【網易雲課堂主頁】:https://study.163.com/provider/2544628/index.htm?share=2&shareId=2544628

      【騰訊課堂主頁】:https://abennet.ke.qq.com/

      【微信公衆號】:http://dwz.cn/ABenNET

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章