変数の変更を監視する

このページでは、変数のウォッチャーを作成する方法について説明します。ウォッチャーの詳細については、Runtime Configurator Fundamentals を参照してください。

始める前に

変数の変化を監視する

変数を監視して変化があったかを調べるには、variables().watch メソッドを呼び出します。このメソッドは、60 秒間変数を監視し、変数の値が変化すると返します。値が 60 秒以内に変化しない場合、メソッドは終了し、変数 state=VARIABLE_STATE_UNSPECIFIED を返します。変数が削除された場合、メソッドは変数 state=DELETED と最後に既知だった変数値を返します。

ウォッチャーを設定するには、Deployment Manager、Google Cloud CLI、または API を使用します。

Deployment Manager

これは、Deployment Manager でサポートされていません。代わりにウェイターを作成します。

gcloud

Google Cloud CLI を使用する場合:

gcloud beta runtime-config configs variables watch [VARIABLE_KEY] --max-wait [TIMEOUT_SEC] --config-name [CONFIG_NAME]

ここで

  • [VARIABLE_KEY] は、監視するキーです。
  • [TIMEOUT_SEC] は、待機する時間(秒)です。デフォルトおよび最大値は 60 秒です。

gcloud CLI は変数を監視し、指定したタイムアウト期間に達するか変数が変更された後に、値を返します。変数が変更された場合、レスポンスには該当する変数の状態のいずれか 1 つが含まれています。

API

API で、次の URI に POST リクエストを送ります。

https://runtimeconfig.googleapis.com/v1beta1/projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]:watch

ここで

  • [PROJECT_ID] はこのリクエストのプロジェクト ID です。
  • [CONFIG_NAME] は、このリクエストの RuntimeConfig リソースの名前です。
  • [VARIABLE_KEY] は、監視するキーです。

    必要に応じて、newerThan プロパティによるリクエスト ペイロードを設定できます。

    { "newerThan": "[TIMESTAMP]" }

    ここで、[TIMESTAMP] は UTC 「Zulu」形式のエポックからの RFC 3339 のタイムスタンプです。例:

    2014-10-02T15:01:23.045123456Z

    newerThan プロパティを設定する場合、メソッドは変数の現在のタイムスタンプが指定されたタイムスタンプよりも新しい場合、すぐに返します。watch() コール間でいかなる変更も見逃さないよう、newerThan プロパティを使用します。

    メソッドは、該当する変数の状態のうち 1 つを返します。

    このメソッドの詳細については、variables().watch のドキュメントをご覧ください。

次のステップ