以記錄檔為準的警告政策事件

事件是指符合警告政策條件時的記錄。一般來說,當 Cloud Monitoring 收到符合快訊政策條件的記錄時,就會開啟事件並傳送通知。不過,在下列情況下,系統不會建立事件:

  • 政策已暫緩或停用。
  • 快訊政策或事件數量超過現有的快訊限制
  • 另一個記錄項目導致開放事件符合相同條件。在這種情況下,監控服務只會針對同一事件傳送另一則通知。

針對每個事件,Monitoring 會建立「事件詳細資料」頁面,方便您管理事件,並提供事件資訊,協助您排解失敗問題。舉例來說,「事件詳細資料」頁面會顯示符合記錄型快訊政策查詢條件的記錄項目清單。您也可以找到相關事件的連結。

本文說明如何找出事件。本文也會說明如何使用「事件詳細資料」頁面,管理記錄檔快訊政策的事件,這類政策會評估儲存在 Cloud Logging 中個別記錄檔的記錄項目資料。

這項功能僅支援 Google Cloud 專案。 如果是 App Hub 設定,請選取 App Hub 主專案或管理專案。

事前準備

如要取得查看及管理事件所需的權限,請要求管理員在專案中授予您下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

如要進一步瞭解 Cloud Monitoring 角色,請參閱「使用 Identity and Access Management 控制存取權」。

查看事件

如要查看專案中的事件,請使用 Google Cloud 控制台、gcloud CLI (公開預先發布版) 或 Monitoring API (公開預先發布版)。

Google Cloud 控制台

如要列出 Google Cloud 專案中的事件,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的 「Alerting」(警告) 頁面

    前往「Alerting」(快訊)

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

  2. 在 Google Cloud 控制台的工具列中,選取 Google Cloud 專案。如要進行 App Hub 設定,請選取 App Hub 主專案或管理專案。

    「警告」頁面會顯示警告政策、暫緩和事件的相關資訊:

    • 「摘要」窗格會列出未結事件的數量。
    • 「事件」表格會顯示最近的未結事件。如要在表格中列出最新事件 (包括已結案的事件),請按一下「顯示已結案的事件」
  3. 如要查看特定事件的詳細資料,請在清單中選取該事件。

    「Incident details」(事件詳細資料) 頁面隨即開啟。如要進一步瞭解「事件詳細資料」頁面,請參閱本文的「調查事件」一節。

尋找較舊的事件

「警告」頁面上的「事件」表格會顯示最近開啟的事件。如要查看較舊的事件,請執行下列其中一項操作:

  • 如要逐頁瀏覽「事件」表格中的項目,請按一下「較新」或「較舊」

  • 如要開啟可列出及篩選事件的頁面,請按一下「查看所有事件」。「事件」頁面隨即開啟。請在該頁面執行下列操作:

    • 顯示所有事件,包括已結案的事件。如要顯示所有事件,請按一下「顯示已結案的事件」
    • 篩選事件。如要瞭解如何新增篩選器,請參閱「篩選事件」一文。
    • 確認或關閉事件,或是暫緩快訊政策。 如要存取這些選項,請按一下事件列中的「更多選項」,然後從選單中選取所需選項。詳情請參閱「管理事件」。

篩選事件

如要限制表格顯示的事件,請新增篩選器。如果新增多個篩選器,表格只會顯示符合所有篩選器的事件。

如要篩選事件表格,請按照下列步驟操作:

  1. 在「事件」頁面上,按一下「篩選表格」,然後選取篩選器屬性。篩選條件屬性包括:

    • 事件狀態
    • 快訊政策名稱
    • 事件開啟或關閉的時間
  2. 從次要選單選取值,或在篩選條件列中輸入值。

    「事件」表格隨即會列出篩選條件。

gcloud

您可以使用 gcloud 取得事件和列出事件。

取得事件

使用下方的任何指令資料之前,請先替換以下項目:

  • ALERT_NAME:快訊的資源名稱。例如:projects/my-project/alerts/my-alert-id

