הצגה, חיפוש וסינון של יומני בקשות האינטרנט של האתר שלך באמצעות Cloud Logging

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

ריכזנו כאן כמה דברים שאפשר לעשות באמצעות יומני Cloud Logging. כדאי לעיין בכל אחד מהקטעים בדף הזה כדי לקבל פרטים נוספים.

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

  1. לוחצים על קישור בכרטיס השילוב של Cloud Logging במסוף Firebase.

    כדי לקשר או לבטל את הקישור של Cloud Logging, צריכות להיות לכם ההרשאות שמצורפות לכל אחד מהתפקידים הבאים: בעלים או עורך של פרויקט או אדמין פיתוח ב-Firebase.

  2. פועלים לפי ההוראות במסך כדי לבחור לאילו מהאתרים ב-Hosting ייוצאו יומנים אל Cloud Logging.

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

אחרי הקישור אל Cloud Logging, בדרך כלל יומני הבקשות החדשות לאתרים שלכם ב-Hosting יופיעו תוך 30 דקות ממועד שליחת הבקשה.

אפשר גם לבטל את הקישור של Firebase Hosting ל-Cloud Logging, וכך להפסיק את הייצוא של יומני הבקשות מהאינטרנט אל Cloud Logging.

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

אחרי הקישור אל Cloud Logging, תוכלו לראות את רמת השימוש בנתונים ביומני האתרים ב-Hosting:

הבנה טובה יותר של האתר

הממשק של Logs Viewer במסוף Google Cloud כולל כלים להצגת יומנים ונתונים ספציפיים באמצעות שאילתות, מסננים מובנים ולוחות נתונים. מידע נוסף על סינון היומנים באמצעות שאילתות זמין בקטע הבא.

  • מה מקור התנועה לאתר שלכם ברמת פירוט?
    אפשר לראות מידע על כל בקשה, כולל כתובת ה-IP של המקור, מקור ההפניה, העיר והסטטוס.

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

  • מהו הפירוט של הסטטוסים של בקשות ממשתמשי קצה?
    אפשר לראות את הסטטוס של כל בקשה ואפילו לאבחן בקשות שקיבלו שגיאות. אפשר לסנן את היומנים לפי Critical, ‏ Error או Warning.

  • כמה זמן חולף מהרגע שבו נשלחת בקשה לאתר עד שהאתר משיב לה?
    אפשר לראות את זמן האחזור של האתר לכל בקשה באמצעות הערך latency שנשמר בכל יומן.

  • האם האתר שלכם מנצל את האחסון במטמון של תוכן?
    כל יומן מכיל שדה cacheHit שמציין אם המשאב של האתר הוצג במהירות מהמטמון של ה-CDN של Hosting, או אם הוא נאלץ לעבור את כל המסלול לקצה העורפי של Hosting. כך תוכלו להפיק את המרב מ-CDN הגלובלי של Firebase ולשפר את הביצועים של האתר. לדוגמה, תוכלו להשתמש בנתונים כדי לשפר את הרגלי האחסון במטמון של הנכסים הסטטיים ושל התוכן הדינמי.

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

סינון היומנים באמצעות שאילתות

במאמרים דוגמאות לשאילתות באמצעות Logs Viewer ויצירת שאילתות ביומן מוסבר איך לסנן את היומנים באמצעות שאילתות. בטבלה הבאה מתוארים השדות שזמינים לשאילתות האלה.

עבור Hosting, הנה כמה מסננים ראשוניים לשאילתה:

  • משאב (resource.type) – firebase_domain (Firebase Hosting Site Domain)
  • שם היומן (logName) – webrequests (Firebase Hosting)

לכל רשומה ביומן יש מבנה מוגדר מראש ושדות שניתן לשלוח אליהם שאילתות (ראו LogEntry). ב-Hosting, חלק מהשדות הם סטנדרטיים לבקשת HTTP, אבל יש ערכים אחרים של שדות שמגיעים מהעיבוד ש-Hosting מפעיל בכל בקשה.

