Controllo delle modifiche di una variabile

Questa pagina spiega come creare un watcher per una variabile. Per saperne di più sui watcher, consulta Concetti fondamentali di Runtime Configurator.

Prima di iniziare

Osservazione delle modifiche di una variabile

Puoi osservare le modifiche di una variabile chiamando il variables().watch metodo. Il metodo osserva la variabile per 60 secondi e restituisce se il valore della variabile cambia. Se il valore non cambia entro 60 secondi, il metodo termina e restituisce con la variabile state=VARIABLE_STATE_UNSPECIFIED. Se la variabile viene eliminata, il metodo restituisce una variabile state=DELETED e l'ultimo valore della variabile conosciuto.

Per impostare un watcher, utilizza Deployment Manager, Google Cloud CLI o l'API.

Deployment Manager

Questa operazione non è supportata in Deployment Manager. Crea invece una risorsa waiter.

gcloud

Con Google Cloud CLI:

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

dove:

  • [VARIABLE_KEY] è la chiave da osservare.
  • [TIMEOUT_SEC] è il tempo di attesa in secondi. L'importo predefinito e massimo è di 60 secondi.

gcloud CLI osserva la variabile e restituisce dopo aver raggiunto il periodo di timeout specificato o la variabile cambia. Se la variabile è cambiata, la risposta contiene uno degli stati della variabile applicabili variabile.

API

Nell'API, invia una richiesta POST al seguente URI:

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

dove:

  • [PROJECT_ID] è l'ID progetto per questa richiesta.
  • [CONFIG_NAME] è il nome della risorsa RuntimeConfig per questa richiesta.
  • [VARIABLE_KEY] è la chiave da osservare.

    Facoltativamente, puoi fornire un payload della richiesta con la proprietà newerThan:

    { "newerThan": "[TIMESTAMP]" }

    dove [TIMESTAMP] è un timestamp in formato RFC 3339 dall'epoca in formato "Zulu" UTC. Ad esempio:

    2014-10-02T15:01:23.045123456Z

    Se fornisci la proprietà newerThan, il metodo restituisce immediatamente se il timestamp corrente della variabile è più recente del timestamp specificato. Utilizza la proprietà newerThan per assicurarti di non aver perso modifiche tra le chiamate watch().

    Il metodo restituisce uno degli stati della variabile applicabili .

    Per saperne di più sul metodo, leggi la variables().watch documentazione.

Passaggi successivi