Cloud Monitoring 的程序健康狀態警告政策可讓您監控虛擬機器 (VM) 上執行的程序數量,確認是否符合您指定的條件。舉例來說,您可以使用 Google Cloud 控制台計算超級使用者啟動的程序,或叫用指令包含特定字串的程序。當程序數量超過您定義的門檻時,警告政策就會傳送通知。如要瞭解可監控哪些程序,請參閱「受監控的程序」。
這項內容不適用於以記錄檔為準的警告政策。如要瞭解記錄式警告政策 (會在記錄中出現特定訊息時通知您),請參閱「監控記錄」。
事前準備
-
如要取得使用 Google Cloud 控制台建立及修改警告政策所需的權限,請要求管理員授予您專案的 Monitoring 編輯者 (
roles/monitoring.editor) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。如要進一步瞭解 Cloud Monitoring 角色,請參閱「使用 Identity and Access Management 控管存取權」。
請務必熟悉警告政策的一般概念。如要瞭解這些主題,請參閱「快訊總覽」。
設定要用於接收任何快訊的通知管道。為提供備援,我們也建議您建立多種通知管道。如要瞭解這些步驟,請參閱「建立及管理通知管道」。
確認您已在要監控的 VM 上安裝 Ops Agent。詳情請參閱「Google Cloud Observability 代理程式」。
建立警告政策
如要使用 Cloud Monitoring API 建立警告政策,監控 VM 上執行的程序數量,篩選運算式必須指定時間序列選取器。如需指定這個選取器的 JSON 檔案範例,請參閱「程序健康狀態政策」。
如要建立警告政策,監控 VM 上執行的程序數量,請按照下列步驟操作:
-
前往 Google Cloud 控制台的 notifications「Alerting」(警告) 頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
- 選取「建立政策」。
選取「?」「選取指標」部分標題,然後在工具提示中選取「直接篩選器模式」。
輸入 Monitoring 篩選條件。
舉例來說,如要計算名稱包含
nginx的 Compute Engine VM 執行個體上執行的程序數量,請輸入下列內容:select_process_count("monitoring.regex.full_match(\".*nginx.*\")") resource.type="gce_instance"如需語法資訊,請參閱下列資源:
- 如要瞭解用於計算虛擬機器上執行程序的篩選器,請參閱「程序健康狀態篩選器」。
- 如需一般語法,請參閱「Monitoring 篩選器」。
完成警告政策。您必須設定條件觸發條件、通知、說明文件和政策名稱,然後按一下「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 監控程序。