Observar una variable para detectar cambios

En esta página se explica cómo crear un recurso de espera para una variable. Para obtener más información sobre los recursos de espera, consulta Conceptos básicos de Runtime Configurator.

Antes de comenzar

Observar una variable para detectar cambios

Para observar una variable a fin de detectar cambios, llama al método variables().watch. El método observa la variable durante 60 segundos y se muestra si el valor de la variable cambia. Si el valor no cambia en 60 segundos, el método finaliza y muestra la variable state=VARIABLE_STATE_UNSPECIFIED. Si se borra la variable, el método muestra una variable state=DELETED y el último valor de variable conocido.

Para configurar un agente de observación, usa Deployment Manager, Google Cloud CLI o la API.

Deployment Manager

Esto no se admite en Deployment Manager. Crea un recurso de espera en su lugar.

gcloud

Con Google Cloud CLI, haz lo siguiente:

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

Donde:

  • [VARIABLE_KEY] es la clave que se observará.
  • [TIMEOUT_SEC] es el tiempo en segundos que se esperará. La cantidad predeterminada y máxima es 60 segundos.

Gcloud CLI observa la variable y aparece una vez que alcanza el tiempo de espera especificado o si cambia la variable. Si la variable cambió, la respuesta contiene uno de los estados de variable aplicables.

API

En la API, realiza una solicitud POST al siguiente URI:

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

En el ejemplo anterior, se ilustra lo siguiente:

  • [PROJECT_ID] es el ID del proyecto de esta solicitud.
  • [CONFIG_NAME] es el nombre del recurso RuntimeConfig para esta solicitud.
  • [VARIABLE_KEY] es la clave que se observará.

    De manera opcional, puedes proporcionar una carga útil de solicitud con la propiedad newerThan:

    {"newerThan": "[TIMESTAMP]"}

    donde [TIMESTAMP] es una marca de tiempo en RFC 3339 desde el ciclo de entrenamiento en formato "zulú" UTC. Por ejemplo:

    2014-10-02T15:01:23.045123456Z

    Si proporcionas la propiedad newerThan, el método se muestra de inmediato si la marca de tiempo actual para la variable es más nueva que la marca de tiempo especificada. Usa la propiedad newerThan para asegurarte de no se perdió ningún cambio entre llamadas watch().

    El método muestra uno de los estados de variable aplicables.

    Para obtener más información sobre el método, lee la documentación de variables().watch.

¿Qué sigue?