接聽 Pub/Sub 通知

參考架構範例

以下是使用預算快訊程式輔助通知,自動執行成本控制回應的範例圖表。
圖 1:範例,說明如何使用預算快訊,透過 Pub/Sub 接收程式輔助通知,並使用 Cloud Run 函式自動採取因應行動,藉此自動控制成本。

本文說明如何透過Cloud Run 函式觸發條件訂閱 Pub/Sub 主題,藉此監聽程式輔助預算通知。如果沒有訂閱者,Pub/Sub 會捨棄已發布的訊息,而且之後無法擷取這些訊息。本文將說明如何完成下列工作:

  1. 建立 Cloud Run 函式,以監聽通知。
  2. 查看 Cloud Run functions 事件。
  3. 測試 Cloud Run 函式。

事前準備

開始之前,請務必完成下列工作:

  1. 設定預算
  2. 設定程式輔助通知

建立 Cloud Run 函式

如要建立 Cloud Run 函式,請完成下列步驟:

  1. 前往 Google Cloud 控制台的「Cloud Run functions」頁面。

    前往 Cloud Run functions

  2. 按一下「建立服務」

  3. 選取「使用內嵌編輯器建立函式」

  4. 輸入對預算通知有意義的「服務名稱」

  5. 選取要執行 Cloud Run 函式的區域。函式部署完成後,您就無法編輯這項設定。

  6. 按一下「新增觸發條件」,然後選取「Cloud Pub/Sub」

  7. 如果出現提示,請啟用所有必要的 API。

  8. 在「Eventarc trigger」(Eventarc 觸發條件) 面板中,完成下列步驟:

    1. 輸入觸發條件名稱
    2. 將「Trigger type」(觸發條件類型) 設為「Google sources」(Google 來源)
    3. 將「Event provider」(事件供應商) 設為「Cloud Pub/Sub」
    4. 選取您在預算中設定的 Cloud Pub/Sub 主題
    5. 選擇一個 [Region] (地區)
    6. 按一下「儲存觸發條件」
  9. 視需要編輯「Identity-Aware Proxy」、「帳單」、「服務資源調度」、「Ingress」和「容器、磁碟區、網路與安全性」設定,然後按一下「建立」

  10. 使用內嵌編輯器編寫程式碼,或是上傳檔案,告知函式如何處理通知。

    如需程式碼範例,請參閱下列範例:

    如要進一步瞭解您的程式碼會收到哪些通知,請參閱「通知格式」。

  11. 將「函式進入點」設為要執行的正確函式:

  12. 按一下「部署」

查看 Cloud Run function 事件

部署 Cloud Run 函式後,按一下「記錄」即可查看函式叫用的記錄。

測試 Cloud Run 函式

通知傳送至 Pub/Sub 後,訂閱者就會收到訊息。如要測試通知範例並確保函式正常運作,請在 Pub/Sub 中發布訊息,並將下列物件做為訊息主體:

{
    "budgetDisplayName": "name-of-budget",
    "alertThresholdExceeded": 1.0,
    "costAmount": 100.01,
    "costIntervalStart": "2019-01-01T00:00:00Z",
    "budgetAmount": 100.00,
    "budgetAmountType": "SPECIFIED_AMOUNT",
    "currencyCode": "USD"
}

您也可以新增訊息屬性,例如帳單帳戶 ID。詳情請參閱通知格式

後續步驟

如要進一步瞭解如何使用程式輔助通知,請參閱下列程式輔助費用控制回應範例: