Azure 監視器計量概觀

Azure 監視器計量是 Azure 監視器的一項功能,可從受監視的資源將數值資料收集到時間序列資料庫中。 計量是定期收集的數值,並且會在特定時間描述資源的某些層面。

注意

Azure 監視器計量是支援 Azure 監視器的一半數據平臺。 另一半是 Azure 監視器記錄,可收集和組織記錄和效能數據。 您可以使用豐富的查詢語言來分析該資料。

計量類型

Azure 監視器計量支援多種類型的計量:

  • 原生計量會使用 Azure 監視器中的工具進行分析和警示。
    • 平台計量會從 Azure 資源收集。 其不需要設定,且不需要任何成本。
    • 自定義計量會從您設定的不同來源收集,包括虛擬機上執行的應用程式和代理程式。
  • Prometheus 計量會從 Kubernetes 叢集收集,包括 Azure Kubernetes 服務 (AKS),並使用業界標準工具來分析和警示,例如 PromQL 和 Grafana。

顯示計量來源和使用方式的圖表。

下表摘要說明每個計量之間的差異。

類別 原生平台計量 原生自訂計量 Prometheus 計量
來源 Azure 資源 Azure 監視器代理程式
Application insights
REST API
Azure Kubernetes 服務 (AKS) 叢集
透過遠端寫入的任何 Kubernetes 叢集
組態 依來源而異 啟用 Azure 監視器適用於 Prometheus 的受管理服務
已儲存 訂用帳戶 訂用帳戶 Azure 監視器工作區
成本 No Yes 是 (預覽期間免費)
彙總 預先彙總 預先彙總 未經處理資料
分析 計量瀏覽器 計量瀏覽器 PromQL
Grafana 儀錶板
警示 計量警示規則 計量警示規則 Prometheus 警示規則
視覺化 活頁簿
Azure 儀表板
Grafana
活頁簿
Azure 儀表板
Grafana
Grafana
擷取 Azure CLI
Azure PowerShell Cmdlet
REST API 或用戶端連結庫
.NET
Go
Java
JavaScript
Python
Azure CLI
Azure PowerShell Cmdlet
REST API 或用戶端連結庫
.NET
Go
Java
JavaScript
Python
Grafana

資料集合

Azure 監視器會從下列來源收集計量。 在 Azure 監視器計量資料庫中收集這些計量之後,不論其來源為何,您都可以將其放在一起進行評估:

  • Azure 資源:平台計量是由 Azure 資源所建立,可讓您了解其健康情況和效能。 每種資源類型都會建立一 組不同的計量, 而不需要任何設定。 除非計量定義中另有指定,否則會以一分鐘的頻率從 Azure 資源收集平台計量。
  • 應用程式:Application Insights 會為受監視的應用程式建立計量,以協助您偵測效能問題,並追蹤應用程式使用方式的趨勢。 值包括 伺服器回應時間瀏覽器例外狀況
  • 虛擬機器代理程式:系統會從虛擬機器的客體作業系統收集計量。 您可以使用 Azure 監視器代理程式,為 Windows 虛擬機啟用客體 OS 計量。 Azure 監視器代理程式會取代舊版代理程式 - Windows 診斷擴充功能和 適用於 Linux 虛擬機的 InfluxData Telegraf 代理程式
  • 自訂計量:除了自動可供使用的標準計量之外,您還可以定義度量。 您可以在 由 Application Insights 監視的應用程式中 定義自訂計量。 您也可以使用 自訂計量 API 來建立 Azure 服務的自定義計量。
  • Kubernetes 叢集:Kubernetes 叢集通常會將計量資料傳送至您必須維護的本機 Prometheus 伺服器。 適用於 Prometheus 的 Azure 監視器受控服務提供受控服務,可從 Kubernetes 叢集收集計量,並將其儲存在 Azure 監視器計量中。

注意

從不同來源和不同方法收集的計量可能會有不同的匯總方式。 例如,平臺計量會預先匯總並儲存在時間序列資料庫中,而 Prometheus 計量會儲存為原始數據。資源計量可能也有不同於其他計量的延遲。 這可能會導致特定範例時間的計量值差異。 當延遲停止為問題,以及在同時分析計量數據粒度時,這些差異就會消失。

REST API

Azure 監視器提供 REST API,可讓您從 Azure 監視器計量中取得數據。

  • 自定義計量 API - 自定義計量 可讓您將自己的計量載入 Azure 監視器計量資料庫。 然後,處理 Azure 監視器平臺計量的相同分析工具就可以使用這些計量。
  • Azure 監視器計量 REST API - 可讓您存取 Azure 監視器平台計量定義和值。 如需詳細資訊,請參閱 Azure 監視器 REST API。 如需如何使用 API 的資訊,請參閱 Azure 監視 REST API 逐步解說
  • Azure 監視器計量 Batch REST API - Azure 監視器計量 Batch API 是專為具有大量計量查詢的客戶設計的大量 API。 這與現有的標準 Azure 監視器計量 REST API 類似,但可讓您在單一批次 API 呼叫中,擷取相同訂用帳戶和區域中最多 50 個資源標識符的計量數據。 這可改善查詢輸送量,並降低節流的風險。

安全性

線上系統與 Azure 監視器服務之間的所有通訊都會使用 TLS 1.2 (HTTPS) 通訊協定來加密。 遵循 Microsoft SDL 程式,以確保所有 Azure 服務都是最新的密碼編譯通訊協定最新進展。

