این صفحه، طرحواره مجموعه داده برای دادههای خروجی Crashlytics و دادههای جلسات Firebase در BigQuery را ارائه میدهد.
فایربیس برای دادههای اکسپورت شده شما، مجموعه دادههای جدیدی در BigQuery ایجاد میکند:
مجموعه دادههای جلسات فایربیس (اگر دادههای جلسات برای صادرات فعال باشد)
مجموعه داده Crashlytics
دادههای Crashlytics به یک مجموعه داده BigQuery به نام firebase_crashlytics منتقل میشوند. این مجموعه داده کل پروژه شما را پوشش میدهد، حتی اگر چندین برنامه داشته باشد.
جداول
به طور پیشفرض، فایربیس برای هر برنامه در پروژه شما که به BigQuery لینک شده است، جداول جداگانهای را در مجموعه دادههای Crashlytics ایجاد میکند.
جداول بر اساس شناسه برنامه (با تبدیل نقطه به زیرخط) نامگذاری شده و پلتفرم برنامه ( _IOS یا _ANDROID ) به آنها اضافه میشود. برای مثال، دادههای یک برنامه اندروید با نام بسته com.google.test در جدولی با نام com_google_test_ANDROID قرار میگیرند.
اگر ارسال استریم به BigQuery فعال باشد، دادهها به صورت بلادرنگ به جدولی که با
_REALTIME(مثلاًcom_google_test_ANDROID_REALTIME) اضافه شده است، استریم میشوند.هر ردیف در یک جدول، نشاندهندهی رویدادی است که در برنامه رخ داده است، از جمله خرابیها، خطاهای غیرمهلک و ANRها.
این جداول علاوه بر کلیدهای سفارشی Crashlytics که توسط شما در برنامهتان ( iOS+ | Android | Flutter | Unity ) تعریف شدهاند، حاوی مجموعهای استاندارد از دادههای Crashlytics نیز هستند.
ردیفها
هر سطر در یک جدول نشان دهنده خطایی است که برنامه با آن مواجه شده است.
ستونها
ستونهای یک جدول برای خرابیها، خطاهای غیرمهلک و ANRها یکسان هستند.
اگر ارسال جریانی به BigQuery فعال باشد، جدول بیدرنگ ستونهای مشابه جدول دستهای را خواهد داشت.
ممکن است ستونهایی در ردیفها داشته باشید که نشاندهنده رویدادهایی باشند که ردپای پشتهای ندارند.
ستونهای جدول مربوط به دادههای خروجی Crashlytics به شرح زیر است:
| نام فیلد | نوع داده | توضیحات |
|---|---|---|
app_orientation | رشته | برای مثال، PORTRAIT ، LANDSCAPE ، FACE_UP ، FACE_DOWN و غیره. |
application | رکورد | برنامهای که این رویداد را ایجاد کرده است |
application.build_version | رشته | نسخه ساخت برنامه |
application.display_version | رشته | |
blame_frame | رکورد | فریمی که به عنوان علت اصلی خرابی یا خطا شناسایی شده است |
blame_frame.address | INT64 | آدرس موجود در تصویر دودویی که حاوی کد است برای فریمهای جاوا تنظیم نشده است |
blame_frame.blamed | بولی | اینکه آیا Crashlytics تشخیص داده است که این فریم علت خرابی یا خطا است یا خیر |
blame_frame.file | رشته | نام فایل فریم |
blame_frame.library | رشته | نام نمایشی کتابخانهای که شامل قاب است |
blame_frame.line | INT64 | شماره خط فایل فریم |
blame_frame.offset | INT64 | بایت آفست به تصویر دودویی که حاوی کد است برای استثنائات جاوا تنظیم نشده است |
blame_frame.owner | رشته | برای مثال، DEVELOPER ، VENDOR ، RUNTIME ، PLATFORM یا SYSTEM |
blame_frame.symbol | رشته | نماد هیدراته یا نماد خام در صورت عدم هیدراته بودن |
breadcrumbs | رکورد تکرار شده | در صورت فعال بودن، مسیریابهای Google Analytics با مهر زمانی |
breadcrumbs.name | رشته | نام مرتبط با بردکرامب |
breadcrumbs.params | رکورد تکرار شده | پارامترهای مرتبط با breadcrumb |
breadcrumbs.params.key | رشته | یک کلید پارامتر مرتبط با breadcrumb |
breadcrumbs.params.value | رشته | مقدار پارامتر مرتبط با breadcrumb |
breadcrumbs.timestamp | مهر زمانی | مهر زمانی مرتبط با breadcrumb |
bundle_identifier | رشته | شناسه منحصر به فرد برای برنامه همانطور که در پروژه Firebase ثبت شده است (برای مثال،com.google.gmail )برای برنامههای پلتفرم اپل، این شناسه بسته (bundle ID) برنامه است. برای برنامههای اندروید، این نام بستهی برنامه است. |
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 | رکورد تکرار شده | فریمهای stacktrace |
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 | مهر زمانی | وقتی رویداد رخ داد |
exceptions | رکورد تکرار شده | (فقط اندروید) استثناهایی که در طول این رویداد رخ دادهاند. استثناهای تو در تو به ترتیب زمانی معکوس نمایش داده میشوند، به این معنی که آخرین رکورد، اولین استثنای رخ داده است. |
exceptions.blamed | بولی | اگر Crashlytics تشخیص دهد که استثنا مسئول خطا یا خرابی است، صحیح است. |
exceptions.exception_message | رشته | پیامی مرتبط با استثنا |
exceptions.frames | رکورد تکرار شده | فریمهای مرتبط با استثنا |
exceptions.frames.address | INT64 | آدرس موجود در تصویر دودویی که حاوی کد است برای فریمهای جاوا تنظیم نشده است |
exceptions.frames.blamed | بولی | اینکه آیا Crashlytics تشخیص داده است که این فریم علت خرابی یا خطا است یا خیر |
exceptions.frames.file | رشته | نام فایل فریم |
exceptions.frames.library | رشته | نام نمایشی کتابخانهای که شامل قاب است |
exceptions.frames.line | INT64 | شماره خط فایل فریم |
exceptions.frames.offset | INT64 | بایت آفست به تصویر دودویی که حاوی کد است برای استثنائات جاوا تنظیم نشده است |
exceptions.frames.owner | رشته | برای مثال، DEVELOPER ، VENDOR ، RUNTIME ، PLATFORM یا SYSTEM |
exceptions.frames.symbol | رشته | نماد هیدراته یا نماد خام در صورت عدم هیدراته بودن |
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 | مهر زمانی | وقتی لاگ ساخته شد |
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 | بولی | اگر این یک ساخت اشکالزدایی است |
unity_metadata.graphics_copy_texture_support | رشته | پشتیبانی از کپی کردن بافت گرافیکی همانطور که در 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 | حافظه گرافیکی بر حسب مگابایت |
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 | رشته | DPI صفحه نمایش به عنوان یک عدد ممیز شناور |
unity_metadata.screen_size_px | رشته | اندازه صفحه نمایش بر حسب پیکسل، با فرمت عرض × ارتفاع |
unity_metadata.system_memory_size_mb | INT64 | اندازه حافظه سیستم بر حسب مگابایت |
unity_metadata.unity_version | رشته | نسخه یونیتی که روی این دستگاه اجرا میشود |
user | رکورد | (اختیاری) اطلاعات جمعآوریشده درباره کاربر برنامه |
user.email | رشته | (اختیاری) آدرس ایمیل کاربر |
user.id | رشته | (اختیاری) یک شناسه مخصوص برنامه که به کاربر مرتبط است |
user.name | رشته | (اختیاری) نام کاربر |
variant_id | رشته | نوع مشکل مرتبط با این رویداد توجه داشته باشید که همه رویدادها دارای یک نوع مشکل مرتبط نیستند. |
مجموعه دادههای جلسات فایربیس
دادههای جلسات Firebase به یک مجموعه داده BigQuery به نام firebase_sessions صادر میشوند. این مجموعه داده کل پروژه شما را پوشش میدهد، حتی اگر چندین برنامه داشته باشد.
جداول
به طور پیشفرض، فایربیس برای هر برنامه در پروژه شما که به BigQuery لینک شده است، جداول جداگانهای را در مجموعه دادههای جلسات فایربیس ایجاد میکند.
جداول بر اساس شناسه برنامه (با تبدیل نقطه به زیرخط) نامگذاری شده و پلتفرم برنامه ( _IOS یا _ANDROID ) به آنها اضافه میشود. برای مثال، دادههای یک برنامه اندروید با نام بسته com.google.test در جدولی با نام com_google_test_ANDROID قرار میگیرند.
ردیفها
هر ردیف در یک جدول نشان دهنده یک رویداد جلسه است که اتفاق افتاده است.
ستونها
اگر ارسال جریانی به BigQuery فعال باشد، جدول بیدرنگ ستونهای مشابه جدول دستهای را خواهد داشت.
ستونهای درون جدول مربوط به دادههای جلسات خروجی فایربیس به شرح زیر است:
| نام فیلد | نوع داده | توضیحات |
|---|---|---|
instance_id | رشته | شناسه نصب Firebase (FID) از دستگاه. یک برنامه منحصر به فرد + نصب دستگاه را شناسایی میکند. |
session_id | رشته | شناسه منحصر به فرد این جلسه |
first_session_id | رشته | اولین شناسهی یک سری از جلساتی که این جلسه از زمان شروع سرد برنامه در آن قرار دارد. این میتواند برای گروهبندی تمام جلساتی که از زمان شروع سرد رخ دادهاند، استفاده شود. اگر این جلسه، اولین جلسه باشد، این فیلد همان session_id خواهد بود. |
session_index | عدد صحیح | ترتیب این جلسه پس از شروع سرد برنامه ایجاد شده است. برای اولین جلسه پس از شروع سرد، این مقدار 0 خواهد بود. هر بار که یک جلسه بدون شروع سرد ایجاد شود (مثلاً پس از 30 دقیقه عدم فعالیت)، این شاخص افزایش مییابد. |
event_type | رشته | نوع رویدادی که در جلسه اتفاق افتاده است (برای مثال، SESSION_START ) |
event_timestamp | مهر زمانی | زمان وقوع رویداد |
received_timestamp | مهر زمانی | زمان دریافت رویداد توسط سرور از دستگاه |
performance_data_collection_enabled | بولی | آیا جمعآوری دادههای Firebase Performance Monitoring SDK در زمان جلسه فعال بوده است یا خیر |
crashlytics_data_collection_enabled | بولی | اینکه آیا جمعآوری دادههای Firebase Crashlytics SDK در زمان جلسه فعال بوده است یا خیر |
application | رکورد | برنامه را شرح میدهد |
application.build_version | رشته | نسخه ساخت برنامه (برای مثال، 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 ) |