Check out what’s new from Firebase at Google I/O 2022. Learn more

הגדר התראות חיוב מתקדמות והיגיון

בעוד שהודעות אימייל פשוטות של התראות תקציב הן דרך קלה יחסית לקבל עדכוני חיוב, ייתכנו מקרים שבהם תרצה ליצור התראות מתוחכמות יותר הכוללות היגיון מותאם אישית יותר. להלן שתי גישות לשקול:

  • השתמש בניטור ענן כדי ליצור התראות מתוחכמות יותר ובזמן

  • השתמש בהודעת Pub/Sub לחיוב יחד עם פונקציית ענן מתאימה כדי ליצור התנהגות מותאמת אישית בתגובה לשינויים בהוצאות שלך

בעוד ששתי הטכניקות הללו דורשות יותר עבודה מצידך, הן נותנות לך את הכוח לשלוט בדיוק אילו סוגי התראות אתה מקבל וכיצד להגיב אליהן.

דף זה מציע סקירה כללית עבור כל אחת מהגישות הללו.

צור התראות מתוחכמות יותר עם ניטור ענן

הודעות אימייל פשוטות של התראות תקציב מאפשרות לך לדעת מתי החיוב הכולל שלך הגיע לספים מסוימים. עם זאת, ייתכן שתתעניין גם לדעת אם שירותים בודדים גדלים באופן בלתי צפוי - לפני שהייתה להם הזדמנות להשפיע באופן משמעותי על התקציב שלך. למקרי שימוש מתוחכמים יותר כמו זה, אנו ממליצים ללמוד על Cloud Monitoring, שהוא כלי של Google Cloud הזמין עבור פרויקט Firebase שלך.

ניטור ענן שימושי עבור מספר סוגים שונים של התראות:

  • אם משאב שהפרויקט שלך מסתמך עליו אינו זמין (הן עבור שירותי Firebase והן עבור שירותי Google Cloud, אלא אפילו עבור שירותים חיצוניים, כמו AWS)

  • אם לשירותים כמו פונקציות ענן לוקח זמן רב מהצפוי להגיב

  • אם דלי Cloud Storage, מופע Realtime Database או מופע Cloud Firestore דוחים יותר מדי בקשות (אינדיקציה לכך שכללי האבטחה של Firebase שלך ​​עשויים להיות שגויים).

  • אם כמות המשאבים בשימוש של חלק ממוצרי Firebase שלך ​​עלתה מעל סף מסוים

התראות שנוצרות באמצעות ניטור ענן נשלחות בדרך כלל מהר יותר מאשר מיילים פשוטים של התראות תקציב, הנשלחות בדרך כלל פעם ביום. התראות יכולות להיות הודעות SMS, הודעות ערוץ Slack, התראות PagerDuty, webhooks ועוד. אפשרויות אלה מאפשרות לך לשלוח התראות עם רמות נראות גבוהות יותר ואפשריות יותר לפעולה.

שימוש בניטור ענן

כדי להתחיל עם ניטור ענן, אנו ממליצים להתחיל עם מדדים סייר , המאפשר לך ליצור גרפים של מדדים מותאמים אישית בתוך פרויקט Firebase/Google Cloud שלך ולדמיין את השימוש בהם.

באופן ספציפי, אתה יכול להסתכל על משאבים כגון Cloud Firestore, Realtime Database או מופעי Cloud Function. אתה יכול להציג מידע שימוש על מוצרים אלה (כמו מספר קריאות מסמכים, בתים שנשלחו או הפעלת פונקציות) שישפיעו על החיוב שלך.

לאחר שתרגיש בנוח לדמיין את השימוש במשאבים שלך בסייר המדדים, אנו ממליצים ליצור מדיניות התראה לגבי המדדים שהכי חשובים לך. להלן מספר מדיניות התראה לדוגמה:

  • אם מספר המסמכים הנקראים בפרק זמן של 30 דקות גדול מערך מסוים

  • אם נראה שהשימוש במשאב ספציפי (כמו הפעלת פונקציה) עולה מהר מדי בפרק זמן מסוים

צור היגיון חיוב נוסף

התראות תקציב שולחות דוא"ל אוטומטית כאשר התקציב שלך מגיע לספים מסוימים, אך עבור התראות מתוחכמות יותר או תגובות פרוגרמטיות לעלייה בהוצאות, ייתכן שתשקול להגדיר לוגיקה מותאמת אישית נוספת המבוססת על הודעות Google Cloud Pub/Sub.

לדוגמה, אתה יכול לשלוח התראות לערוצי Slack או באמצעות הודעת טקסט, או שאתה מבצע שינויים פרוגרמטיים באפליקציה או בפרויקט שלך בהתאם לרמות ההוצאה.

Pub/Sub הוא שירות העברת הודעות המאפשר לשירותים אחרים לשלוח הודעות - בדרך כלל בצורה של נתוני JSON - באופן אסינכרוני דרך ערוצים הידועים בשם Pub/Sub נושאים. אתה יכול להגדיר שירותים מורשים, כמו פונקציות ענן, כדי להאזין להודעות בנושאים אלה ולפעול בהתאם לנתונים.

שים לב שהודעות Pub/Sub לחיוב נשלחות בערך אחת ל-20 דקות בין אם השימוש בחיוב שלך השתנה ובין אם לא, והן חסרות מדינה (כלומר שהן אינן מספקות הקשר לגבי מה שקדם להן). אם אתה רוצה לעקוב אחר עליות חריגות בהוצאות לאורך זמן, או להשוות את ההוצאות שלך למחזור הקודם, תצטרך לנהל את הנתונים ההיסטוריים האלה בעצמך באמצעות מסד נתונים כמו Cloud Firestore או מאגר הנתונים בזמן אמת.

שימוש בנושאי Pub/Sub עם פונקציות ענן

אתה יכול להגדיר נושא Pub/Sub עבור נתוני החיוב שלך על ידי ביקור בתקציב המשויך לפרויקט Firebase שלך ​​ב-Google Cloud Console (תחת חיוב > תקציבים והתראות ), ולאחר מכן לחיצה על תיבת הסימון של חבר נושא Pub/Sub לתקציב זה . פעולה זו תיצור נושא פאב/משנה שתוכל להאזין לו מאוחר יותר. לשלבים מפורטים, עיין בתיעוד המלא .

לאחר שיצרת את נושא החיוב שלך ב-Pub/Sub, תוכל לכתוב פונקציית ענן כדי להאזין לנושא זה ולפעול על פי הנתונים בהתאם. הנתונים נשלחים כנתוני JSON וכוללים מידע שימושי כמו הסכום שהוצאת עד כה, סכום התקציב שלך ותאריך ההתחלה של מחזור החיוב הנוכחי שלך.

בתיעוד של Google Cloud יש פרטים מלאים כיצד לקבל נתונים אלה באמצעות פונקציית ענן. עם זאת, אם אתה משתמש ב-Cloud Functions for Firebase כדי לפרוס את הפונקציות שלך, התהליך הכללי הוא קצת יותר פשוט (בדוק את התיעוד של Firebase ). אתה יכול גם לעיין בסרטון זה לקבלת הדרכה לדוגמה של התהליך.

לאחר שקיבלת את הנתונים הללו, ישנן מספר דרכים שונות שבהן תוכל להגיב אליהם. הנה כמה אפשרויות: