記錄指標簡介

本頁面提供記錄指標的概念總覽。這些指標可協助您觀察大量記錄項目中的趨勢和模式。

記錄指標簡介

記錄指標是以記錄項目內容為基礎的 Cloud Monitoring 指標。舉例來說,您可以使用記錄指標來計算含有特定訊息的記錄項目數量,或擷取記錄項目中記錄的延遲資訊。您可以在 Cloud Monitoring 圖表中顯示記錄檔指標,而警示政策則可監控這些指標。

記錄指標可套用至專案層級或記錄值區層級。當您使用匯總匯出項目將記錄項目轉送至記錄檔值區,以及將記錄項目從一個專案轉送至另一個專案的記錄檔值區時,值區專屬記錄指標就會派上用場。詳情請參閱本頁「記錄指標來源」一節。

如何判斷記錄指標的時間序列值

本節將簡略說明如何判斷計數器類型記錄式指標的時間序列值。並說明為何記錄指標的時間序列可能會有空白。以分布值為基礎的記錄指標也採用類似的程序。

對於計數器類型的記錄指標,Logging 會執行以下操作:

  1. 它會建立一或多個資料串流,並針對每個串流管理一組內存計數器。

    每個指標和資源標籤組合都會有一個串流,其中包含不重複值組合。每個記憶體內計數器的時間間隔都不同,但每個計數器都會記錄符合篩選條件且具有對應時間戳記的記錄項目數量。

  2. 每分鐘,每個串流的記錄後端都會使用記憶體內計數器的值,判斷如何更新由 Cloud Monitoring 管理的時間序列。

    如果有五個串流,則有五個由監控服務管理的時序資料。您可以將這些時序資料繪製成圖表。您也可以建立警示政策來監控這些時序資料。

範例:零值如何導致資料缺口

請參考下列時間序列:

Example time series: (T1, -), (T2, -), (T3, 0), (T4, 1), (T5, 0), (T6, -)

在上述運算式中,(T1, -) 表示未為時間 T1 寫入任何值。這會對應到時間序列中值的差距。相反地,(T3, 0) 表示時間序列在時間 T3 時的值為零。

針對每個串流,以記錄為基礎的指標後端系統會使用下列規則,決定要將哪些值寫入 Monitoring 儲存的時間序列:

  • 如果區間的匯總計數不為零,則會將該值寫入時間序列。

    在這個時間序列範例中,只有 T4 間隔的值不為零。1 的值表示記錄項目的時間戳記與 T4 間隔相符,且符合記錄指標的篩選條件。

  • 如果某個區間的累積計數為零,當相鄰區間的值不為零時,系統會將零值寫入時間序列。

    在範例時間序列中,在 T3 時間點,匯總計數為零。不過,由於在 T4 時間點,匯總計數值並非零,因此會寫入零值。同樣地,在 T5 時間點,匯總計數為零。由於先前間隔的值非零,因此時間序列會寫入零值。

  • 否則,時間序列不會更新,且該區間會有資料缺口。

    在範例時間序列中,T1T2T6 間隔沒有任何值。在這些間隔中,匯總計數為零,相鄰間隔的計數也為零。

處理遲到和未來的記錄項目

當記錄項目抵達時,如果其包含已處理的間隔時間戳記,Logging 後端會產生歷來資料。系統會使用歷來資料更新先前寫入的計數。

如果記錄項目抵達時,其時間戳記為未來時間,記錄後端會累積這些計數。在時間序列中,如果記錄項目的時間戳記與目前的間隔相符,系統就會計入這些記錄項目。

記錄指標的來源

您可以使用 Cloud Logging 定義的指標收集一般使用資訊,也可以定義自己的記錄指標,擷取應用程式或業務專屬資訊。

記錄指標可套用於單一 Google Cloud 專案或記錄值區。您無法為其他 Google Cloud 資源 (例如 Cloud Billing 帳戶或機構) 建立記錄式指標。

如要瞭解以專案為基礎的記錄指標和以資料集為基礎的記錄指標之間的差異,請參閱「以資料集為範圍的記錄指標」。

系統定義的指標

記錄功能會提供一組指標,用於計算用量值,例如專案中記錄值區儲存的記錄項目數量,或是匯出的位元組數。如需系統定義指標的完整清單,請參閱 Google Cloud 指標:記錄

