參考架構範例

本文說明如何透過Cloud Run 函式觸發條件訂閱 Pub/Sub 主題,藉此監聽程式輔助預算通知。如果沒有訂閱者,Pub/Sub 會捨棄已發布的訊息,而且之後無法擷取這些訊息。本文將說明如何完成下列工作:
- 建立 Cloud Run 函式,以監聽通知。
- 查看 Cloud Run functions 事件。
- 測試 Cloud Run 函式。
事前準備
開始之前,請務必完成下列工作:
建立 Cloud Run 函式
如要建立 Cloud Run 函式,請完成下列步驟:
前往 Google Cloud 控制台的「Cloud Run functions」頁面。
按一下「建立服務」。
選取「使用內嵌編輯器建立函式」。
輸入對預算通知有意義的「服務名稱」。
選取要執行 Cloud Run 函式的區域。函式部署完成後,您就無法編輯這項設定。
按一下「新增觸發條件」,然後選取「Cloud Pub/Sub」。
如果出現提示,請啟用所有必要的 API。
在「Eventarc trigger」(Eventarc 觸發條件) 面板中,完成下列步驟:
- 輸入觸發條件名稱。
- 將「Trigger type」(觸發條件類型) 設為「Google sources」(Google 來源)。
- 將「Event provider」(事件供應商) 設為「Cloud Pub/Sub」。
- 選取您在預算中設定的 Cloud Pub/Sub 主題。
- 選擇一個 [Region] (地區)。
- 按一下「儲存觸發條件」。
視需要編輯「Identity-Aware Proxy」、「帳單」、「服務資源調度」、「Ingress」和「容器、磁碟區、網路與安全性」設定,然後按一下「建立」。
使用內嵌編輯器編寫程式碼,或是上傳檔案,告知函式如何處理通知。
如需程式碼範例,請參閱下列範例:
如要進一步瞭解您的程式碼會收到哪些通知,請參閱「通知格式」。
將「函式進入點」設為要執行的正確函式:
按一下「部署」。
查看 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。詳情請參閱通知格式。
後續步驟
如要進一步瞭解如何使用程式輔助通知,請參閱下列程式輔助費用控制回應範例: