На этой странице приведена схема набора данных для экспортированных данных 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 |
STRING | Например, PORTRAIT, LANDSCAPE, FACE_UP, FACE_DOWN и т. д. |
application |
RECORD | Приложение, которое сгенерировало событие. |
application.build_version |
STRING | Версия сборки приложения. |
application.display_version |
STRING | |
blame_frame |
RECORD | Фрейм, который считается основной причиной сбоя или ошибки. |
blame_frame.address |
INT64 | Адрес в двоичном образе, содержащем код Для фреймов Java не задано |
blame_frame.blamed |
BOOLEAN | Определяет, является ли этот фрейм причиной сбоя или ошибки.Crashlytics |
blame_frame.file |
STRING | Название файла кадра. |
blame_frame.library |
STRING | Отображаемое название библиотеки, в которой находится кадр. |
blame_frame.line |
INT64 | Номер строки файла кадра. |
blame_frame.offset |
INT64 | Смещение в байтах в двоичном образе, содержащем код Не задано для исключений Java |
blame_frame.owner |
STRING | Примеры: DEVELOPER, VENDOR, RUNTIME, PLATFORM или SYSTEM. |
blame_frame.symbol |
STRING | Гидратированный символ или необработанный символ, если гидратация невозможна. |
breadcrumbs |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Временные меткиGoogle Analytics, если они включены. |
breadcrumbs.name |
STRING | Название, связанное с навигационной цепочкой. |
breadcrumbs.params |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Параметры, связанные с цепочкой навигации. |
breadcrumbs.params.key |
STRING | Ключ параметра, связанный с цепочкой навигации. |
breadcrumbs.params.value |
STRING | Значение параметра, связанное с навигационной цепочкой. |
breadcrumbs.timestamp |
ВРЕМЕННЫЕ МЕТКИ | Временная метка, связанная с навигационной цепочкой. |
bundle_identifier |
STRING | Уникальный идентификатор приложения, зарегистрированного в проекте Firebase (например, com.google.gmailДля приложений на платформе Apple это идентификатор пакета приложения. Для приложений Android это название пакета приложения. |
crashlytics_sdk_versions |
STRING | Версия SDK Crashlytics, которая сгенерировала событие. |
custom_keys |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Пары "ключ-значение", заданные разработчиком |
custom_keys.key |
STRING | Ключ, заданный разработчиком |
custom_keys.value |
STRING | Значение, заданное разработчиком. |
device |
RECORD | Устройство, на котором произошло событие |
device_orientation |
STRING | Например, PORTRAIT, LANDSCAPE, FACE_UP, FACE_DOWN и т. д. |
device.architecture |
STRING | Примеры: X86_32, X86_64, ARMV7, ARM64, ARMV7S или ARMV7K. |
device.manufacturer |
STRING | Производитель устройства |
device.model |
STRING | модель устройства; |
error |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Некритические ошибки (только для приложений Apple) |
error_type |
STRING | Тип ошибки события (например, FATAL, NON_FATAL, ANR и т. д.). |
error.blamed |
BOOLEAN | Определил ли Crashlytics, что причиной ошибки является этот фрейм |
error.code |
INT64 | Код ошибки, связанный с пользовательским объектом NSError, зарегистрированным приложением. |
error.frames |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Фреймы стека |
error.frames.address |
INT64 | Адрес в двоичном образе, содержащем код. |
error.frames.blamed |
BOOLEAN | Определяет, является ли этот кадр причиной ошибки.Crashlytics |
error.frames.file |
STRING | Название файла кадра. |
error.frames.library |
STRING | Отображаемое название библиотеки, в которой находится кадр. |
error.frames.line |
INT64 | Номер строки файла кадра. |
error.frames.offset |
INT64 | Смещение в байтах в двоичном образе, содержащем код. |
error.frames.owner |
STRING | Примеры: DEVELOPER, VENDOR, RUNTIME, PLATFORM или SYSTEM. |
error.frames.symbol |
STRING | Гидратированный символ или необработанный символ, если гидратация невозможна. |
error.queue_name |
STRING | Очередь, в которой выполнялся поток. |
error.subtitle |
STRING | Подзаголовок цепочки. |
error.title |
STRING | Название цепочки. |
event_id |
STRING | Уникальный идентификатор события. |
event_timestamp |
ВРЕМЕННЫЕ МЕТКИ | Когда произошло событие |
exceptions |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | (Только для Android) Исключения, произошедшие во время этого события. Вложенные исключения представлены в обратном хронологическом порядке, то есть последняя запись – это первое выброшенное исключение. |
exceptions.blamed |
BOOLEAN | True, если Crashlytics определяет, что исключение является причиной ошибки или сбоя. |
exceptions.exception_message |
STRING | Сообщение, связанное с исключением. |
exceptions.frames |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Кадры, связанные с исключением. |
exceptions.frames.address |
INT64 | Адрес в двоичном образе, содержащем код Для фреймов Java не задано |
exceptions.frames.blamed |
BOOLEAN | Определяет, является ли этот фрейм причиной сбоя или ошибки.Crashlytics |
exceptions.frames.file |
STRING | Название файла кадра. |
exceptions.frames.library |
STRING | Отображаемое название библиотеки, в которой находится кадр. |
exceptions.frames.line |
INT64 | Номер строки файла кадра. |
exceptions.frames.offset |
INT64 | Смещение в байтах в двоичном образе, содержащем код Не задано для исключений Java |
exceptions.frames.owner |
STRING | Примеры: DEVELOPER, VENDOR, RUNTIME, PLATFORM или SYSTEM. |
exceptions.frames.symbol |
STRING | Гидратированный символ или необработанный символ, если гидратация невозможна. |
exceptions.nested |
BOOLEAN | Значение True для всех исключений, кроме последнего (то есть для первой записи). |
exceptions.subtitle |
STRING | Подзаголовок цепочки. |
exceptions.title |
STRING | Название цепочки. |
exceptions.type |
STRING | Тип исключения (например, java.lang.IllegalStateException) |
firebase_session_id |
STRING | Автоматически сгенерированный идентификатор сеанса Firebase, сопоставленный с событием из Crashlytics. |
installation_uuid |
STRING | Идентификатор, который позволяет определить уникальную установку приложения на устройстве. |
is_fatal |
BOOLEAN | Сбой приложения |
issue_id |
STRING | Проблема, связанная с событием. |
logs |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Сообщения журнала с временными метками, созданные регистратором Crashlytics, если он включен. |
logs.message |
STRING | Зарегистрированное сообщение |
logs.timestamp |
ВРЕМЕННЫЕ МЕТКИ | Когда был создан журнал. |
memory |
RECORD | Статус памяти устройства |
memory.free |
INT64 | Остаток памяти в байтах |
memory.used |
INT64 | Использованные байты памяти |
operating_system |
RECORD | Сведения об ОС на устройстве. |
operating_system.device_type |
STRING | Тип устройства (например, MOBILE, TABLET, TV и т. д.). Также называется "категория устройств". |
operating_system.display_version |
STRING | Версия ОС на устройстве. |
operating_system.modification_state |
STRING | Было ли устройство изменено (например, незаконно разблокированное устройство отмечено значком MODIFIED, а устройство с root-доступом – значком UNMODIFIED). |
operating_system.name |
STRING | Название ОС на устройстве. |
operating_system.type |
STRING | (только для приложений Apple) Тип ОС, установленной на устройстве (например, IOS, MACOS и т. д.). |
platform |
STRING | Платформа приложения, зарегистрированного в проекте Firebase (допустимые значения: IOS или ANDROID).
|
process_state |
STRING | BACKGROUND или FOREGROUND |
storage |
RECORD | постоянное хранилище устройства; |
storage.free |
INT64 | Оставшееся место в хранилище (в байтах) |
storage.used |
INT64 | Использовано байт хранилища |
threads |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Обсуждения, которые были активны во время события. |
threads.blamed |
BOOLEAN | Определяет, является ли этот фрейм причиной сбоя или ошибки.Crashlytics |
threads.code |
INT64 | (Только для приложений Apple) Код ошибки, зарегистрированный в приложении с помощью объекта NSError. |
threads.crash_address |
INT64 | Адрес сигнала, из-за которого произошел сбой приложения. Присутствует только в потоках, которые были запущены в приложении и завершились со сбоем. |
threads.crashed |
BOOLEAN | Сведения о том, произошел ли сбой в потоке. |
threads.frames |
ПОВТОРЯЮЩАЯСЯ ЗАПИСЬ | Фреймы цепочки |
threads.frames.address |
INT64 | Адрес в двоичном образе, содержащем код. |
threads.frames.blamed |
BOOLEAN | Определяет, является ли этот кадр причиной ошибки.Crashlytics |
threads.frames.file |
STRING | Название файла кадра. |
threads.frames.library |
STRING | Отображаемое название библиотеки, в которой находится кадр. |
threads.frames.line |
INT64 | Номер строки файла кадра. |
threads.frames.offset |
INT64 | Смещение в байтах в двоичном образе, содержащем код. |
threads.frames.owner |
STRING | Примеры: DEVELOPER, VENDOR, RUNTIME, PLATFORM или SYSTEM. |
threads.frames.symbol |
STRING | Гидратированный символ или необработанный символ, если гидратация невозможна. |
threads.queue_name |
STRING | (только для приложений Apple) Очередь, в которой выполнялся поток. |
threads.signal_code |
STRING | Код сигнала, вызвавшего сбой приложения. Присутствует только в случае сбоя собственных потоков. |
threads.signal_name |
STRING | Название сигнала, вызвавшего сбой приложения. Присутствует только в случае сбоя собственных потоков. |
threads.subtitle |
STRING | Подзаголовок цепочки. |
threads.thread_name |
STRING | Название цепочки. |
threads.title |
STRING | Название цепочки. |
unity_metadata.debug_build |
BOOLEAN | Если это отладочная сборка |
unity_metadata.graphics_copy_texture_support |
STRING | Поддержка копирования текстуры графики, как определено в Unity API |
unity_metadata.graphics_device_id |
INT64 | Идентификатор графического устройства. |
unity_metadata.graphics_device_name |
STRING | Название графического устройства. |
unity_metadata.graphics_device_type |
STRING | Тип графического устройства. |
unity_metadata.graphics_device_vendor_id |
INT64 | Идентификатор поставщика графического процессора. |
unity_metadata.graphics_device_vendor |
STRING | Поставщик графического устройства. |
unity_metadata.graphics_device_version |
STRING | Версия графического устройства. |
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 |
STRING | Тип процессора |
unity_metadata.screen_refresh_rate_hz |
INT64 | Частота обновления экрана в Гц. |
unity_metadata.screen_resolution_dpi |
STRING | Разрешение экрана в DPI в виде числа с плавающей запятой. |
unity_metadata.screen_size_px |
STRING | Размер экрана в пикселях в формате "ширина x высота". |
unity_metadata.system_memory_size_mb |
INT64 | Размер памяти системы в МБ. |
unity_metadata.unity_version |
STRING | Версия Unity, установленная на устройстве. |
user |
RECORD | (Необязательно) Информация, собранная о пользователе приложения |
user.email |
STRING | (Необязательно) адрес электронной почты пользователя. |
user.id |
STRING | Необязательное поле. Идентификатор пользователя, относящийся к приложению. |
user.name |
STRING | (Необязательно.) Имя пользователя. |
variant_id |
STRING | Вариант проблемы, связанный с этим событием. Обратите внимание, что не все события связаны с вариантами проблем. |
Набор данных о сеансах Firebase
Данные о сеансах Firebase экспортируются в набор данных BigQuery с названием firebase_sessions. Набор данных охватывает весь проект, даже если в нем несколько приложений.
Таблицы
По умолчанию Firebase создает отдельные таблицы в наборе данных "Сеансы Firebase" для каждого приложения в проекте, связанного с BigQuery.
Названия таблиц формируются на основе идентификатора приложения (точки заменяются на символы подчеркивания) и платформы приложения (_IOS или _ANDROID). Например, данные приложения Android с названием пакета com.google.test будут храниться в таблице com_google_test_ANDROID.
Строки
Каждая строка в таблице представляет событие сеанса.
Столбцы
Если включен потоковый экспорт в BigQuery, то в таблице реального времени будут те же столбцы, что и в пакетной таблице.
Ниже перечислены столбцы таблицы с экспортированными данными о сеансах Firebase.
| Название поля | Тип данных | Описание |
|---|---|---|
instance_id |
STRING | Идентификатор установки Firebase (FID) с устройства. Уникальный идентификатор установки приложения на устройстве. |
session_id |
STRING | Уникальный идентификатор сеанса. |
first_session_id |
STRING |
Первый идентификатор из серии сеансов, к которой относится текущий сеанс, с момента холодного запуска приложения. Это позволяет сгруппировать все сеансы, которые произошли после холодного запуска. Если это первый сеанс, значение этого поля будет таким же, как у поля session_id.
|
session_index |
INTEGER |
Порядковый номер сеанса после холодного запуска приложения. Для первого сеанса после холодного запуска это значение будет равно 0. Индекс увеличивается каждый раз, когда создается сеанс без холодного запуска (например, после 30 минут бездействия).
|
event_type |
STRING |
Тип события, произошедшего в сеансе (например, SESSION_START).
|
event_timestamp |
ВРЕМЕННЫЕ МЕТКИ | Время, когда произошло событие. |
received_timestamp |
ВРЕМЕННЫЕ МЕТКИ | Время, когда сервер получил событие от устройства. |
performance_data_collection_enabled |
BOOLEAN | Был ли включен сбор данных SDK Firebase Performance Monitoring во время сеанса. |
crashlytics_data_collection_enabled |
BOOLEAN | Был ли включен сбор данных SDK Firebase Crashlytics во время сеанса. |
application |
RECORD | Описание приложения |
application.build_version |
STRING |
Версия сборки приложения (например, 1523456).
|
application.display_version |
STRING |
Версия приложения, которая показывается пользователям (например, 4.1.7).
|
device |
RECORD | Устройство, на котором произошло событие. |
device.model |
STRING | Модель устройства. |
device.manufacturer |
STRING |
Производитель устройства. Для приложений на платформе Apple это будет значение NULL.
|
operating_system |
RECORD | Описание ОС устройства |
operating_system.display_version |
STRING |
Версия операционной системы, которая показывается пользователю (например, 10.2.1).
|
operating_system.name |
STRING | Название операционной системы. |
operating_system.type |
STRING |
Тип операционной системы, например IOS. Это поле задается только для устройств Apple.
|
operating_system.device_type |
STRING |
Тип устройства, например MOBILE, TABLET или TV.
|