تقدّم هذه الصفحة مخطّط مجموعة البيانات لبيانات 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 |
سلسلة | إصدار التطبيق |
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بالنسبة إلى تطبيقات منصة Apple، هذا هو معرّف حزمة التطبيق. بالنسبة إلى تطبيقات 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 |
سجلّ متكرر | الأخطاء غير الخطيرة (تطبيقات Apple فقط) |
error_type |
سلسلة | نوع الخطأ في الحدث (على سبيل المثال، FATAL أو NON_FATAL أو ANR أو غير ذلك) |
error.blamed |
قيمة منطقية | ما إذا كان Crashlytics قد حدّد أنّ هذا الإطار هو سبب الخطأ |
error.code |
INT64 | رمز الخطأ المرتبط بـ NSError المخصّص الذي تم تسجيله في التطبيق |
error.frames |
سجلّ متكرر | إطارات تتبُّع تسلسل استدعاء الدوال البرمجية |
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 |
سلسلة | The hydrated symbol, or raw symbol if it's unhydrateable |
error.queue_name |
سلسلة | قائمة الانتظار التي كان يعمل عليها سلسلة المحادثات |
error.subtitle |
سلسلة | العنوان الفرعي لسلسلة المحادثات |
error.title |
سلسلة | عنوان سلسلة المحادثات |
event_id |
سلسلة | المعرّف الفريد للحدث |
event_timestamp |
TIMESTAMP | وقت وقوع الحدث |
exceptions |
سجلّ متكرر | (أجهزة Android فقط) الاستثناءات التي حدثت أثناء هذا الحدث. يتم عرض الاستثناءات المتداخلة بترتيب زمني عكسي، ما يعني أنّ السجلّ الأخير هو الاستثناء الأول الذي تم طرحه |
exceptions.blamed |
قيمة منطقية | صحيح إذا حدّد 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 |
سلسلة | The hydrated symbol, or raw symbol if it's unhydrateable |
exceptions.nested |
قيمة منطقية | "صحيح" لجميع الاستثناءات باستثناء آخر استثناء تم طرحه (أي السجلّ الأول) |
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 |
سلسلة | (تطبيقات Apple فقط) نوع نظام التشغيل الذي يعمل على الجهاز (على سبيل المثال،
IOS أو MACOS أو غير ذلك) |
platform |
سلسلة | النظام الأساسي للتطبيق كما هو مسجَّل في مشروع Firebase
(القيم الصالحة: IOS أو ANDROID)
|
process_state |
سلسلة | BACKGROUND أو FOREGROUND |
storage |
سجلّ | مساحة التخزين الدائمة على الجهاز |
storage.free |
INT64 | وحدات البايت المتبقية من مساحة التخزين |
storage.used |
INT64 | وحدات البايت من مساحة التخزين المستخدَمة |
threads |
سجلّ متكرر | سلاسل المحادثات الموجودة في وقت الحدث |
threads.blamed |
قيمة منطقية | ما إذا كان Crashlytics قد حدّد أنّ هذا الإطار هو سبب التعطّل أو الخطأ |
threads.code |
INT64 | (تطبيقات Apple فقط) رمز الخطأ لخطأ 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 |
سلسلة | (تطبيقات Apple فقط) قائمة الانتظار التي كان سلسلة التعليمات قيد التشغيل فيها |
threads.signal_code |
سلسلة | رمز الإشارة التي تسبّبت في تعطُّل التطبيق، ولا يظهر إلا في سلاسل المحادثات الأصلية المتعطّلة |
threads.signal_name |
سلسلة | اسم الإشارة التي تسبّبت في تعطُّل التطبيق، ولا تظهر إلا في سلاسل المحادثات الأصلية المتعطّلة |
threads.subtitle |
سلسلة | العنوان الفرعي لسلسلة المحادثات |
threads.thread_name |
سلسلة | اسم سلسلة المحادثات |
threads.title |
سلسلة | عنوان سلسلة المحادثات |
unity_metadata.debug_build |
قيمة منطقية | إذا كان هذا إصدارًا مخصصًا لتصحيح الأخطاء |
unity_metadata.graphics_copy_texture_support |
سلسلة | إتاحة نسخ زخرفة الرسومات على النحو المحدّد في واجهة برمجة تطبيقات Unity |
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 | ذاكرة الرسومات بالميغابايت |
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 | معدّل تحديث الشاشة بالهرتز |
unity_metadata.screen_resolution_dpi |
سلسلة | عدد النقاط لكل بوصة على الشاشة كرقم نقطة عائمة |
unity_metadata.screen_size_px |
سلسلة | حجم الشاشة بالبكسل، بتنسيق العرض × الارتفاع |
unity_metadata.system_memory_size_mb |
INT64 | حجم ذاكرة النظام بالميغابايت |
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 |
سلسلة |
المعرّف الأول لسلسلة من الجلسات التي تندرج ضمنها هذه الجلسة منذ بدء تشغيل التطبيق على البارد. ويمكن استخدام هذه السمة لتجميع كل الجلسات التي حدثت منذ التشغيل على البارد. إذا كانت هذه الجلسة هي الأولى،
سيكون هذا الحقل مطابقًا لـ session_id.
|
session_index |
عدد صحيح |
ترتيب هذه الجلسة بعد بدء تشغيل التطبيق على البارد. بالنسبة إلى
الجلسة الأولى بعد بدء التشغيل على البارد، ستكون هذه القيمة 0. ستتم زيادة الفهرس في كل مرة يتم فيها إنشاء جلسة بدون حدوث تشغيل على البارد (على سبيل المثال، بعد 30 دقيقة من عدم النشاط).
|
event_type |
سلسلة |
نوع الحدث الذي وقع في الجلسة (على سبيل المثال،
SESSION_START)
|
event_timestamp |
TIMESTAMP | وقت وقوع الحدث |
received_timestamp |
TIMESTAMP | الوقت الذي تلقّى فيه الخادم الحدث من الجهاز |
performance_data_collection_enabled |
قيمة منطقية | ما إذا كان قد تم تفعيل جمع بيانات حزمة تطوير البرامج (SDK) لمراقبة الأداء في Firebase في وقت الجلسة |
crashlytics_data_collection_enabled |
قيمة منطقية | ما إذا كان قد تم تفعيل ميزة جمع البيانات في حزمة تطوير البرامج (SDK) لخدمة Firebase Crashlytics في وقت الجلسة |
application |
سجلّ | يصف التطبيق |
application.build_version |
سلسلة |
إصدار التطبيق (على سبيل المثال،
1523456)
|
application.display_version |
سلسلة |
إصدار العرض للتطبيق (على سبيل المثال،
4.1.7)
|
device |
سجلّ | الجهاز الذي وقع فيه الحدث |
device.model |
سلسلة | طراز الجهاز |
device.manufacturer |
سلسلة |
الشركة المصنّعة للجهاز بالنسبة إلى التطبيقات على منصات Apple، سيكون هذا المعرّف هو
NULL.
|
operating_system |
سجلّ | يصف نظام تشغيل الجهاز |
operating_system.display_version |
سلسلة |
إصدار العرض لنظام التشغيل (على سبيل المثال،
10.2.1)
|
operating_system.name |
سلسلة | اسم نظام التشغيل |
operating_system.type |
سلسلة |
نوع نظام التشغيل (على سبيل المثال، IOS).
يتم ضبط هذا الحقل لأجهزة Apple فقط.
|
operating_system.device_type |
سلسلة |
نوع الجهاز (على سبيل المثال، MOBILE أو TABLET أو TV)
|