בדף הזה מפורטת סכימת היומן של נתוני Crashlytics מיוצאים ונתוני סשנים של Firebase ב-Cloud Logging.
סכמת הסשנים של Firebase (אם הייצוא של נתוני הסשנים מופעל)
Crashlytics סכימה
Event
ההודעה שמתארת אירוע יחיד ב-Crashlytics.
ייצוג ב-JSON
{
"name": string,
"platform": string,
"bundleOrPackage": string,
"eventId": string,
"sessionId": string,
"eventTime": string,
"receivedTime": string,
"issue": {
object (Issue)
},
"issueVariant": {
object (IssueVariant)
},
"device": {
object (Device)
},
"memory": {
object (Memory)
},
"storage": {
object (Storage)
},
"operatingSystem": {
object (OperatingSystem)
},
"browser": {
object (Browser)
},
"version": {
object (Version)
},
"user": {
object (User)
},
"customKeys": {
string: string,
...
},
"installationUuid": string,
"crashlyticsSdkVersion": string,
"appOrientation": string,
"deviceOrientation": string,
"logs": [
{
object (Log)
}
],
"breadcrumbs": [
{
object (Breadcrumb)
}
],
"blameFrame": {
object (Frame)
},
"exceptions": [
{
object (Exception)
}
],
"errors": [
{
object (Error)
}
],
"threads": [
{
object (Thread)
}
],
"processState": string,
"issueTitle": string,
"issueSubtitle": string,
"buildStamp": string
}
| שדות | תיאור |
|---|---|
name |
string
חובה. פלט בלבד.
אי אפשר לשנות אותם. מזהה. שם משאב האירוע. פורמט:
|
platform |
string
פלטפורמה לנייד (Android או iOS). |
bundleOrPackage |
string
שם החבילה באפליקציות ל-iOS או שם החבילה באפליקציות ל-Android.
פורמט: |
eventId |
string
פלט בלבד. אי אפשר לשנות אותם. המזהה הייחודי של האירוע מוקצה במהלך העיבוד. |
sessionId |
string
מזהה ייחודי של הסשן ב-Firebase. |
eventTime |
string (Timestamp format)
חותמת הזמן במכשיר שבה האירוע תועד. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30". |
receivedTime |
string (Timestamp format)
חותמת הזמן בשרת שבה האירוע התקבל על ידי Crashlytics. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30". |
issue |
object (Issue)
פרטים על [הבעיה] שהוקצתה ל[אירוע] הזה. |
issueVariant |
object (IssueVariant)
פרטים על [IssueVariant] שהוקצה ל[Event] הזה. |
device |
object (Device)
מטא-נתונים של מכשירים ניידים. |
memory |
object (Memory)
השימוש בזיכרון של המכשיר הנייד. |
storage |
object (Storage)
השימוש בדיסק או בפלאש במכשיר נייד. |
operatingSystem |
object (OperatingSystem)
מערכת הפעלה וגרסה. |
browser |
object (Browser)
דפדפן וגרסה. |
version |
object (Version)
גרסת האפליקציה לנייד. |
user |
object (User)
מזהים של משתמשי קצה עבור בעלי המכשיר. |
customKeys |
map (key: string, value: string)
מפתחות מותאמים אישית שהוגדרו על ידי המפתח במהלך הסשן. אובייקט שמכיל רשימה של צמדי 'מפתח': ערך. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |
installationUuid |
string
מזהה ייחודי של התקנת האפליקציה במכשיר. השדה הזה משמש לחישוב המספר הייחודי של המשתמשים שהושפעו. |
crashlyticsSdkVersion |
string
גרסת Crashlytics SDK. |
appOrientation |
string
כיוון האפליקציה בזמן הקריסה (לאורך או לרוחב). |
deviceOrientation |
string
כיוון המכשיר בזמן הקריסה (לאורך או לרוחב). |
logs[] |
object (Log)
הודעות יומן שמתעדות את הפעולות של המפתח במהלך הסשן. |
breadcrumbs[] |
object (Breadcrumb)
אירועים ב-Analytics שתועדו על ידי Analytics SDK במהלך הסשן. |
blameFrame |
object (Frame)
הפריים בדוח הקריסה שאחראי לקריסה לפי העיבוד של Crashlytics. יכול להיות שלא יהיה קיים בניתוח עתידי. |
exceptions[] |
object (Exception)
Android בלבד. חריגים שהתרחשו במהלך האירוע הזה. חריגות מקוננות מוצגות בסדר כרונולוגי הפוך, כך שהרשומה האחרונה היא החריגה הראשונה שהופעלה. |
errors[] |
object (Error)
אפל בלבד. שגיאה לא קריטית שתועדה על ידי iOS SDK וה-stacktrace שלה. |
threads[] |
object (Thread)
השרשורים של האפליקציה שהיו קיימים בזמן שהאירוע נרשם. כל אחד מהם מכיל stacktrace. שרשור אחד יואשם בשגיאה. |
processState |
string
המצב של תהליך האפליקציה בזמן האירוע. |
issueTitle |
string
השם של הבעיה שאליה האירוע שויך. בדרך כלל זהו שם של קובץ מקור או של שיטה. |
issueSubtitle |
string
כותרת המשנה של הבעיה שבה האירוע קובץ. בדרך כלל מדובר בסמל או בהודעת חריג. |
buildStamp |
string
מטא-נתונים שסופקו על ידי מערכת הבנייה של האפליקציה, כולל מידע על מאגר הבקרה של הגרסה. |
Memory
השימוש בזיכרון של המכשיר הנייד.
ייצוג ב-JSON
{
"used": string,
"free": string
}
| שדות | תיאור |
|---|---|
used |
string (int64 format)
בייטים בשימוש. |
free |
string (int64 format)
בייטים פנויים. |
Storage
השימוש בדיסק או בפלאש במכשיר נייד. לא מדווח בכל המכשירים.
ייצוג ב-JSON
{
"used": string,
"free": string
}
| שדות | תיאור |
|---|---|
used |
string (int64 format)
בייטים בשימוש. |
free |
string (int64 format)
בייטים פנויים. |
User
מזהים של משתמשי קצה שסופקו על ידי המפתח.
ייצוג ב-JSON
{
"id": string
}
| שדות | תיאור |
|---|---|
id |
string
מזהה משתמש, אם הוא מסופק על ידי מפתח האפליקציה. |
Frame
מסגרת ב-stacktrace.
ייצוג ב-JSON
{
"line": string,
"file": string,
"symbol": string,
"offset": string,
"address": string,
"library": string,
"owner": string,
"blamed": boolean
}
| שדות | תיאור |
|---|---|
line |
string (int64 format)
מספר השורה בקובץ של המסגרת. |
file |
string
השם של קובץ המקור שבו נמצאת המסגרת. |
symbol |
string
סמל המסגרת אחרי הסרת הטשטוש או הוספת הסמלים. הסמל הגולמי מהמכשיר אם לא ניתן היה להוסיף לו נתונים. |
offset |
string (int64 format)
ההיסט בבייטים בתמונת הקובץ הבינארי שמכיל את הקוד. הצגה של מסגרות מותאמות. |
address |
string (int64 format)
הכתובת בתמונת הקובץ הבינארי שמכילה את הקוד. הצגה עבור מסגרות מותאמות. |
library |
string
השם המוצג של הספרייה שכוללת את הפריים. |
owner |
string
אחת מהאפשרויות: DEVELOPER, VENDOR, RUNTIME, PLATFORM או SYSTEM. |
blamed |
boolean
הפונקציה מחזירה True אם ניתוח Crashlytics קבע שהפריים הזה הוא כנראה הגורם לשגיאה. |
Exception
חריגה ב-Java ו-stacktrace שלה, רק מאפליקציות ל-Android.
ייצוג ב-JSON
{
"type": string,
"exceptionMessage": string,
"nested": boolean,
"title": string,
"subtitle": string,
"blamed": boolean,
"frames": [
{
object (Frame)
}
]
}
| שדות | תיאור |
|---|---|
type |
string
סוג החריגה, לדוגמה: java.lang.IllegalStateException. |
exceptionMessage |
string
הודעה שמשויכת לחריג. |
nested |
boolean
הערך הוא True לכל הרשומות, חוץ מהחריגה האחרונה שהופעלה (כלומר, הרשומה הראשונה). |
title |
string
השם של החריגה. |
subtitle |
string
כותרת המשנה של החריגה. |
blamed |
boolean
הערך הוא True אם ניתוח Crashlytics קבע שה-thread הזה הוא המקום שבו התרחשה התקלה. |
frames[] |
object (Frame)
המסגרות ב-stacktrace של החריגה. |
Error
שגיאה לא קריטית ודוח הקריסות שלה, רק מאפליקציות של אפל.
ייצוג ב-JSON
{
"queue": string,
"code": string,
"title": string,
"subtitle": string,
"blamed": boolean,
"frames": [
{
object (Frame)
}
]
}
| שדות | תיאור |
|---|---|
queue |
string
התור שבו השרשור פעל. |
code |
string (int64 format)
קוד השגיאה שמשויך ל-NSError המותאם אישית של האפליקציה שנרשם ביומן. |
title |
string
השם של השגיאה. |
subtitle |
string
כותרת המשנה של השגיאה. |
blamed |
boolean
הערך הוא True אם ניתוח Crashlytics קבע שבעקבות ה-stacktrace בשגיאה הזו התרחשה התקלה. |
frames[] |
object (Frame)
המסגרות ב-stacktrace של השגיאה. |
Thread
שרשור של אפליקציה.
JSON representation</code></th>
</tr>
</thead>
<tbody>
<tr>
<td><code>{
"crashed": boolean,
"name": string,
"queue": string,
"signal": string,
"signalCode": string,
"crashAddress": string,
"title": string,
"subtitle": string,
"blamed": boolean,
"frames": [
{
object (Frame)
}
],
"threadId": string,
"sysThreadId": string,
"threadState": enum (State)
}
| שדות | תיאור |
|---|---|
crashed |
boolean
הערך True אם השרשור קרס. |
name |
string
שם השרשור. |
queue |
string
התור שבו השרשור פעל. |
signal |
string
השם של האות שגרם לקריסת האפליקציה. המאפיין הזה מופיע רק בשרשורים מקוריים שקרסו. |
signalCode |
string
הקוד של האות שגרם לקריסת האפליקציה. המאפיין הזה מופיע רק בשרשורים מקוריים שקרסו. |
crashAddress |
string (int64 format)
הכתובת של האות שגרם לקריסת האפליקציה. המאפיין הזה מופיע רק בשרשורים מקוריים שקרסו. |
title |
string
השם של השרשור. |
subtitle |
string
כותרת המשנה של השרשור. |
blamed |
boolean
הערך הוא True אם בניתוח של Crashlytics נקבע שבעקבות ה-stacktrace בשרשור הזה התרחשה התקלה. |
frames[] |
object (Frame)
הפריימים ב-stacktrace של השרשור. |
threadId |
string (int64 format)
המזהה של השרשור, זמין רק לשרשורים של ANR. |
sysThreadId |
string (int64 format)
מזהה המערכת של השרשור, זמין רק לשרשורים של ANR. |
threadState |
enum (State)
פלט בלבד. המצב של השרשור בזמן התרחשות ה-ANR. |
State
הסטטוס של השרשור בזמן שהתרחש ה-ANR.
| טיפוסים בני מנייה (enum) | תיאור |
|---|---|
STATE_UNSPECIFIED |
לא צוין סטטוס של השרשור. |
THREAD_STATE_TERMINATED |
השרשור נסגר. |
THREAD_STATE_RUNNABLE |
השרשור היה ניתן להרצה. |
THREAD_STATE_TIMED_WAITING |
ההמתנה של ה-Thread הסתיימה בגלל פסק זמן. |
THREAD_STATE_BLOCKED |
השרשור נחסם. |
THREAD_STATE_WAITING |
השרשור היה בהמתנה. |
THREAD_STATE_NEW |
השרשור התחיל, אבל עדיין לא בוצעה בו פעולה. |
THREAD_STATE_NATIVE_RUNNABLE |
השרשור היה מקורי ולא הצלחנו לקבוע באופן היוריסטי שהוא היה בהמתנה, לכן אנחנו מניחים שהוא ניתן להרצה. |
THREAD_STATE_NATIVE_WAITING |
קבענו באופן היוריסטי שהשרשור נמצא במצב המתנה. |
סכימת סשנים ב-Firebase
FirebaseSessionEvent
סשנים שתועדו על ידי Firebase App Quality Sessions SDK.
ייצוג ב-JSON
{
"sessionId": string,
"eventType": enum (SessionEventType),
"firstSessionId": string,
"sessionIndex": integer,
"firebaseInstallationId": string,
"eventTime": string,
"version": {
object (Version)
},
"device": {
object (Device)
},
"operatingSystem": {
object (OperatingSystem)
}
}
| שדות | תיאור |
|---|---|
sessionId |
string
מזהה ייחודי של הסשן ב-Firebase. |
eventType |
enum (SessionEventType)
סוג האירוע ברמת הסשן. בשלב הזה, ה-SDK תומך רק באירועי SESSION_START. |
firstSessionId |
string
המזהה של הסשן הראשון מאז ההפעלה במצב התחלתי (cold start) האחרונה. המזהה הזה והמזהה של הסשן יהיו זהים בהפעלות של אפליקציות. |
sessionIndex |
integer
מציין את מספר הסשנים מאז ההפעלה הקרה האחרונה. |
firebaseInstallationId |
string
מזהה באופן ייחודי מכשיר שמותקנות בו אפליקציות Firebase. |
eventTime |
string (Timestamp format)
חותמת הזמן של ההתחלה של אירוע הסשן. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30". |
version |
object (Version)
מספרי הגרסה של האפליקציה לנייד. |
device |
object (Device)
מטא-נתונים של מכשירים ניידים. |
operatingSystem |
object (OperatingSystem)
מערכת הפעלה וגרסה. |
SessionEventType
סוגי SessionEvent שתועדו.
| טיפוסים בני מנייה (enum) | תיאור |
|---|---|
SESSION_EVENT_TYPE_UNKNOWN |
לא ידועה. |
SESSION_START |
הסשן באפליקציה התחיל. |
סכימת יומן המכשיר
DeviceLog
מייצג את המבנה של הרשומות ביומן המכשיר.
ייצוג ב-JSON
{
"eventId": string,
"sessionId": string,
// Union field payload can be only one of the following:
"log": {
object (Log)
},
"breadcrumb": {
object (Breadcrumb)
}
// End of list of possible types for union field payload.
}
| שדות | תיאור |
|---|---|
eventId |
string
פלט בלבד. אי אפשר לשנות אותם. המזהה של האירוע שאליו משויך הפרמטר הזה. |
sessionId |
string
מזהה ייחודי של הסשן ב-Firebase. |
שדה איחוד |
|
log |
object (Log)
יומן Crashlytics. |
breadcrumb |
object (Breadcrumb)
נתיב ניווט של Crashlytics. |
Log
שורות יומן שסופקו על ידי המפתח ותועדו במהלך הסשן.
ייצוג ב-JSON
{
"logTime": string,
"message": string
}
| שדות | תיאור |
|---|---|
logTime |
string (Timestamp format)
חותמת הזמן במכשיר שבה נרשמה השורה. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים מלבד Z. דוגמאות: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30". |
message |
string
הודעה ביומן. |
Breadcrumb
אירועים ב-Analytics שתועדו במהלך הסשן.
ייצוג ב-JSON
{
"eventTime": string,
"title": string,
"params": {
string: string,
...
}
}
| שדות | תיאור |
|---|---|
eventTime |
string (Timestamp format)
חותמת הזמן של האירוע במכשיר. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים מלבד Z. דוגמאות: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30". |
title |
string
שם אירוע ניתוח הנתונים. |
params |
map (key: string, value: string)
פרמטרים של אירועים. אובייקט שמכיל רשימה של צמדי 'מפתח': ערך. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }. |