關於分布值指標

本文說明如何建立及解讀顯示 Distribution 值類型指標資料的圖表。當個別測量值太多而無法收集,但這些測量值的統計資訊 (例如平均值或百分位數) 很有價值時,服務就會使用這個值類型。舉例來說,如果應用程式仰賴 HTTP 流量,您可以使用擷取 HTTP 回應延遲時間的發布值指標,評估 HTTP 要求完成的速度。

為說明如何建立直方圖,請考慮使用可評估要求 HTTP 延遲時間的服務,並使用具有分布值類型的指標回報這項資料。系統每分鐘會回報一次資料。服務會定義指標的值範圍 (稱為「值區」),並記錄歸入各值區的測量值計數。舉例來說,當 HTTP 要求完成時,服務會在值區間包含要求延遲時間值的值區中遞增計數。這些計數會建立該分鐘的值直方圖。

假設在一分鐘的間隔中,測得的延遲時間為 5、1、3、5、6、10 和 14。如果桶分別是 [0, 4)、[4, 8)、[8, 12) 和 [12, 16),則這組資料的直方圖為 [2, 3, 1, 1]。下表說明個別評估方式對各個值區的計數影響:

值區 延遲時間衡量指標 值區中的值數量
[12,16) 14 1
[8,12) 10 1
[4,8) 5、5、6 3
[0,4) 1、3 2

將這項資料寫入時間序列時,系統會建立 Point 物件。如果指標含有分佈值,該物件就會包含值的直方圖。在這個取樣期間,Point 包含 [2, 3, 1, 1]。個別測量結果不會寫入時間序列。

假設上表記錄的是延遲時間資料的直方圖,測量時間為 1:00。該表格說明如何擷取一系列測量值,並將這些值轉換為值區計數。假設在 1:01、1:02 和 1:03 的時間點,值區計數如下表所示:

值區
1:00 的直方圖

1:01 的直方圖

的直方圖 1:02

1:03 的直方圖
[12,16) 1 6 0 1
[8,12) 1 0 2 2
[4,8) 3 1 1 8
[0,4) 2 6 10 3

上表顯示按時間編入索引的一系列直方圖。表格中的每個欄都代表一分鐘期間的延遲資料。如要取得特定時間的評估次數,請將值區計數相加。不過,由於分布值指標無法提供實際測量值,因此系統不會顯示實際測量值。

熱視圖圖表

熱圖圖表的設計目的是顯示單一時間序列的分布值。在這些圖表中,X 軸代表時間,Y 軸代表分桶,顏色則代表值。顏色越亮,代表價值越高。舉例來說,熱圖中的深色區域表示值較低的值區,而黃色或白色區域則表示值較高的值區。

下圖是前述範例的熱力圖示範:

範例的熱視圖表。

在前一個圖表中,熱圖使用黑色代表最小的桶數 0,黃色代表最大的桶數 10。紅色和橘色則代表這兩個極端值之間的值。

熱點圖表只能顯示單一時間序列,因此您必須設定匯總選項,才能合併所有時間序列。

如要使用 Metrics Explorer 顯示 VM 執行個體的 RTT 延遲總和,請執行下列操作:
  1. 前往 Google Cloud 控制台的 「Metrics Explorer」頁面:

    前往 Metrics Explorer

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果

  2. 在 Google Cloud 控制台的工具列中,選取您的 Google Cloud 專案。 如要設定 App Hub,請選取 App Hub 主機專案或已啟用應用程式的資料夾管理專案。
  3. 在「指標」元素中,展開「選取指標」選單,在篩選列中輸入 RTT latencies,然後使用子選單選取特定資源類型和指標:
    1. 在「有效資源」選單中,選取「VM 執行個體」
    2. 在「Active metric categories」(使用中的指標類別) 選單中,選取「Vm_flow」
    3. 在「Active metrics」選單中,選取「RTT latencies」
    4. 按一下 [套用]

折線圖和長條圖

折線圖、堆疊長條圖和堆疊折線圖是用來顯示標量資料,因此無法顯示分布值。如要使用其中一種圖表類型顯示含有分布值的指標,您必須將直方圖值轉換為純量值。舉例來說,您可以設定匯總選項,以便計算直方圖中值的平均值或百分位數。

如要瞭解如何在折線圖上顯示分布值指標,請參閱下一個章節。

匯總和分布指標

匯總是指將時間序列中的點規則化,並結合多個時間序列的過程。分布類型指標的匯總方式與值類型為整數或雙精度值的指標相同。不過,圖表類型會針對用於對齊和分組時序資料的選項,強制執行部分規定。

熱視圖圖表

熱圖圖表會顯示一個分布值時間序列。因此,您必須設定對齊函式分組函式,才能建立單一時間序列。

當圖表顯示熱力圖時,請選取 sumdelta 對齊函式。這些函式會在值區層級,將單一時間序列中位於相同校正期間的所有樣本合併,結果為分布值。舉例來說,如果時間序列的兩個相鄰樣本分別是 [2, 3, 1, 1] 和 [2, 5, 4, 1],則加總對齊函式會產生 [4, 8, 5, 2]。

分組函式會定義不同時間序列的組合方式。這個函式有時也稱為集結器或縮減器。針對熱力圖,請將分組函式設為 sum 函式。加總函式會在所有直方圖中加總相同值區的值,產生新的直方圖。舉例來說,時間序列 A 的值 [2, 3, 1, 1] 和時間序列 B 的值 [1, 5, 2, 2] 的總和為 [3, 8, 3, 3]。

折線圖

折線圖只會顯示標量值時間序列。如果您選取以分布值為值的指標,系統會設定最佳參數來顯示熱力圖。Aggregation 元素的欄位設為「Distribution」和「None」

  • 分布的解讀方式取決於特定指標。如果分佈值指標類型具有 GAUGE 指標類型,預設對齊函式會設為 sum。如果分布值指標類型具有 CUMULATIVE 指標類別,預設對齊函式為 DELTA

  • 設定為「None」可確保所有時間都會合併。

如果要在折線圖上顯示分布值指標,則必須變更圖表的預設設定。舉例來說,如要在資訊主頁上設定折線圖,以便顯示每個時間序列的 99 個百分位數 (以分布值指標為準),請執行下列操作:

  1. 在 Google Cloud 控制台中,前往「Dashboards」(資訊主頁) 頁面:

    前往「Dashboards」(資訊主頁)

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果

  2. 在 Google Cloud 控制台的工具列中,選取您的 Google Cloud 專案。如要設定 App Hub,請選取 App Hub 主機專案或啟用應用程式的資料夾管理專案。
  3. 按一下工具列中的 「新增小工具」
  4. 在「新增小工具」對話方塊中,選取 「指標」
  5. 在「指標」元素中,選取「VM Instance - RTT latencies」指標。
  6. 在「Aggregation」元素中,展開第一個選單並選取「99th percentile」
  7. 在「顯示」窗格中,將「小工具類型」選單的值設為「折線圖」
  8. 選用:在「Aggregation」元素中,展開第二個選單,然後選取用於分組時間序列的標籤。根據預設,系統不會選取任何標籤,因此圖表上會顯示一條線。

後續步驟

如要瞭解如何為指標決定值區模型,以及如何解讀百分位數,請參閱「百分位數和分布值指標」。