執行 gcloud alpha monitoring alerts describe 指令:

Linux、macOS 或 Cloud Shell

gcloud alpha monitoring alerts describe ALERT_NAME

Windows (PowerShell)

gcloud alpha monitoring alerts describe ALERT_NAME

Windows (cmd.exe)

gcloud alpha monitoring alerts describe ALERT_NAME
這項指令會傳回包含快訊詳細資料的回應,例如快訊狀態、附加的標籤和來源快訊政策。 請注意,這項功能在預先發布期間,回應中的標籤可能會有所變更。回覆內容類似以下範例:
{
  "name": "projects/my-project/alerts/my-alert-id",
  "state": "OPEN",
  "open_time": "2025-06-11T09:53:46Z",
  "resource": {
    "type": "k8s_cluster",
    "labels": {
      "location": "us-central1",
      "cluster_name": "example_cluster",
      "project_id": "my-project"
    }
  },
  "log": {
    "extracted_labels": {
      "title": "my title"
    }
  },
  "policy": {
    "name": "projects/my-project/alertPolicies/POLICY_1",
    "displayName": "test-policy"
  },
  "summaryText": "[ALERT] test-policy for Kubernetes Cluster with {cluster_name=example_cluster, location=us-central1, project_id=my-project}"
}

列出事件

您可以使用 gcloud CLI 列出專案中的事件,並篩選結果。

使用下方的任何指令資料之前,請先替換以下項目:

  • PROJECT_ID:專案的 ID。

執行 gcloud alpha monitoring alerts list 指令:

Linux、macOS 或 Cloud Shell

gcloud alpha monitoring alerts list

Windows (PowerShell)

gcloud alpha monitoring alerts list

Windows (cmd.exe)

gcloud alpha monitoring alerts list
這項指令會傳回包含快訊詳細資料的回應,例如快訊狀態、附加的標籤和來源快訊政策。 請注意,這項功能在預先發布期間,回應中的標籤可能會有所變更。回覆內容類似以下範例:
{
  "alerts": [
    {
      "name": "projects/my-project/alerts/my-alert-id",
      "state": "OPEN",
      "open_time": "2025-06-11T09:53:46Z",
      "resource": {
        "type": "k8s_cluster",
        "labels": {
          "location": "us-central1",
          "cluster_name": "example_cluster",
          "project_id": "my-project"
        }
      },
      "log": {
        "extracted_labels": {
          "title": "my title"
        }
      },
      "policy": {
        "name": "projects/my-project/alertPolicies/POLICY_1",
        "displayName": "test-policy"
      },
      "summaryText": "[ALERT] test-policy for Kubernetes Cluster with {cluster_name=example_cluster, location=us-central1, project_id=my-project}"
    }
  ]
}
您也可以使用下列選用標記來篩選、排序或修改輸出內容:
  • --filter:提供篩選器運算式,依時間或標籤篩選快訊。舉例來說,您可以使用 --filter='close_time>="2025-09-10T00:00:00Z"' 依時間篩選,或使用 --filter='resource.labels.key="value"' 依標籤篩選。

  • --sort-by:以半形逗號分隔的欄位清單,做為輸出內容的排序依據。例如 --sort-by=open_time

  • --uri:指令會輸出資源 URI 清單,而非預設輸出內容。

  • --limit:將這個標記設為 2 以上,即可限制傳回的快訊數量。請勿將這個旗標與 --filter 旗標搭配使用。

Monitoring API

您可以使用 Monitoring API 取得事件及列出事件。

取得事件

如要透過 Monitoring API 取得單一事件的詳細資料,請使用 alerts.get 方法。

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案的 ID。
  • ALERT_ID:快訊 ID。

HTTP 方法和網址:

GET https://monitoring.googleapis.com/v3/projects/PROJECT_ID/alerts/ALERT_ID

請展開以下其中一個選項,以傳送要求:

