簡介

已完成

在此單元中,我們將探討監視 Java 應用程式的概念。

為什麼要監視?

在任何環境中,能夠追蹤使用者利用系統的方式、追蹤資源使用量,以及監視系統的整體健康情況和效能極為重要。 您可以使用此資訊當做診斷協助來偵測並更正問題,同時也能夠協助找出潛在的問題並避免發生。

監視形式

監視通常會採取四個形式:

  • 記錄 - 為以表格式一致格式儲存的事件永久不可變記錄 (如果不在完整資料庫中)。 「事件」可以表示多種狀況的其中之一,包括:

    • 受監視元件的狀態變更 (例如,從「忙碌」變成「可用」)。
    • 完成工作或一系列的指示。
    • 透過網路完成的資料進展里程碑,或網路中的單位可用性。
    • 錯誤在本文中是指系統或應用程式未經程式編寫以處理或緩和的行為。
  • 計量 - 值,代表服務或應用程式或其裝載基礎結構的相對健康狀態、穩定性和可用性。

  • 追蹤 - 程式和服務的執行路徑記錄,特別是在高度的分散式系統中,指出可能已直接或間接觸發事件的一連串指令。

  • 警示 - 發現您的基礎結構或應用程式的問題時,警示會主動通知您。 它們可讓您在系統使用者注意到問題之前,找出並解決問題。

Azure 監視平台

Azure 提供 Azure 監視器,其包含一組服務,可供開發人員和系統管理員用來收集、分析和處理有關應用程式效能及其裝載基礎結構的遙測。

Azure Log Analytics 是 Azure 入口網站中的一項工具,可從 Azure 監視器記錄所收集的資料編輯和執行記錄查詢,並以互動方式分析其結果。 您可以使用 Log Analytics 查詢來擷取符合特定準則的記錄、識別趨勢、分析模式,以及提供資料的各種深入解析。

Application Insights 是 Azure 監視器的一項功能,其為適用於開發人員和 DevOps 專業人員的可擴充應用程式效能管理 (APM) 服務。 它會自動偵測效能異常,並包括分析工具以協助您診斷問題及了解使用者實際上如何使用應用程式。

Azure 警示 - 監視資料也可能會傳送到其他位置以支援特定案例,而某些資源可能會在收集到記錄或計量之前,寫入其他位置。

  • 計量警示提供超過指定閾值時的警示觸發程序。 例如,計量警示可以在 CPU 使用率超過 95 % 時通知您。
  • 記錄警示是以寫入到記錄檔的資料為基礎。 例如,記錄警示可以在 Web 伺服器傳回許多 404 或 500 回應時通知您。

您可以使用任何您選擇的監視系統來監視 Azure 應用程式、服務和基礎結構,例如 Elastic Stack、Splunk、New Relic、Dynatrace 和 App Dynamics。 不過,我們在此課程模組中將著重在 Azure 監視器、Log Analytics 和 Application Insights。