系統定義的記錄指標適用於專案層級。

只要符合下列所有條件,記錄路由器就會計算記錄項目:

  • 記錄項目會經過定義記錄指標的專案記錄接收器。
  • 記錄項目會儲存在記錄值區中。記錄檔 bucket 可位於任何專案中。

    舉例來說,假設專案 A 有一個記錄接收器,其目的地為專案 B。另外,假設專案 B 中的記錄檔接收器會將記錄項目轉送至記錄檔值區。在這種情況下,從專案 A 轉送至專案 B 的記錄項目會納入專案 A 的系統定義記錄指標。這些記錄項目也會納入專案 B 的系統定義記錄指標。

使用者定義的指標

您可以建立使用者定義的記錄指標,追蹤對專案重要的其他指標。舉例來說,您可以透過建立記錄指標,計算與指定篩選條件相符的記錄項目數量。

根據預設,系統會根據 Logging API 為 Google Cloud 專案收到的所有記錄檔,計算使用者定義的記錄指標,不論可能套用至Google Cloud 專案的包含篩選器排除篩選器為何。

您也可以為 Google Cloud 專案中的特定記錄檔值區建立使用者定義的記錄指標。系統會根據所有記錄檔計算出以資料夾為範圍的記錄指標,不論記錄檔的來源為何。詳情請參閱「記錄值區的記錄指標」。

只要符合下列所有條件,記錄路由器就會計算記錄項目:

  • 在定義以記錄為基礎的指標的專案中啟用帳單功能。
  • 如果是值區專屬指標,記錄項目會儲存在定義記錄指標的記錄值區中。
  • 對於專案範圍指標,記錄項目會經過定義記錄指標的專案記錄檔接收器。

記錄指標的資料類型

記錄指標可從記錄中擷取資料,以建立下列類型的指標:

  • 計數器:這些指標會計算特定期間內符合指定篩選條件的記錄項目數量。如要追蹤值或字串在記錄檔中出現的次數,請使用計數器。
  • 分布:這些指標也會計算值,但會將計數收集到值範圍 (直方圖值區)。如要擷取延遲時間等值,請使用發布。
  • 布林值:這些指標會擷取記錄項目是否符合指定篩選條件。

使用者定義的記錄指標可以是計數器或分佈指標類型。大多數系統定義的記錄指標都是計數器,但有些是布林值類型。後續章節會進一步說明計數器和分佈的特性。

使用者定義的記錄指標資料僅來自建立指標後收到的記錄項目。系統不會將已在 Logging 中的記錄項目資料填入指標。

系統記錄指標的計算依據僅為所納入的記錄。使用者定義的記錄指標會根據已納入和排除的記錄計算。

以下幾節說明計數器類型與分佈類型指標的特性。

計數器指標

計數器指標會計算符合特定篩選條件的記錄項目數量。舉例來說,您可以執行下列操作:

  • 計算包含特定錯誤訊息的記錄項目數。
  • 尋找符合下列模式的記錄訊息,計算每位使用者叫用作業的次數:

    ... user USERNAME called OPERATION ...

    透過擷取 USERNAMEOPERATION,並將這兩者當成兩個標籤的值來使用,您稍後可以提出「sally 呼叫 update 作業多少次?」「有多少人呼叫 read 作業?」「george 呼叫作業的次數為何?」等等。

詳情請參閱「設定計數器指標」。

分布指標

分佈指標會從符合篩選器的記錄項目中累積數字資料。指標包含一系列發布物件,每個發布物件都包含下列項目:

  • 分佈中的值計數。
  • 值的平均值。
  • 離均差平方和:Sumi=1..n(xi–mean)2
  • 在每個值區中帶有值計數的一組直方圖值區。您可以使用預設值區版面配置或選擇您自己的版面配置。

分佈指標的常用用法是追蹤延遲時間。收到每個記錄項目時,系統會從記錄項目中的某處擷取延遲時間值,然後新增到分佈中。累積分佈資料會定期寫入 Cloud Monitoring。

如要瞭解發布方式,包括時間序列中的格式和視覺化方式,請參閱「繪製發布指標圖表」。