這項指令會傳回包含快訊詳細資料的回應,例如快訊狀態、附加的標籤和來源快訊政策。請注意,這項功能在預先發布期間,回應中的標籤可能會有所變更。回覆內容類似以下範例:
{
  "name": "projects/my-project/alerts/my-alert-id",
  "state": "OPEN",
  "open_time": "2025-06-11T09:53:46Z",
  "resource": {
    "type": "k8s_cluster",
    "labels": {
      "location": "us-central1",
      "cluster_name": "example_cluster",
      "project_id": "my-project"
    }
  },
  "log": {
    "extracted_labels": {
      "title": "my title"
    }
  },
  "policy": {
    "name": "projects/my-project/alertPolicies/POLICY_1",
    "displayName": "test-policy"
  },
  "summaryText": "[ALERT] test-policy for Kubernetes Cluster with {cluster_name=example_cluster, location=us-central1, project_id=my-project}"
}

列出事件

如要列出專案中的事件,並使用 Monitoring API 篩選結果,請使用 alerts.list 方法。

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案的 ID。

HTTP 方法和網址:

GET https://monitoring.googleapis.com/v3/projects/PROJECT_ID/alerts

請展開以下其中一個選項,以傳送要求:

這項指令會傳回包含快訊詳細資料的回應,例如快訊狀態、附加的標籤和來源快訊政策。請注意,這項功能在預先發布期間,回應中的標籤可能會有所變更。回覆內容類似以下範例:
{
  "alerts": [
    {
      "name": "projects/my-project/alerts/my-alert-id",
      "state": "OPEN",
      "open_time": "2025-06-11T09:53:46Z",
      "resource": {
        "type": "k8s_cluster",
        "labels": {
          "location": "us-central1",
          "cluster_name": "example_cluster",
          "project_id": "my-project"
        }
      },
      "log": {
        "extracted_labels": {
          "title": "my title"
        }
      },
      "policy": {
        "name": "projects/my-project/alertPolicies/POLICY_1",
        "displayName": "test-policy"
      },
      "summaryText": "[ALERT] test-policy for Kubernetes Cluster with {cluster_name=example_cluster, location=us-central1, project_id=my-project}"
    }
  ]
}
Curl 使用者可以新增 --data-urlencode 旗標,然後加入篩選器運算式,依時間或標籤篩選快訊。請參閱以下範例:

列出過去一小時內開啟的快訊:

--data-urlencode "filter=(open_time>=\"`date -u -d "1 hour ago" +"%Y-%m-%dT%H:%M:%SZ"`\")"

列出並篩選過去一天內未解決的快訊:

--data-urlencode "filter=(open_time>=\"`date -u -d "1 DAY ago" +"%Y-%m-%dT%H:%M:%SZ"`\" AND state=open)"

列出並篩選兩個時間範圍內開啟的快訊:

--data-urlencode "filter=(open_time>=\"`date -u -d "2 DAY ago" +"%Y-%m-%dT%H:%M:%SZ"`\" AND open_time<=\"`date -u -d "1 DAY ago" +"%Y-%m-%dT%H:%M:%SZ"`\")"

依使用者標籤列出及篩選快訊。在本例中,請依名稱為 app 且值為 my-gke-app 的使用者標籤進行篩選:

--data-urlencode "filter=(policy.user_labels.app=\"my-gke-app\")"
Powershell 使用者可以參考下列範例,在要求網址中新增時間篩選器:
$baseUrl = "https://monitoring.googleapis.com/v3/projects/my-project/alerts"
$filterValue = (Get-Date).AddHours(-1).ToString("yyyy-MM-ddTHH:mm:ssZ")
$filter = 'open_time >= "' + $filterValue + '"'
$encodedFilter = [System.Uri]::EscapeDataString($filter)
$url = $baseUrl + "?filter=" + $encodedFilter

調查事件

「Incident details」(事件詳細資料) 頁面包含的資訊有助於找出事件原因。

探索記錄項目

