ASP.NET Core 提供了健康檢查的 Middleware,可以讓我們很輕鬆的知道應用程式目前的本身的狀態以及應用程式所依賴其他服務的狀態;也可以讓容器協調器進行重新啟動容器或是暫停服務,比如 K8s 的 Liveness、Readiness
令人驚喜的是 AspNetCore.HealthChecks.UI 提供 UI / Alert 讓監視系統變得更有效率了
ASP.NET Core 提供了健康檢查的 Middleware,可以讓我們很輕鬆的知道應用程式目前的本身的狀態以及應用程式所依賴其他服務的狀態;也可以讓容器協調器進行重新啟動容器或是暫停服務,比如 K8s 的 Liveness、Readiness
令人驚喜的是 AspNetCore.HealthChecks.UI 提供 UI / Alert 讓監視系統變得更有效率了
AppMetrics 是一款 Open Source 跨平台的 .NET 的 Library,支援了 .NET Core 和 .NET 4.5.2,前面幾篇提到用 Telegraf 收集作業系統的性能指標,涵蓋整個作業系統,粒度大;當指標粒度要更精準則可以考慮用 AppMetrics 收集更細微的資訊。
範例提供了 ASP.NET Core 3.1、ASP.NET Core 2.2 | .NET4.8、Console Application 4.8、ASP.NET Web API 4.5.2 OWIN、Console Application 4.5.2
.NET Core 文件
https://www.app-metrics.io/
.NET 4.5.2 文件
https://alhardy.github.io/app-metrics-docs/
SQL Server 也是系統重要的平台之一,有了上一篇的經驗 使用 InfluxDB + Telegraf + Grafana 監視 Windows 平台資源,接下來實作監視 SQL Server
很多監視系統都採用了 TSDB(Time Series Database)資料庫來儲存海量資料,InfluxDB 也是熱門的 TSDB 之一,紀錄一下安裝方式...
系統上線之後,你怎麼知道系統的資源還剩多少?服務有沒有活著?
Grafana 是一個用來呈現服務狀態的監視、預警通知軟體;有需多漂亮的圖表跟編排,也支援了很多 TSDB(Time Series Database)資料庫,當系統資源不足的時候用 Email、Slack 通知相關人員,相關人員分析後做的決策就會比較精準
開發網站應用程式的時候,可以搭配一些診斷工具,方便開發人員除錯。
Glimpse (http://getglimpse.com/) 是一款內嵌至應用程式的診斷套件,不需要修改程式碼就能擁有診斷功能,強化瀏覽器 (F12,開發者模式) 辦不到的事情,比如:Sql Query。
安全性的部分,Glimpse 預設不允許遠端存取,只能用在開發環境,資訊洩漏的問題也幫我們想好了,若要開啟,請做好安全性設定