監控 VM 上的程序數量

Cloud Monitoring 的程序健康狀態警告政策可讓您監控虛擬機器 (VM) 上執行的程序數量,確認是否符合您指定的條件。舉例來說,您可以使用 Google Cloud 控制台計算超級使用者啟動的程序,或叫用指令包含特定字串的程序。當程序數量超過您定義的門檻時,警告政策就會傳送通知。如要瞭解可監控哪些程序,請參閱「受監控的程序」。

這項內容不適用於以記錄檔為準的警告政策。如要瞭解記錄式警告政策 (會在記錄中出現特定訊息時通知您),請參閱「監控記錄」。

事前準備

  1. 如要取得使用 Google Cloud 控制台建立及修改警告政策所需的權限,請要求管理員授予您專案的 Monitoring 編輯者 (roles/monitoring.editor) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

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

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

  2. 請務必熟悉警告政策的一般概念。如要瞭解這些主題,請參閱「快訊總覽」。

  3. 設定要用於接收任何快訊的通知管道。為提供備援,我們也建議您建立多種通知管道。如要瞭解這些步驟,請參閱「建立及管理通知管道」。

  4. 確認您已在要監控的 VM 上安裝 Ops Agent。詳情請參閱「Google Cloud Observability 代理程式」。

建立警告政策

如要使用 Cloud Monitoring API 建立警告政策,監控 VM 上執行的程序數量,篩選運算式必須指定時間序列選取器。如需指定這個選取器的 JSON 檔案範例,請參閱「程序健康狀態政策」。

如要建立警告政策,監控 VM 上執行的程序數量,請按照下列步驟操作:

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

    前往「Alerting」(警告)

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

  2. 選取「建立政策」。
  3. 選取「?」「選取指標」部分標題,然後在工具提示中選取「直接篩選器模式」。

  4. 輸入 Monitoring 篩選條件。

    舉例來說,如要計算名稱包含 nginx 的 Compute Engine VM 執行個體上執行的程序數量,請輸入下列內容:

    select_process_count("monitoring.regex.full_match(\".*nginx.*\")")
    resource.type="gce_instance"
    

    如需語法資訊,請參閱下列資源:

  5. 完成警告政策。您必須設定條件觸發條件、通知、說明文件和政策名稱,然後按一下「Create policy」(建立政策)。

    詳情請參閱「建立指標門檻警告政策」。

受監控的程序

程序健康狀態條件無法監控系統中執行的所有程序。這項條件會使用正規運算式,套用至叫用程序的指令列,選取要監控的程序。如果指令列欄位無法使用,就無法監控程序。

如要判斷程序是否可由程序健康狀態條件監控,其中一種方法是查看執行中的程序。舉例來說,在 Linux 系統上,您可以使用 ps 指令:

    ps aux | grep nfs
    USER      PID  %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root      1598  0.0  0.0      0     0 ?        S<   Oct25   0:00 [nfsd4]
    root      1639  0.0  0.0      0     0 ?        S    Oct25   2:33 [nfsd]
    root      1640  0.0  0.0      0     0 ?        S    Oct25   2:36 [nfsd]

如果 COMMAND 項目以方括號括住 (例如 [nfsd]),表示無法取得該程序的指令列資訊。在這種情況下,您無法使用 Cloud Monitoring 監控程序。