На этой странице представлена схема набора данных для экспортированных данных 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 | ОТМЕТКА ВРЕМЕНИ | Временная метка, связанная с хлебными крошками. |
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 | НИТЬ | Символ увлажненного состояния или символ необработанного вещества, если оно не увлажаемое. |
error.queue_name | НИТЬ | Очередь, в которой выполнялся поток. |
error.subtitle | НИТЬ | Подзаголовок темы |
error.title | НИТЬ | Название темы |
event_id | НИТЬ | Уникальный идентификатор мероприятия |
event_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 for all but the last-thrown exception (meaning the first record) |
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 | НИТЬ | Whether the device has been modified (for example, a jailbroken app is MODIFIED and a rooted app is UNMODIFIED ) |
operating_system.name | НИТЬ | Название операционной системы на устройстве |
operating_system.type | НИТЬ | (Apple apps only) The type of OS running on the device (for example, IOS , MACOS , etc.) |
platform | НИТЬ | Платформа приложения, зарегистрированная в проекте Firebase (допустимые значения: IOS или ANDROID ). |
process_state | НИТЬ | BACKGROUND или FOREGROUND |
storage | ЗАПИСЫВАТЬ | Постоянное хранилище устройства |
storage.free | INT64 | Осталось байтов памяти |
storage.used | INT64 | Использовано байтов памяти |
threads | ПОВТОРНАЯ ЗАПИСЬ | Темы, существовавшие на момент события. |
threads.blamed | БУЛЕВОЕ | Whether Crashlytics determined that this frame is the cause of the crash or error |
threads.code | INT64 | (Только для приложений Apple) Код ошибки, регистрируемый в пользовательском журнале NSError приложения. |
threads.crash_address | INT64 | Адрес сигнала, вызвавшего сбой приложения; присутствует только в потоках, завершившихся с ошибкой. |
threads.crashed | БУЛЕВОЕ | Произошёл ли сбой в потоке? |
threads.frames | ПОВТОРНАЯ ЗАПИСЬ | Рамки нити |
threads.frames.address | INT64 | Адрес в двоичном образе, содержащий код. |
threads.frames.blamed | БУЛЕВОЕ | Whether Crashlytics determined that this frame is the cause of the error |
threads.frames.file | НИТЬ | Имя файла кадра |
threads.frames.library | НИТЬ | The display name of the library that includes the frame |
threads.frames.line | INT64 | Номер строки файла кадра |
threads.frames.offset | INT64 | The byte offset into the binary image that contains the code |
threads.frames.owner | НИТЬ | For example, DEVELOPER , VENDOR , RUNTIME , PLATFORM , or SYSTEM |
threads.frames.symbol | НИТЬ | The hydrated symbol, or raw symbol if it's unhydreatable |
threads.queue_name | НИТЬ | (Apple apps only) The queue the thread was running on |
threads.signal_code | НИТЬ | The code of the signal that caused the app to crash; only present on crashed native threads |
threads.signal_name | НИТЬ | The name of the signal that caused the app to crash, only present on crashed native threads |
threads.subtitle | НИТЬ | Подзаголовок темы |
threads.thread_name | НИТЬ | Название темы |
threads.title | НИТЬ | Название темы |
unity_metadata.debug_build | БУЛЕВОЕ | Если это отладочная сборка |
unity_metadata.graphics_copy_texture_support | НИТЬ | Support for copying graphics texture as defined in the 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 | The identifier of the graphics processor's vendor |
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 | НИТЬ | The size of the screen in pixels, formatted as width x height |
unity_metadata.system_memory_size_mb | INT64 | Размер системной памяти в Мб |
unity_metadata.unity_version | НИТЬ | Версия Unity, установленная на этом устройстве. |
user | ЗАПИСЫВАТЬ | (Необязательно) Информация, собираемая о пользователе приложения. |
user.email | НИТЬ | (Необязательно) Адрес электронной почты пользователя |
user.id | НИТЬ | (Optional) An app-specific ID associated with the user |
user.name | НИТЬ | (Необязательно) Имя пользователя |
variant_id | НИТЬ | Вариант выпуска, связанный с этим событием. Note that not all events have an associated issue variant. |
Набор данных сессий Firebase
Firebase sessions data is exported into a BigQuery dataset named firebase_sessions . The dataset covers your entire project, even if it has multiple apps.
Таблицы
By default, Firebase creates individual tables inside the Firebase sessions dataset for each app in your project that's linked to BigQuery .
Таблицы именуются на основе идентификатора приложения (точки заменяются подчеркиваниями) и дополняются названием платформы приложения ( _IOS или _ANDROID ). Например, данные для приложения Android с именем пакета com.google.test будут находиться в таблице с именем com_google_test_ANDROID .
Ряды
Each row in a table represents a session event that happened.
Колонки
If streaming export to BigQuery is enabled, then the realtime table will have the same columns as the batch table.
Here are the columns within the table for the exported Firebase sessions data:
| Название поля | Тип данных | Описание |
|---|---|---|
instance_id | НИТЬ | The Firebase installation ID (FID) from the device. Identifies a unique app + device installation |
session_id | НИТЬ | Уникальный идентификатор этой сессии |
first_session_id | НИТЬ | Первый идентификатор из серии сессий, в которых находится данная сессия с момента холодного запуска приложения. Это поле можно использовать для группировки всех сессий, произошедших после холодного запуска. Если данная сессия является первой, это поле будет совпадать с session_id . |
session_index | ЦЕЛОЕ | Порядок, в котором эта сессия была создана после холодного запуска приложения. Для первой сессии после холодного запуска этот индекс будет равен 0 Индекс будет увеличиваться каждый раз, когда создается сессия без холодного запуска (например, после 30 минут бездействия). |
event_type | НИТЬ | The type of event that happened in the session (for example, SESSION_START ) |
event_timestamp | ОТМЕТКА ВРЕМЕНИ | Время наступления события |
received_timestamp | ОТМЕТКА ВРЕМЕНИ | The time the event was received by the server from the device |
performance_data_collection_enabled | БУЛЕВОЕ | Whether the Firebase Performance Monitoring SDK data collection was enabled at the time of the session |
crashlytics_data_collection_enabled | БУЛЕВОЕ | Whether the Firebase Crashlytics SDK data collection was enabled at the time of the session |
application | ЗАПИСЫВАТЬ | Описывает приложение |
application.build_version | НИТЬ | The build version of the application (for example, 1523456 ) |
application.display_version | НИТЬ | The display version of the application (for example, 4.1.7 ) |
device | ЗАПИСЫВАТЬ | Устройство, на котором произошло событие |
device.model | НИТЬ | Модель устройства |
device.manufacturer | НИТЬ | The manufacturer of the device. For Apple platform apps, this will be NULL . |
operating_system | ЗАПИСЫВАТЬ | Описывает операционную систему устройства. |
operating_system.display_version | НИТЬ | The display version of the operating system (for example, 10.2.1 ) |
operating_system.name | НИТЬ | Название операционной системы |
operating_system.type | НИТЬ | The type of the operating system (for example, IOS ). This field is only set for Apple devices. |
operating_system.device_type | НИТЬ | The type of device (for example, MOBILE , TABLET , TV ) |