Azure 監視器計量是 Azure 監視器的一項功能,可從受監視的資源將數值資料收集到時間序列資料庫中。 計量是定期收集的數值,並且會在特定時間描述資源的某些層面。
備註
Azure 監視器計量是支援 Azure 監視器的兩個資料平台之一。 另一半是 Azure Monitor Logs,可收集和組織日誌和效能資料。 您可以使用豐富的查詢語言來分析該資料。
計量類型
Azure 監視器計量支援多種類型的計量:
原生計量會使用 Azure 監視器中的工具進行分析和警示。
- 平台計量會從 Azure 資源收集。 其不需要設定,且不需要任何成本。
- 自訂計量會從您設定的不同來源收集,包括在虛擬機器上執行的應用程式和代理程式。
Prometheus 計量會從 Kubernetes 叢集 (包括 Azure Kubernetes 服務 (AKS)) 收集並使用業界標準工具進行分析和警示,例如 PromQL 和 Grafana。
下表摘要說明每個計量之間的差異。
類別 | 原生平台計量 | 原生自訂計量 | Prometheus 指標 |
---|---|---|---|
來源 | Azure 資源 | Azure 監視器代理程式 應用程式深入分析 REST API |
Azure Kubernetes Service (AKS) 叢集 透過遠端寫入的任何 Kubernetes 叢集 |
設定 | 沒有 | 依來源而異 | 啟用 Azure 監視器適用於 Prometheus 的受管理服務 |
已儲存 | 訂閱 | 訂閱 | Azure 監視器工作區 |
費用 | 否 | 是 (預覽期間免費) | 是 (預覽期間免費) |
集合體 | 已預先彙總 | 已預先彙總 | 未經處理資料 |
分析 | 計量總管 | 計量總管 | PromQL Grafana 儀表板 |
警報 | 計量警示規則 | 計量警示規則 | Prometheus 警示規則 |
視覺化 | 作業簿 Azure 儀表板 Grafana |
作業簿 Azure 儀表板 Grafana |
Grafana |
取回 | Azure CLI Azure PowerShell Cmdlets REST API 或用戶端連結庫 .NET 開始 爪哇島 JavaScript Python(編程語言) |
Azure CLI Azure PowerShell Cmdlets REST API 或用戶端連結庫 .NET 開始 爪哇島 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 Monitor 分析計量探索器。
資料結構
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」與「方向」)
下表顯示來自多維度計量的範例資料、具有兩個維度 (稱為 IP 和 Direction) 的網路輸送量。 其可回答像是「每個 IP 位址的網路輸送量為何?」與「資料的傳送與接收比為何?」這種問題。
時間戳 | 維度「IP」 | 維度「方向」 | 計量值 |
---|---|---|---|
8/9/2017 8:14 | IP=“192.168.5.2” | 方向="傳送" | 646.5 Kbps |
8/9/2017 8:14 | IP=“192.168.5.2” | 方向="接收" | 420.1 Kbps |
8/9/2017 8:14 | IP=“10.24.2.15” | 方向="傳送" | 150.0 Kbps |
8/9/2017 8:14 | IP=“10.24.2.15” | 方向="接收" | 115.2 Kbps |
8/9/2017 8:15 | IP=“192.168.5.2” | 方向="傳送" | 515.2 Kbps |
8/9/2017 8:15 | IP=“192.168.5.2” | 方向="接收" | 371.1 Kbps |
8/9/2017 8:15 | IP=“10.24.2.15” | 方向="傳送" | 155.0 Kbps |
8/9/2017 8:15 | IP=“10.24.2.15” | 方向="接收" | 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 天。
後續步驟
- 深入瞭解 Azure 監視器數據平臺。
- 瞭解 Azure 監視器中的記錄數據。
- 瞭解 Azure 中各種資源 可用的監視數據 。