מעקב אחרי שינויים במשתנה

בדף הזה מוסבר איך ליצור מעקב אחרי משתנה. מידע נוסף על כלים למעקב זמין במאמר יסודות של Runtime Configurator.

לפני שמתחילים

מעקב אחרי שינוי במשתנה

כדי לעקוב אחרי שינויים במשתנה, מפעילים את השיטה 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]

where:

  • [VARIABLE_KEY] הוא המפתח לצפייה.
  • [TIMEOUT_SEC] הוא הזמן להמתנה בשניות. ברירת המחדל והסכום המקסימלי הם 60 שניות.

ה-CLI של gcloud עוקב אחרי המשתנה וחוזר אחרי שהוא מגיע לתקופת הזמן הקצובה שצוינה או אחרי שהמשתנה משתנה. אם המשתנה השתנה, התשובה תכיל אחד ממצבי המשתנה הרלוונטיים.

API

ב-API, שולחים בקשת POST ל-URI הבא:

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

where:

  • [PROJECT_ID] הוא מזהה הפרויקט של הבקשה הזו.
  • [CONFIG_NAME] הוא השם של משאב RuntimeConfig עבור הבקשה הזו.
  • [VARIABLE_KEY] הוא המפתח לצפייה.

    אפשר גם לספק מטען ייעודי (payload) של בקשה עם המאפיין newerThan:

    ‪{ "newerThan": "[TIMESTAMP]" }

    כאשר [TIMESTAMP] היא חותמת זמן בפורמט RFC 3339 מאז ראשית התקופה ב-UTC, בפורמט 'זולו'. לדוגמה:

    2014-10-02T15:01:23.045123456Z

    אם מספקים את המאפיין newerThan, השיטה מחזירה ערך באופן מיידי אם חותמת הזמן הנוכחית של המשתנה חדשה יותר מחותמת הזמן שצוינה. משתמשים במאפיין newerThan כדי לוודא שלא פספסתם שינויים בין קריאות של watch().

    השיטה מחזירה את אחד ממצבי המשתנה הרלוונטיים.

    מידע נוסף על השיטה זמין במאמרי העזרה בנושא variables().watch.

המאמרים הבאים