שדה תיאור
Firebase Hosting שומר את השדות הבאים באובייקט httpRequest של הרשומה ביומן.
השדות האלה מוגדרים במפרט ה-HTTP.
cacheHit האם המשאב של התגובה היה במטמון של ה-CDN של Hosting
latency משך הבקשה, בשניות עם סיומת s (לדוגמה, 1.256s)
protocol הפרוטוקול שבו נעשה שימוש בבקשה (לדוגמה, HTTP/1.1,‏ HTTP/2, ‏ websocket)
referer הכתובת של דף האינטרנט הקודם שממנו בוצע מעבר לקישור לדף הנוכחי המבוקש (אם קיים)
remoteIp כתובת ה-IP של לקוח המקור של הבקשה
requestMethod שיטת הבקשה (GET,‏ POST,‏ PUT וכו')
requestSize גודל הבקשה בבייטים
requestUrl כתובת ה-URL המלאה של הבקשה (לדוגמה,
https://foo.web.app/bar או https://custom.domain.com?query=param)
responseSize גודל תגובת ה-HTTP בבייטים
serverIp not populated
status סטטוס התגובה של ה-HTTP (לדוגמה, 200 או 404)
userAgent כותרת ה-User-Agent של הבקשה
Firebase Hosting שומר שדות נוספים באובייקט jsonPayload של הרשומה ביומן.
acceptEncoding (מבקשת ה-HTTP) איזה קידוד תוכן, בדרך כלל אלגוריתם דחיסה, הלקוח תומך בו (לדוגמה, gzip או compress)
billable האם הפרויקט שלכם חויב על הבקשה
customDomain אם הבקשה הוגשה לגבי דומיין מותאם אישית או לא
hostname שם המארח שאליו נשלחה הבקשה
remoteIpCountry מדינת המקור של הבקשה
remoteIpCity העיר שממנה נשלחה הבקשה

שימוש במדדים מבוססי-יומנים

אפשר להציג ולבנות מדדים שמבוססים על יומנים, ואז להשתמש במדדים האלה ב-Cloud Monitoring כדי ליצור תרשימים וכללי התראות.

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

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

  • אפשר להשתמש ב-Cloud Monitoring כדי לתעד את מספר הרשומות ביומן שמכילות הודעות מסוימות, או כדי לחלץ את פרטי זמן האחזור שמדווחים ברשומות ביומן. לאחר מכן תוכלו להשתמש במדדים האלה בתרשימים ובמדיניות ההתראות.

Firebase Hosting יוצר גם את מדדי הרישום ביומן הבאים שספציפיים ל-Hosting. המדדים האלה לא ספציפיים לרשומה ביומן, אלא לאתר Hosting הספציפי בכללותו.

  • log_bytes: סך כל הבייטים של שימוש בנתונים בכל אתר

  • response_count: המספר הכולל של התשובות שנכתבו באתר

    המדד הזה כולל את השדה של סטטוס ה-HTTP, כך שאפשר להציג תשובות HTTP לפי סטטוס (לדוגמה).

ייצוא יומנים לכלים אחרים של Google Cloud

אפשר גם לייצא את היומנים של האתר לכלים אחרים של Google Cloud, כמו Cloud Monitoring או BigQuery. לדוגמה:

  • באמצעות Cloud Monitoring אפשר ליצור מדדים שמבוססים על יומנים, שאפשר להשתמש בהם בתרשימים ובמדיניות התראות.

  • באמצעות BigQuery אפשר לבצע את הפעולות הבאות:

    • אתם יכולים להשתמש ב-Data Studio כדי ליצור מרכזי בקרה של נתוני Hosting.
    • מריצים שאילתות כדי לקבל תובנות נוספות על הבקשות (גודל התגובה הממוצע, היטים במטמון לעומת החמצות וכו').
    • לבדוק אילו כתובות URL המשתמשים מבקשים בפועל.
    • שילוב של נתוני Hosting עם נתונים אחרים של Firebase שייצאתם ל-BigQuery, ושליחת שאילתות לגבי הנתונים האלה בדרכים חדשות.