Crashlytics BigQuery Export schema

This article explains the format and schema of the Firebase Crashlytics data that is exported to BigQuery.

Datasets

Firebase Crashlytics creates a new dataset in BigQuery for Crashlytics data. The dataset covers your entire project, even if it has multiple apps, but does not include Analytics exports.

Tables

Firebase Crashltyics creates a table in the dataset for each app in your project, unless you've opted out of exporting data for that app. Firebase names the tables based on the app's bundle identifier, with periods converted to underscores, and a platform name appended to the end. For example data for an app with the ID com.google.test would be in a table named com_google_test_ANDROID.

Rows

Each row in a table represents an event that occurred in the app, including both fatal and non-fatal errors.

Columns

The columns within the export are listed below.

Without stack traces

Columns present in rows that represent events without stack traces.

Field Name Data Type Description
platform STRING Android or iOS
bundle_identifier STRING The bundle ID, e.g. com.google.gmail
event_id STRING A unique ID for the event
is_fatal BOOLEAN Whether the app crashed
issue_id STRING An issue associated with the event
event_timestamp TIMESTAMP When the event occurred
device RECORD The device the event occurred on
device.manufacturer STRING The device manufacturer
device.model STRING The device model
device.architecture STRING X86_32, X86_64, ARMV7, ARM64, ARMV7S, or ARMV7K
memory RECORD The device's memory status
memory.used INT64 Bytes of memory used
memory.free INT65 Bytes of memory remaining
storage RECORD The device's persistent storage
storage.used INT64 Bytes of storage used
storage.free INT64 Bytes of storage remaining
operating_system RECORD The device's OS details
operating_system.display_version STRING The OS version
operating_system.name STRING The OS name
operating_system.modification_state STRING MODIFIED or UNMODIFIED, i.e. whether the device has been jailbroken/rooted
application RECORD The app that generated the event
application.build_version STRING The app's build version
application.display_version STRING  
user RECORD Optional: Info collected on the app's user
user.name STRING Optional: The user's name
user.email STRING Optional: The user's email address
user.id STRING Optional: An app-specific ID associated with the user
custom_keys REPEATED RECORD Developer-defined key-value pairs
custom_keys.key STRING A developer-defined key
custom_keys.value STRING A developer-defined value
installation_uuid STRING An ID that identifies a unique app & device installation
crashlytics_sdk_versions STRING The Crashlytics SDK version that generated the event
app_orientation STRING PORTRAIT, LANDSCAPE, FACE_UP, or FACE_DOWN
device_orientation STRING PORTRAIT, LANDSCAPE, FACE_UP, or FACE_DOWN
process_state STRING BACKGROUND or FOREGROUND
logs REPEATED RECORD Timestamped log messages generated by the Crashlytics logger, if enabled
logs.timestamp TIMESTAMP When the log was made
logs.message STRING The logged message
breadcrumbs REPEATED RECORD Timestamped Google Analytics breadcrumbs, if enabled
breadcrumbs.timestamp TIMESTAMP The timestamp associated with the breadcrumb
breadcrumbs.name STRING The name associated with the breadcrumb
breadcrumbs.params REPEATED RECORD Parameters associated with the breadcrumb
breadcrumbs.params.key STRING A parameter key associated with the breadcrumb
breadcrumbs.params.value STRING A parameter value associated with the breadcrumb
blame_frame RECORD The frame identified as the root cause of the crash or error
blame_frame.line INT64 The line number of the file of the frame
blame_frame.file STRING The name of the frame file
blame_frame.symbol STRING The hydrated symbol, or raw symbol if it's unhydreatable
blame_frame.offset INT64 The byte offset into the binary image that contains the code, unset for Java exceptions
blame_frame.address INT64 The address in the binary image which contains the code, unset for Java frames
blame_frame.library STRING The display name of the library that includes the frame
blame_frame.owner STRING DEVELOPER, VENDOR, RUNTIME, PLATFORM, or SYSTEM
blame_frame.blamed BOOLEAN Whether Crashlytics's analysis determined that this frame is the cause of the crash or error
exceptions REPEATED RECORD Android only: Exceptions that occurred during this event. Nested exceptions are presented in reverse chronological order (read: the last record is the first exception thrown)
exceptions.type STRING The exception type, e.g. java.lang.IllegalStateException
exceptions.exception_message STRING A message associated with the exception
exceptions.nested BOOLEAN True for all but the last-thrown exception (i.e. the first record)
exceptions.title STRING The title of the thread
exceptions.subtitle STRING The subtitle of the thread
exceptions.blamed BOOLEAN True if Crashlytics determines the exception is responsible for the error or crash
exceptions.frames REPEATED RECORD The frames associated with the exception
exceptions.frames.line INT64 The line number of the file of the frame
exceptions.frames.file STRING The name of the frame file
exceptions.frames.symbol STRING The hydrated symbol, or raw symbol if it's unhydreatable
exceptions.frames.offset INT64 The byte offset into the binary image that contains the code, unset for Java exceptions
exceptions.frames.address INT64 The address in the binary image which contains the code, unset for Java frames
exceptions.frames.library STRING The display name of the library that includes the frame
exceptions.frames.owner STRING DEVELOPER, VENDOR, RUNTIME, PLATFORM, or SYSTEM
exceptions.frames.blamed BOOLEAN Whether Crashlytics's analysis determined that this frame is the cause of the crash or error
error REPEATED RECORD iOS only: non-fatal errors
error.queue_name STRING The queue the thread was running on
error.code INT64 Error code associated with the app's custom logged NSError
error.title STRING The title of the thread
error.subtitle STRING The subtitle of the thread
error.blamed BOOLEAN Whether Crashlytics's analysis determined that this frame is the cause of the error
error.frames REPEATED RECORD The frames of the stacktrace
error.frames.line INT64 The line number of the file of the frame
error.frames.file STRING The name of the frame file
error.frames.symbol STRING The hydrated symbol, or raw symbol if it's unhydreatable
error.frames.offset INT64 The byte offset into the binary image that contains the code
error.frames.address INT64 The address in the binary image which contains the code
error.frames.library STRING The display name of the library that includes the frame
error.frames.owner STRING DEVELOPER, VENDOR, RUNTIME, PLATFORM, or SYSTEM
error.frames.blamed BOOLEAN Whether Crashlytics's analysis determined that this frame is the cause of the error
threads REPEATED RECORD Threads present at the time of the event
threads.crashed BOOLEAN Whether the thread chrashed
threads.thread_name STRING The thread's name
threads.queue_name STRING iOS only: The queue the thread was running on
threads.signal_name STRING The name of the signal that caused the app to crash, only present on crashed native threads
threads.signal_code STRING The code of the signal that caused the app to crash, only present on crashed native threads
threads.crash_address INT64 The address of the signal that caused the application to crash, only present on crashed native threads
threads.code INT64 iOS only: Error code of the application's custom logged NSError
threads.title STRING The title of the thread
threads.subtitle STRING The subtitle of the thread
threads.blamed BOOLEAN Whether Crashlytics's analysis determined that this frame is the cause of the crash or error
threads.frames REPEATED RECORD The frames of the thread
threads.frames.line INT64 The line number of the file of the frame
threads.frames.file STRING The name of the frame file
threads.frames.symbol STRING The hydrated symbol, or raw symbol if it's unhydreatable
threads.frames.offset INT64 The byte offset into the binary image that contains the code
threads.frames.address INT64 The address in the binary image which contains the code
threads.frames.library STRING The display name of the library that includes the frame
threads.frames.owner STRING DEVELOPER, VENDOR, RUNTIME, PLATFORM, or SYSTEM
threads.frames.blamed BOOLEAN Whether Crashlytics's analysis determined that this frame is the cause of the error
Was this helpful?
How can we improve it?