探索記錄項目,找出與調查相關的模式和重複發生的問題。「記錄」窗格會顯示符合記錄式快訊政策查詢的記錄項目。

  • 如要在「記錄檔探索工具」中查看記錄項目,請按一下「在記錄檔探索工具中查看」,然後選取範圍界定專案。
  • 如要在 Metrics Explorer 中查看「記錄」面板,請按一下「探索資料」

查看補充資訊

「標籤」部分會顯示導致事件的記錄項目中,受監控資源的標籤和值。這項資訊有助於找出導致事件的特定受監控資源。詳情請參閱「使用標籤註解事件」。

「說明文件」部分會顯示您建立快訊政策時提供的通知說明文件範本。這類資訊可能包括警報政策監控的內容說明,以及緩解措施的提示。詳情請參閱「使用使用者定義的註解標註通知」。

如果沒有為快訊政策設定說明文件,則「說明文件」窗格會顯示「未設定任何說明文件」。

為協助您找出應用程式的根本問題,您可以探索與其他快訊政策條件相關的事件。

「相關事件」部分會顯示符合下列任一條件的事件清單:

  • 當符合相同警告政策的條件時,系統就會建立事件。
  • 事件與「事件詳細資料」頁面顯示的事件共用標籤。

管理事件

事件會處於下列其中一種狀態:

  •  開啟: 符合記錄檔快訊政策的條件,且事件仍處於開啟狀態。如果再次符合相同條件,且事件已開啟,系統就不會開啟新事件。

  •  已確認: 事件處於開啟狀態,且已手動標示為已確認。 通常這個狀態表示事件正在調查中。

  •  已結案: 您已手動結案,或系統在自動結案期限到期後自動結案。

確認事件

建議您在開始調查事件原因時,將事件標示為已確認。

如要將事件標示為已確認,請按照下列步驟操作:

  1. 在「快訊」頁面的「事件」表格中,按一下「查看所有事件」
  2. 在「事件」頁面中,找到要確認的事件,然後執行下列其中一項操作:

    • 按一下「更多選項」,然後選取「確認」
    • 開啟事件的詳細資料頁面,然後按一下「確認事件」

暫緩執行快訊政策

如要避免 Monitoring 在特定時間範圍內建立事件及傳送通知,請延後相關的警告政策。 延後快訊政策時,與該政策相關的事件會保持開啟狀態,但不會再觸發通知。系統會根據快訊政策的自動關閉期限關閉事件。

如要為目前查看的事件建立暫緩處理,請按照下列步驟操作:

  1. 在「Incident details」(事件詳細資料) 頁面中,按一下「Snooze Policy」(暫緩政策)

  2. 選取貪睡時間長度。選取延後時間長度後,延後設定會立即生效。

您也可以在「事件」頁面中延後警告政策,方法是找出要延後的事件,按一下「更多選項」,然後選取「延後」。 發生中斷時,您可以暫緩快訊政策,以免在疑難排解過程中收到更多通知。

關閉事件

您可以讓 Monitoring 為您關閉事件,也可以自行關閉事件。

當快訊政策的自動關閉時間到期時,監控功能會自動關閉事件。預設的自動關閉期限為 7 天。自動關閉期限最短為 30 分鐘。

自動關閉期限是指事件關閉前,必須經過一段時間,且事件原因未重複發生。因此,如果事件開啟後再次發生原因,事件可能會在自動關閉時間過後仍處於開啟狀態。

如要關閉事件,請按照下列步驟操作:

  1. 在「快訊」頁面的「事件」表格中,按一下「查看所有事件」
  2. 在「事件」頁面中,找到要結案的事件,然後執行下列其中一項操作:

    • 按一下「查看更多」,然後選取「關閉事件」
    • 開啟該事件的「Incident details」(事件詳細資料) 頁面,然後按一下「Close incident」(關閉事件)

如果看到 Unable to close incident 訊息,請稍待幾分鐘後再試一次。造成新事件的條件仍處於有效狀態,因此警報系統會將事件視為有效,您無法立即關閉。

資料保留與限制

如要瞭解事件的限制和保留期限,請參閱「快訊限制」。

後續步驟