בדף הזה מפורטת הסכימה של מערך הנתונים של נתוני Crashlytics ונתוני הסשנים של Firebase שמיוצאים אל BigQuery.
מערכת Firebase יוצרת מערכי נתונים חדשים ב-BigQuery בשביל הנתונים שיוצאו:
קבוצת הנתונים של הסשנים ב-Firebase (אם מופעל ייצוא של נתוני הסשנים)
קבוצת הנתונים Crashlytics
הנתונים של Crashlytics מיוצאים לקבוצת נתונים ב-BigQuery בשם firebase_crashlytics. מערך הנתונים כולל את כל הפרויקט, גם אם יש בו כמה אפליקציות.
טבלאות
כברירת מחדל, מערכת Firebase יוצרת טבלאות נפרדות בתוך מערך הנתונים Crashlytics לכל אפליקציה בפרויקט שמקושרת אל BigQuery.
הטבלאות נקראות על סמך המזהה של האפליקציה (נקודות מומרות לקווים תחתונים) ובסוף השם מופיעה הפלטפורמה של האפליקציה (_IOS או _ANDROID). לדוגמה, נתונים של אפליקציה ל-Android עם שם החבילה com.google.test יופיעו בטבלה בשם com_google_test_ANDROID.
אם הפעלתם ייצוא בסטרימינג אל BigQuery, הנתונים יועברו בסטרימינג בזמן אמת גם לטבלה עם הסיומת
_REALTIME(לדוגמה,com_google_test_ANDROID_REALTIME).כל שורה בטבלה מייצגת אירוע שהתרחש באפליקציה, כולל קריסות, שגיאות לא חמורות ו-ANR.
הטבלאות מכילות קבוצת מדדי הערכה של נתוני Crashlytics, בנוסף למפתחות Crashlytics בהתאמה אישית שהגדרתם באפליקציה (iOS+ | Android | Flutter | Unity).
שורות
כל שורה בטבלה מייצגת שגיאה שהאפליקציה נתקלה בה.
עמודות
העמודות בטבלה זהות לקריסות, לשגיאות לא קריטיות ולמקרי ANR.
אם מפעילים ייצוא בסטרימינג אל BigQuery, העמודות בטבלה בזמן אמת יהיו זהות לעמודות בטבלת האצווה.
יכול להיות שיהיו לכם עמודות בשורות שמייצגות אירועים שאין להם דוחות קריסות.
אלה העמודות בטבלה של נתוני Crashlytics שיוצאו:
| שם השדה | סוג הנתונים | תיאור |
|---|---|---|
app_orientation |
מחרוזת | לדוגמה, PORTRAIT, LANDSCAPE, FACE_UP, FACE_DOWN וכו'. |
application |
רשומה | האפליקציה שיצרה את האירוע |
application.build_version |
מחרוזת | גרסת ה-build של האפליקציה |
application.display_version |
מחרוזת | |
blame_frame |
רשומה | המסגרת שזוהתה כגורם לקריסה או לשגיאה |
blame_frame.address |
INT64 | הכתובת בתמונה הבינארית שמכילה את הקוד לא מוגדרת למסגרות Java |
blame_frame.blamed |
בוליאני | אם Crashlytics קבע שהמסגרת הזו היא הגורם לקריסה או לשגיאה |
blame_frame.file |
מחרוזת | שם הקובץ של המסגרת |
blame_frame.library |
מחרוזת | השם המוצג של הספרייה שכוללת את המסגרת |
blame_frame.line |
INT64 | מספר השורה בקובץ של הפריים |
blame_frame.offset |
INT64 | היסט הבייטים בתמונה הבינארית שמכילה את הקוד לא מוגדר לחריגות ב-Java |
blame_frame.owner |
מחרוזת | לדוגמה, DEVELOPER, VENDOR, RUNTIME, PLATFORM או SYSTEM. |
blame_frame.symbol |
מחרוזת | הסמל המלא, או הסמל הגולמי אם אי אפשר למלא אותו |
breadcrumbs |
רשומה חוזרת | Google Analyticsנתיבי ניווט עם חותמות זמן, אם הם מופעלים |
breadcrumbs.name |
מחרוזת | השם שמשויך לפירורי הלחם |
breadcrumbs.params |
רשומה חוזרת | פרמטרים שמשויכים לנתיב הניווט |
breadcrumbs.params.key |
מחרוזת | מפתח פרמטר שמשויך לנתיב הניווט |
breadcrumbs.params.value |
מחרוזת | ערך פרמטר שמשויך לפירורי הלחם |
breadcrumbs.timestamp |
TIMESTAMP | חותמת הזמן שמשויכת לפירורי הלחם |
bundle_identifier |
מחרוזת | המזהה הייחודי של האפליקציה כפי שהוא רשום בפרויקט ב-Firebase
(לדוגמה, com.google.gmailבאפליקציות לפלטפורמות של אפל, זהו מזהה החבילה של האפליקציה. באפליקציות ל-Android, זהו שם החבילה של האפליקציה. |
crashlytics_sdk_versions |
מחרוזת | גרסת ה-SDK של Crashlytics שיצרה את האירוע |
custom_keys |
רשומה חוזרת | צמדים של מפתח/ערך שהוגדרו על ידי המפתח |
custom_keys.key |
מחרוזת | מפתח שמוגדר על ידי המפתח |
custom_keys.value |
מחרוזת | ערך שהוגדר על ידי המפתח |
device |
רשומה | המכשיר שבו האירוע התרחש |
device_orientation |
מחרוזת | לדוגמה, PORTRAIT, LANDSCAPE, FACE_UP, FACE_DOWN וכו'. |
device.architecture |
מחרוזת | לדוגמה, X86_32, X86_64, ARMV7, ARM64, ARMV7S או ARMV7K. |
device.manufacturer |
מחרוזת | יצרן המכשיר |
device.model |
מחרוזת | דגם המכשיר |
error |
רשומה חוזרת | שגיאות לא קריטיות (באפליקציות של אפל בלבד) |
error_type |
מחרוזת | סוג השגיאה של האירוע (לדוגמה, FATAL, NON_FATAL, ANR וכו') |
error.blamed |
בוליאני | אם Crashlytics קבע שהמסגרת הזו היא הגורם לשגיאה |
error.code |
INT64 | קוד השגיאה שמשויך ל-NSError המותאם אישית של האפליקציה שנרשם ביומן |
error.frames |
רשומה חוזרת | הפריימים של מעקב ה-stack |
error.frames.address |
INT64 | הכתובת בתמונה הבינארית שמכילה את הקוד |
error.frames.blamed |
בוליאני | אם Crashlytics קבע שהמסגרת הזו היא הגורם לשגיאה |
error.frames.file |
מחרוזת | שם הקובץ של המסגרת |
error.frames.library |
מחרוזת | השם המוצג של הספרייה שכוללת את המסגרת |
error.frames.line |
INT64 | מספר השורה בקובץ של הפריים |
error.frames.offset |
INT64 | היסט הבייטים בתמונת הקובץ הבינארי שמכילה את הקוד |
error.frames.owner |
מחרוזת | לדוגמה, DEVELOPER, VENDOR, RUNTIME, PLATFORM או SYSTEM. |
error.frames.symbol |
מחרוזת | הסמל המלא, או הסמל הגולמי אם אי אפשר למלא אותו |
error.queue_name |
מחרוזת | התור שבו השרשור פעל |
error.subtitle |
מחרוזת | כותרת המשנה של השרשור |
error.title |
מחרוזת | שם השרשור |
event_id |
מחרוזת | המזהה הייחודי של האירוע |
event_timestamp |
TIMESTAMP | מתי האירוע התרחש |
exceptions |
רשומה חוזרת | (Android בלבד) חריגות שהתרחשו במהלך האירוע הזה. חריגות מקוננות מוצגות בסדר כרונולוגי הפוך, כלומר הרשומה האחרונה היא החריגה הראשונה שהוקפצה. |
exceptions.blamed |
בוליאני | הערך True אם Crashlytics קובע שהחריגה אחראית לשגיאה או לקריסה |
exceptions.exception_message |
מחרוזת | הודעה שמשויכת לחריג |
exceptions.frames |
רשומה חוזרת | הפריימים שמשויכים לחריגה |
exceptions.frames.address |
INT64 | הכתובת בתמונה הבינארית שמכילה את הקוד לא מוגדרת למסגרות Java |
exceptions.frames.blamed |
בוליאני | אם Crashlytics קבע שהמסגרת הזו היא הגורם לקריסה או לשגיאה |
exceptions.frames.file |
מחרוזת | שם הקובץ של המסגרת |
exceptions.frames.library |
מחרוזת | השם המוצג של הספרייה שכוללת את המסגרת |
exceptions.frames.line |
INT64 | מספר השורה בקובץ של הפריים |
exceptions.frames.offset |
INT64 | היסט הבייטים בתמונה הבינארית שמכילה את הקוד לא מוגדר לחריגות ב-Java |
exceptions.frames.owner |
מחרוזת | לדוגמה, DEVELOPER, VENDOR, RUNTIME, PLATFORM או SYSTEM. |
exceptions.frames.symbol |
מחרוזת | הסמל המלא, או הסמל הגולמי אם אי אפשר למלא אותו |
exceptions.nested |
בוליאני | True לכל החריגות חוץ מהחריגה האחרונה שנזרקה (כלומר הרשומה הראשונה) |
exceptions.subtitle |
מחרוזת | כותרת המשנה של השרשור |
exceptions.title |
מחרוזת | שם השרשור |
exceptions.type |
מחרוזת | סוג החריגה (לדוגמה, java.lang.IllegalStateException) |
firebase_session_id |
מחרוזת | המזהה שנוצר באופן אוטומטי לסשן ב-Firebase שממופה לאירוע מ-Crashlytics |
installation_uuid |
מחרוזת | מזהה שמזהה התקנה ייחודית של אפליקציה ומכשיר |
is_fatal |
בוליאני | אם האפליקציה קרסה |
issue_id |
מחרוזת | הבעיה שמשויכת לאירוע |
logs |
רשומה חוזרת | הודעות ביומן עם חותמות זמן שנוצרו על ידי הכלי לרישום ביומן Crashlytics, אם הוא מופעל |
logs.message |
מחרוזת | ההודעה ביומן |
logs.timestamp |
TIMESTAMP | מתי נוצר היומן |
memory |
רשומה | סטטוס הזיכרון של המכשיר |
memory.free |
INT64 | בייטים של זיכרון שנותרו |
memory.used |
INT64 | בייטים של זיכרון בשימוש |
operating_system |
רשומה | פרטי מערכת ההפעלה במכשיר |
operating_system.device_type |
מחרוזת | סוג המכשיר (לדוגמה, MOBILE, TABLET, TV וכו'), שנקרא גם "קטגוריית מכשיר" |
operating_system.display_version |
מחרוזת | גרסת מערכת ההפעלה במכשיר |
operating_system.modification_state |
מחרוזת | אם המכשיר עבר שינוי (לדוגמה, אפליקציה פרוצה היא MODIFIED ואפליקציה עם הרשאות בסיס היא UNMODIFIED) |
operating_system.name |
מחרוזת | שם מערכת ההפעלה במכשיר |
operating_system.type |
מחרוזת | (אפליקציות של אפל בלבד) סוג מערכת ההפעלה שפועלת במכשיר (לדוגמה, IOS, MACOS וכו') |
platform |
מחרוזת | הפלטפורמה של האפליקציה כפי שהיא רשומה בפרויקט Firebase
(ערכים חוקיים: IOS או ANDROID)
|
process_state |
מחרוזת | BACKGROUND או FOREGROUND |
storage |
רשומה | האחסון המתמיד של המכשיר |
storage.free |
INT64 | נפח האחסון שנותר בבייטים |
storage.used |
INT64 | בייטים של נפח אחסון בשימוש |
threads |
רשומה חוזרת | השרשורים שהיו קיימים בזמן האירוע |
threads.blamed |
בוליאני | אם Crashlytics קבע שהמסגרת הזו היא הגורם לקריסה או לשגיאה |
threads.code |
INT64 | (אפליקציות של אפל בלבד) קוד השגיאה של ה-NSError המותאם אישית שנרשם באפליקציה |
threads.crash_address |
INT64 | כתובת האות שגרם לקריסת האפליקציה. מופיעה רק בשרשורים מקוריים שקרסו. |
threads.crashed |
בוליאני | אם השרשור קרס |
threads.frames |
רשומה חוזרת | הפריימים של השרשור |
threads.frames.address |
INT64 | הכתובת בתמונה הבינארית שמכילה את הקוד |
threads.frames.blamed |
בוליאני | אם Crashlytics קבע שהמסגרת הזו היא הגורם לשגיאה |
threads.frames.file |
מחרוזת | שם הקובץ של המסגרת |
threads.frames.library |
מחרוזת | השם המוצג של הספרייה שכוללת את המסגרת |
threads.frames.line |
INT64 | מספר השורה בקובץ של הפריים |
threads.frames.offset |
INT64 | היסט הבייטים בתמונת הקובץ הבינארי שמכילה את הקוד |
threads.frames.owner |
מחרוזת | לדוגמה, DEVELOPER, VENDOR, RUNTIME, PLATFORM או SYSTEM. |
threads.frames.symbol |
מחרוזת | הסמל המלא, או הסמל הגולמי אם לא ניתן למלא אותו |
threads.queue_name |
מחרוזת | (אפליקציות של אפל בלבד) התור שבו השרשור פעל |
threads.signal_code |
מחרוזת | קוד האות שגרם לקריסת האפליקציה. מופיע רק בשרשורים מקוריים שקרסו |
threads.signal_name |
מחרוזת | שם האות שגרם לקריסת האפליקציה, מופיע רק בשרשורים מקוריים שקרסו |
threads.subtitle |
מחרוזת | כותרת המשנה של השרשור |
threads.thread_name |
מחרוזת | שם השרשור |
threads.title |
מחרוזת | שם השרשור |
unity_metadata.debug_build |
בוליאני | אם זו גרסת build לניפוי באגים |
unity_metadata.graphics_copy_texture_support |
מחרוזת | תמיכה בהעתקת טקסטורות של גרפיקה, כפי שמוגדר ב-Unity API |
unity_metadata.graphics_device_id |
INT64 | המזהה של המכשיר הגרפי |
unity_metadata.graphics_device_name |
מחרוזת | השם של המכשיר הגרפי |
unity_metadata.graphics_device_type |
מחרוזת | סוג המכשיר הגרפי |
unity_metadata.graphics_device_vendor_id |
INT64 | המזהה של ספק המעבד הגרפי |
unity_metadata.graphics_device_vendor |
מחרוזת | הספק של המכשיר הגרפי |
unity_metadata.graphics_device_version |
מחרוזת | גרסת המכשיר הגרפי |
unity_metadata.graphics_max_texture_size |
INT64 | הגודל המקסימלי שמוקדש לעיבוד המרקם |
unity_metadata.graphics_memory_size_mb |
INT64 | זיכרון ה-GPU ב-MB |
unity_metadata.graphics_render_target_count |
INT64 | מספר יעדי העיבוד הגרפי |
unity_metadata.graphics_shader_level |
INT64 | רמת ההצללה של הגרפיקה |
unity_metadata.processor_count |
INT64 | מספר המעבדים (הליבות) |
unity_metadata.processor_frequency_mhz |
INT64 | תדירות המעבדים במגה-הרץ |
unity_metadata.processor_type |
מחרוזת | סוג המעבד |
unity_metadata.screen_refresh_rate_hz |
INT64 | קצב הרענון של המסך בהרץ (Hz) |
unity_metadata.screen_resolution_dpi |
מחרוזת | ה-DPI של המסך כמספר בשיטת נקודה צפה |
unity_metadata.screen_size_px |
מחרוזת | גודל המסך בפיקסלים, בפורמט של רוחב x גובה |
unity_metadata.system_memory_size_mb |
INT64 | גודל הזיכרון של המערכת ב-Mb |
unity_metadata.unity_version |
מחרוזת | גרסת Unity שפועלת במכשיר הזה |
user |
רשומה | (אופציונלי) מידע שנאסף על המשתמש באפליקציה |
user.email |
מחרוזת | (אופציונלי) כתובת האימייל של המשתמש |
user.id |
מחרוזת | (אופציונלי) מזהה ספציפי לאפליקציה שמשויך למשתמש |
user.name |
מחרוזת | (אופציונלי) שם המשתמש |
variant_id |
מחרוזת | הווריאנט של הבעיה שמשויך לאירוע הזה שימו לב שלא לכל האירועים יש וריאנט משויך של בעיה. |
קבוצת נתונים של סשנים ב-Firebase
נתוני הסשנים של Firebase מיוצאים למערך נתונים ב-BigQuery שנקרא firebase_sessions. מערך הנתונים כולל את כל הפרויקט, גם אם יש בו כמה אפליקציות.
טבלאות
כברירת מחדל, מערכת Firebase יוצרת טבלאות נפרדות בתוך קבוצת הנתונים של הסשנים ב-Firebase לכל אפליקציה בפרויקט שמקושרת אל BigQuery.
הטבלאות נקראות על סמך מזהה האפליקציה (נקודות מומרות לקווים תחתונים) ובסוף השם מופיעה הפלטפורמה של האפליקציה (_IOS או _ANDROID). לדוגמה, נתונים של אפליקציה ל-Android עם שם החבילה com.google.test יופיעו בטבלה בשם com_google_test_ANDROID.
שורות
כל שורה בטבלה מייצגת אירוע סשן שהתרחש.
עמודות
אם מפעילים ייצוא בסטרימינג אל BigQuery, העמודות בטבלה בזמן אמת יהיו זהות לעמודות בטבלת האצווה.
אלה העמודות בטבלה של נתוני הסשנים המיוצאים מ-Firebase:
| שם השדה | סוג הנתונים | תיאור |
|---|---|---|
instance_id |
מחרוזת | מזהה ההתקנה של Firebase (FID) מהמכשיר. מזהה התקנה ייחודית של אפליקציה במכשיר |
session_id |
מחרוזת | המזהה הייחודי של הסשן הזה |
first_session_id |
מחרוזת |
המזהה הראשון של סדרת סשנים שהסשן הזה נמצא בה מאז שהאפליקציה הופעלה במצב התחלתי (cold start). אפשר להשתמש בזה כדי לקבץ את כל הסשנים שהתרחשו מאז ההפעלה מחדש. אם הסשן הזה הוא הסשן הראשון,
הערך בשדה הזה יהיה זהה לערך של session_id.
|
session_index |
מספר שלם |
הסדר שבו הסשן הזה התחיל אחרי שהאפליקציה הופעלה במצב התחלתי (cold start). בסשן הראשון אחרי הפעלה קרה, הערך יהיה 0. האינדקס
יגדל בכל פעם שייווצר סשן בלי
הפעלה קרה (לדוגמה, אחרי 30 דקות של חוסר פעילות).
|
event_type |
מחרוזת |
סוג האירוע שהתרחש בסשן (לדוגמה,
SESSION_START)
|
event_timestamp |
TIMESTAMP | השעה שבה האירוע התרחש |
received_timestamp |
TIMESTAMP | השעה שבה השרת קיבל את האירוע מהמכשיר |
performance_data_collection_enabled |
בוליאני | אם איסוף הנתונים של מעקב אחר ביצועים ב-Firebase SDK הופעל בזמן הסשן |
crashlytics_data_collection_enabled |
בוליאני | אם איסוף הנתונים של Firebase Crashlytics SDK הופעל בזמן הסשן |
application |
רשומה | תיאור האפליקציה |
application.build_version |
מחרוזת |
גרסת ה-build של האפליקציה (לדוגמה, 1523456)
|
application.display_version |
מחרוזת |
גרסת האפליקציה שמוצגת (לדוגמה, 4.1.7)
|
device |
רשומה | המכשיר שבו האירוע התרחש |
device.model |
מחרוזת | דגם המכשיר |
device.manufacturer |
מחרוזת |
יצרן המכשיר. באפליקציות לפלטפורמות של אפל, זה יהיה NULL.
|
operating_system |
רשומה | תיאור של מערכת ההפעלה של המכשיר |
operating_system.display_version |
מחרוזת |
גרסת התצוגה של מערכת ההפעלה (לדוגמה,
10.2.1)
|
operating_system.name |
מחרוזת | שם מערכת ההפעלה |
operating_system.type |
מחרוזת |
סוג מערכת ההפעלה (לדוגמה, IOS).
השדה הזה מוגדר רק במכשירי אפל.
|
operating_system.device_type |
מחרוזת |
סוג המכשיר (לדוגמה, MOBILE, TABLET, TV)
|