Pub/Sub 通知をリッスンする

リファレンス アーキテクチャの例

予算アラートに関するプログラムによる通知を使用して費用管理レスポンスを自動化する例を示した図
図 1: 予算アラートを使用して、プログラムによる通知に Pub/Sub を使用して費用管理レスポンスを自動化し、Cloud Run functions でレスポンスを自動化する例。

このドキュメントでは、Cloud Run functions の関数トリガーを使用して Pub/Sub トピックにサブスクライブし、プログラマティック予算通知をリッスンする方法について説明します。サブスクライバーがない場合、公開されたメッセージは Pub/Sub で破棄され、後で取得することはできません。このドキュメントでは、次のタスクを完了する方法を学習します。

  1. 通知をリッスンする Cloud Run 関数を作成します。
  2. Cloud Run 関数のイベントを表示する。
  3. Cloud Run 関数をテストします。

始める前に

開始前に、次のタスクを完了する必要があります。

  1. 予算の作成
  2. プログラムによる通知を設定する

Cloud Run functions の関数を作成する

Cloud Run 関数を作成するには、次の操作を行います。

  1. Google Cloud コンソールで、[Cloud Run 関数] ページに移動します。

    Cloud Run 関数に移動します

  2. [関数を作成] をクリックし、予算通知に意味のある関数名を入力します。

  3. Cloud Run 関数を実行するリージョンを選択します。関数をデプロイした後にこの設定を編集することはできません。

  4. [トリガーのタイプ] で、[Cloud Pub/Sub] を選択します。

  5. 予算で構成した Cloud Pub/Sub トピックを選択します。

  6. 必要に応じて [ランタイム]、[ビルド]、[接続]、[セキュリティ] の設定を編集し、[次へ] をクリックします。

  7. インライン エディタを使用してコードを記述するか、通知の処理方法を関数に指示するファイルをアップロードします。

    コードサンプルについては、次の例をご覧ください。

    コードが受け取る通知の詳細については、通知形式をご覧ください。

  8. [エントリ ポイント] を、実行する正しい関数に設定します。

  9. [デプロイ] をクリックします。

Cloud Run 関数のイベントを表示する

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 などのメッセージ属性を追加することもできます。詳細については、通知の形式をご覧ください。

次のステップ

プログラムによる通知の使用方法について詳しくは、プログラムによる費用管理レスポンスを以下に示します。