如要瞭解如何建立以分佈記錄為基礎的指標,請參閱「設定分佈指標」。

資源類型

建議您在以記錄為基礎的指標中指定單一資源類型。這項規格可確保為以記錄為主的指標產生的時間序列,符合 Cloud Monitoring 預期的資料模型。這也簡化了建立圖表和警示政策的程序,因為您可以清楚瞭解要繪製或監控哪些時間序列資料。

請考慮使用下列篩選條件的記錄指標:

severity>="ERROR"
resource.type="gce_instance"

Cloud Monitoring 會將這項資料識別為 Compute Engine VM 執行個體的資料。因此,當您為 VM 執行個體建立圖表時,以記錄為基礎的指標會列為選單中的選項。為其他資源類型建立圖表時,系統不會將以記錄為依據的指標列為選項。

如果您建立記錄指標時未指定資源類型,監控功能會將記錄指標列為多種資源類型的選項,即使您未計算這些資源的項目也一樣。

標籤

記錄指標可以包含標籤,讓您針對指標收集多個時間序列。系統會從相符的記錄項目中擷取標籤值。記錄每個標籤值組合的個別時間序列。

大多數記錄指標都會提供預設的 log 標籤。此標籤可在記錄項目中保存 logName 欄位 LOG_ID 部分的值,例如 cloudresourcemanager.googleapis.com%2Factivity

系統記錄指標具有預先定義的標籤,無法變更。

使用者定義的記錄指標可以包含您定義的標籤。一般來說,這些標籤會從記錄項目中擷取值,並將這些值納入記錄指標。

舉例來說,您可以使用記錄檔值區指標中的標籤,記錄記錄項目來源的資料夾或機構,即使無法為資料夾或機構建立檔值區記錄檔值區指標也一樣。詳情請參閱「記錄指標標籤」。

Cloud Monitoring 中的圖表和快訊政策

在 Cloud Monitoring 中,您可以使用系統和使用者定義的記錄指標,建立圖表和警告政策。對於這些圖表和警示政策,您可以使用標籤篩選或合併時間序列。舉例來說,您可以設定篩選器,只顯示特定時間序列。詳情請參閱「列出記錄指標並建立圖表」和「根據記錄指標設定快訊通知」。

在 Cloud Monitoring 中,記錄指標會使用以下命名模式:

  • 系統:logging.googleapis.com/SYSTEM_METRIC_NAME
  • 使用者定義:logging.googleapis.com/user/USER_METRIC_NAME

請注意,使用者定義的記錄指標包含字串 user

監控指標範圍的可見度

Cloud Monitoring 會擷取記錄指標,而指標資料對 Google Cloud 專案的可見度則由指標範圍決定。指標範圍是指標範圍託管專案監控的專案清單;託管專案稱為限定範圍專案

根據預設,每個專案都會主控只包含自身的指標範圍,因此專案本身就是限定範圍專案。因此,您的指標 (包括記錄指標) 只能由Google Cloud 專案查看。

您也可以為範圍專案建立多專案指標範圍。使用多專案指標範圍後,限定範圍專案就能查看指標範圍內所有專案的指標。在多專案指標範圍中,個別專案可查看的內容取決於各專案代管的指標範圍。兩個專案位於多專案指標範圍內,並不代表每個專案都能存取其他專案的指標或設定資料。

單一專案也可以出現在多個指標範圍中。每個指標範圍的設定專案都能查看這類專案的指標。

指標 (包括記錄指標) 是在特定專案中定義。當該專案出現在多個指標範圍中時,除了定義指標的專案之外,其他專案也能查看這些指標。如要瞭解指標範圍和以值區為範圍的記錄指標如何互動,請參閱「專案和指標範圍」。

如要進一步瞭解指標範圍 (包括多專案指標範圍) 和限定範圍專案,請參閱以下文章:

定價

所有使用者定義的記錄指標都是 Cloud Monitoring 自訂指標中的一個類別,會產生費用。如需定價資訊,請參閱「Cloud Logging 定價:記錄指標」。

配額

如要進一步瞭解與使用者定義的記錄指標相關的配額和限制,請參閱「配額與限制」。

疑難排解

如果您在使用記錄指標時遇到問題,請參閱記錄指標疑難排解