使用憑證式驗證和具有埠 443 的 TLS,在代理程式與 Azure 監視器服務之間建立安全連線。 Azure 監視器使用密碼存放區來產生及維護金鑰。 私密金鑰每 90 天會輪替一次,其儲存在 Azure 中,並由遵守嚴格法規與相容性作法的 Azure 作業人員管理。 如需安全性的詳細資訊,請參閱 傳輸中的數據加密、 用數據加密和 Azure 監視器記錄資料安全性

計量瀏覽器

使用 計量總 管,以互動方式分析計量資料庫中的數據,並繪製一段時間內多個計量的值。 您可以將圖表釘選到儀表板,以使用其他視覺效果來檢視圖表。 您也可以使用 Azure 監視 REST API擷取計量。

此螢幕快照顯示 [計量總管] 中的範例圖表,其中顯示伺服器要求、伺服器回應時間和失敗的要求。

如需詳細資訊,請參閱使用 Azure 監視器計量瀏覽器分析計量

資料結構

Azure 監視器計量收集的數據會儲存在經過優化以分析時間戳數據的時間序列資料庫中。 每組計量值都是具有下列屬性的時間序列:

  • 收集值的時間。
  • 值相關聯的資源。
  • 命名空間,其作用就像計量的類別目錄。
  • 計量名稱。
  • 值本身。
  • 存在時有多個維度 。 自定義計量限制為10個維度。

多維度計量

計量數據的其中一項挑戰是,它通常會有有限的資訊來提供所收集值的內容。 Azure 監視器會使用多維度計量來解決這項挑戰。

計量維度是帶有更多數據來描述計量值的名稱/值組。 例如,稱為 可用磁碟空間 的計量可能有名為 Drive 的維度,其值為 C:D:。 該維度允許檢視所有磁碟驅動器的可用磁碟空間,或個別檢視每個磁碟驅動器的可用磁碟空間。

如需在計量總管中檢視計量維度的詳細資訊,請參閱 套用維度篩選和分割

非維度計量

下表顯示來自非維度計量、網路輸送量的範例數據。 它只能回答基本問題,例如「我的網路輸送量在指定時間為何?

時間戳記 計量值
8/9/2017 8:14 1,331.8 Kbps
8/9/2017 8:15 1,141.4 Kbps
8/9/2017 8:16 1,110.2 Kbps

網路輸送量和兩個維度 (“IP” 和 “Direction”)

下表顯示來自多維度計量、網路輸送量和兩個維度稱為 IPDirection 的網路輸送量範例數據。 它可以回答「每個IP位址的網路輸送量為何?」和「傳送與接收多少數據?」等問題。

時間戳記 維度 “IP” 維度“方向” 計量值
8/9/2017 8:14 IP=“192.168.5.2” Direction=“Send” 646.5 Kbps
8/9/2017 8:14 IP=“192.168.5.2” Direction=“Receive” 420.1 Kbps
8/9/2017 8:14 IP=“10.24.2.15” Direction=“Send” 150.0 Kbps
8/9/2017 8:14 IP=“10.24.2.15” Direction=“Receive” 115.2 Kbps
8/9/2017 8:15 IP=“192.168.5.2” Direction=“Send” 515.2 Kbps
8/9/2017 8:15 IP=“192.168.5.2” Direction=“Receive” 371.1 Kbps
8/9/2017 8:15 IP=“10.24.2.15” Direction=“Send” 155.0 Kbps
8/9/2017 8:15 IP=“10.24.2.15” Direction=“Receive” 100.1 Kbps

注意

維度名稱和維度值不區分大小寫。

計量的保留期

平臺和自定義計量

平臺和自定義計量會 儲存 93 天 ,但有下列例外狀況:

  • 傳統客體 OS 計量:這些性能計數器是由 Windows 診斷擴充功能或 Linux 診斷擴充功能所收集,並路由傳送至 Azure 儲存體 帳戶。 這些計量的保留期保證至少為14天,但不會將到期日寫入記憶體帳戶。

    基於效能考慮,入口網站會根據磁碟區限制其顯示的數據量。 因此,如果寫入的數據量不大,入口網站擷取的實際天數可能會超過14天。

  • 傳送至 Azure 監視器計量的客體 OS 計量:這些性能計數器是由 Windows 診斷擴充功能所收集,並傳送至 Azure 監視器數據接收,或 Linux 機器上的 InfluxData Telegraf 代理程式,或透過數據收集規則更新的 Azure 監視器代理程式。 這些計量的保留期為93天。

  • Log Analytics 代理程式收集的客體 OS 計量:Log Analytics 代理程式會收集這些性能計數器,並傳送至 Log Analytics 工作區。 這些計量的保留期為31天,最多可延長2年。

  • Application Insights 記錄型計量:在幕後, 以記錄為基礎的計量 會轉譯成記錄查詢。 其保留期是可變的,且符合基礎記錄中事件的保留期,也就是 31 天到 2 年。 針對 Application Insights 資源,記錄會儲存 90 天。

注意

您可以將 Azure 監視器資源的平臺計量傳送至 Log Analytics 工作區 ,以取得長期趨勢。

雖然平臺和自定義計量會儲存 93 天,但您只能在任何單一圖表上查詢 (在 [計量] 圖格中查詢最多 30 天的數據。 這項限制不適用於記錄型計量。 如果您看到空白圖表或圖表只顯示計量數據的一部分,請確認時間選擇器中的開始和結束日期之間的差異不超過 30 天的間隔。 選取 30 天的間隔之後,您可以移動流覽圖表以檢視完整的保留時間範圍。

注意

移動或重新命名 Azure 資源可能會導致該資源的計量歷程記錄遺失。

Prometheus 計量

Prometheus 計量會 儲存 18 個月,但 PromQL 查詢最多只能跨越 32 天。

下一步