Event Properties
Learn more about searchable event properties.
Events are the underlying event data captured using Sentry SDKs — that is, errors and transactions.
You can search by event properties in the following sentry.io pages:
- Discover - in the query builder (depending on the dataset selection)
- Dashboards - within the widget builder (depending on dataset selection)
- Performance - only in transaction summaries
- Issues - as indicated in the list below
- Alerts - when creating a metric alert
Please note that in Alerts only a limited number of properties are available for filtering transaction events.
When searching on event properties within the Issues page, the search will return any issue that has one or more events matching the supplied event properties filter.
Below is a list of keys and tokens that can be used in the event search.
Returns results with the Apdex score that you entered. Values must be between 0
and 1
. Higher apdex values indicate higher user satisfaction.
- Type: number
Indicates if the app is in the foreground or background. Values are 1/0
or true/false
- Type: boolean
Returns results with matching averages for the field selected. The field can be either a number or a duration. Typically used with a comparison operator.
- Type: matches field
Returns results with a matching count that satisfy the condition passed to the parameters of the function.
- Type: number
Returns results with a matching count of unique instances of the field that fall above the miserable threshold.
- Type: number
Returns results with a matching count of the unique instances of the field entered.
- Type: number
Returns results with a matching count that meet a Web Vitals quality threshold (poor
, meh
, good
, or any
).
- Type: number
Returns results with a matching count. (Same as timesSeen
in issue search.) Doesn't take a parameter.
- Type: number
Deprecated
- Type: string
CPU architecture
- Type: string
If the device has a battery, this can be a floating point value defining the battery level (in the range 0-100).
- Type: string
Brand of the device
- Type: string
Whether the device was charging or not. Not a boolean.
- Type: string
The estimated performance class of the client device, estimated high
, medium
, or low
. For more details, see the Device Classification section below.
- Type: string
Family of the device. Typically, the common part of a model name across generations. For example, iPhone, Samsung Galaxy.
- Type: string
Deprecated
- Type: string
Details of the device
- Type: string
Whether the device was online or not. A string that is either True
or False
.
- Type: string
Describes the orientation of the device and can be either portrait
or landscape
.
- Type: string
Device screen density in pixels.
- Type: string
Number of dots per inch of the device screen.
- Type: string
Device screen height in pixels.
- Type: string
Device screen width in pixels.
- Type: string
Indicates whether this device is a simulator or a real device. A string that is either True
or False
.
- Type: string
Deprecated
- Type: UUID
Distinguishes build or deployment variants of the same release of an application. For example, the dist can be the build number of an Xcode build or the version code of an Android build.
- Type: string
Refers to your code deployment naming convention. For example, development, testing, staging and so on. Learn more.In some pages of sentry.io, you filter on environment using a dropdown.
- Type: string
Returns results with a matching events-per-minute count. Doesn't take a parameter.
- Type: number
Returns results with a matching events-per-second count. Doesn't take a parameter.
- Type: number
Indicates whether the user has handled the exception — for example, using try...catch. An error is considered handled if all stack traces handle the error. Values are 1/0
or true/false
- Type: boolean
Indicates if the error occurred on the main thread. Values are 1/0
or true/false
- Type: boolean
An object describing the mechanism that created this exception.
- Type: array
The type of exception. For example, ValueError
.
- Type: array
The inversion of error.handled
.
- Type: boolean
Original value of a field that causes or exhibits the error.
- Type: array
Type of the event (transaction, error, default, csp, and so on). The transaction type is unavailable in Issues.
- Type: string
Returns results with a matching count of events with a transaction.status
value that's in the list of failing ones. Values can be: ok
, cancelled
, unknown
. Doesn't take a parameter.
- Type: number
Returns results with a matching rate of failing transactions — that is, failure_count()
divided by the count()
(total count). Doesn't take a parameter.
- Type: number
Full name of the city
- Type: string
ISO 3166-1 country code
- Type: string
Full name of the country
- Type: string
Returns results with the defined tag or field, but not the value of that tag or field. For example, entering has:user
would find events with the user
tag.
- Type: error
HTTP method of the request that created the event.
- Type: string
Identifies the web page from which the resource was requested.
- Type: string
HTTP status code, which indicates whether a response was successful. For example, 200
or 404
.
- Type: string
Full URL of the request that caused the error, but without any parameters
- Type: string
The event id. In Issues, use only the ID value without the id
key.
- Type: UUID
The short issue code, for example SENTRY-ABC
.
- Type: string
Datetime when the event was last seen. Equivalent to max(timestamp)
. Doesn't take a parameter.
- Type: datetime
Severity of the event (such as: fatal, error, warning). Always set to info for transactions.
- Type: string
Location where the error happened.
- Type: string
Returns results with a matching maximum value for the field entered.
- Type: matches field
A cold start refers to when the app launches for the first time after a reboot or update. The app is not in memory and no process exists.
- Type: duration
A warm start refers to when the app has already launched at least once and is partially in memory. For instance, the user backs out of your app, but then re-launches it. The process may have continued to run, but the app must recreate the activity from scratch.
- Type: duration
Cumulative Layout Shift (CLS) is the sum of individual layout shift scores for every unexpected element shift during the rendering process.
- Type: number
First Contentful Paint (FCP) measures the time for the first content to render in the viewport.
- Type: duration
First Input Delay (FID) measures the response time when the user tries to interact with the viewport.
- Type: duration
First Paint (FP) measures the amount of time the first pixel takes to appear in the viewport, rendering any visual change from what was previously displayed.
- Type: duration
Slow and frozen frames measure the responsiveness of your app.
- Type: number
Returns results with a matching rate of frozen frames. That is, measurements.frames_frozen
divided by the measurements.frames_total
.
- Type: number
Slow and frozen frames measure the responsiveness of your app.
- Type: number
Returns results with a matching rate of slow frames. That is, measurements.frames_slow
divided by the measurements.frames_total
.
- Type: number
Returns results with a matching total number of frames.
- Type: number
Largest Contentful Paint (LCP) measures the render time for the largest content to appear in the viewport.
- Type: duration
A stall is when the JavaScript event loop takes longer than expected to complete. Only applies to React Native.
- Type: number
The longest stall time is the time, in milliseconds, of the longest event loop stall. Only applies to React Native.
- Type: duration
Stall percentage is equal to the stall_total_time
divided by the transaction.duration
. Only applies to React Native.
- Type: number
The total stall time is the total combined time, in milliseconds, of all stalls. Only applies to React Native.
- Type: duration
Time To First Byte (TTFB) measures the time that it takes for a user's browser to receive the first byte of page content.
- Type: duration
The time between start of the request and start of the response (see diagram).
- Type: duration
Returns errors with the matching message or transactions with matching transaction name. Also matches on any message containing the supplied value.Searching message:undefined
will match an event with a message of undefined is not an object
. Raw text searches (searches without the message
key) are also checked against this field. For errors, the message can be a concatenatenation of elements, so searches might include unexpected results.
- Type: string
Returns results with a matching minimum value for the field entered.
- Type: matches field
The internal build revision of the operating system.
- Type: string
The independent kernel version string. This is typically the entire output of the uname
syscall.
- Type: string
The Linux distribution name. This maps to ID
in /etc/os-release/
.
- Type: string
The Linux distribution version. This maps to VERSION_ID
in /etc/os-release/
.
- Type: string
Returns results with an approximate percentile of the field to the level. The level can be between 0
and 1
. For example, if you wanted to find the 50th percentile of transaction durations, you would enter percentile(transaction.duration, 0.5)
.
- Type: number
Name of the platform. This defaults to other
and is only a property for platforms from this list: as3
, c
, cfml
, cocoa
, csharp
, elixir
, go
, groovy
, haskell
, java
, javascript
, native
, node
, objc
, other
, perl
, php
, python
, ruby
- Type: string
The name of the project. In some pages of sentry.io, you can also filter on project using a dropdown.
- Type: string
The id of the project.
- Type: number
Returns results with an approximate percentile of the field. Replace "XY" with 50, 75, 95, 99, or 100. For example, if you wanted to find the 50th percentile of transaction durations, you would enter p50(transaction.duration)
.
- Type: number
A release is a version of your code deployed to an environment. You can create a token with an exact match of the version of a release, or release:latest
to pick the most recent release. Learn more.
- Type: string
The number that identifies an iteration of your app. For example, CFBundleVersion
on iOS or versionCode
on Android. Learn more.
- Type: number
The unique identifier of the project/app. For example, CFBundleIdentifier
on iOS or packageName
on Android. Learn more.
- Type: string
The usage your release is seeing relative to other releases. Values can be adopted
, low
, or replaced
. Learn more.
- Type: string
A shorter version of the name; name without the package or short version of the hash. Learn more.
- Type: string
Name of the Sentry SDK that sent the event.
- Type: string
Version of the Sentry SDK that sent the event.
- Type: string
Cumulative browser time for a transaction, based on the span operations.
- Type: duration
Cumulative db time for a transaction, based on span operations.
- Type: duration
Cumulative http time for a transaction, based on span operations.
- Type: duration
Cumulative resource time for a transaction, based on span operations.
- Type: duration
Cumulative UI time for a transaction, based on span operations.
- Type: duration
The absolute path to the source file. In events, this is an array; in issues, this is a single value.
- Type: array, single value
Column number of the call, starting at 1.
- Type: array
The path to the source file relative to the project root directory. In events, this is an array. In issues, this is a single value.
- Type: array, single value
Name of the function being called. In events, this is an array. In issues, this is a single value.
- Type: array, single value
Indicates whether a frame is related to the execution of the relevant code in the stack trace. For example, the frames that might power the framework’s web server of your app are probably not relevant. However, calls to the framework’s library once you start handling code likely are relevant. Values can be 1
(true) or 0
(false).
- Type: array
Line number of the call, starting at 1.
- Type: array
Platform-specific module path. For example, sentry.interfaces.Stacktrace
. In events, this is an array. In issues, this is a single value.
- Type: array, single value
The "package" the frame was contained in. Depending on the platform, this can be different things. For C#, it can be the name of the assembly. For native code, it can be the path of the dynamic library or something else. In events, this is an array. In issues, this is a single value.
- Type: array, single value
Returns results with a matching total value for the the field entered.
- Type: matches field
The finish timestamp of the transaction. Returns events with matching datetime.
- Type: datetime
Timestamp rounded down to the nearest day.
- Type: datetime
Timestamp rounded down to the nearest hour.
- Type: datetime
Title of the error or the transaction name.
- Type: string
A trace represents the record of the entire operation you want to measure or track — like page load, searched using the UUID generated by Sentry’s SDK.
- Type: UUID
Span ID of the parent to the current transaction. This is null if the transaction is root.
- Type: UUID
Span ID of the root span of the root transaction in the event.
- Type: UUID
For transactions, the name of the transaction. For errors, the name of the associated transaction.
- Type: string
Duration, in milliseconds, of the transaction.
- Type: duration
Short code identifying the type of operation the span is measuring.
- Type: string
Describes the status of the span/transaction. Check out our Transaction Payloads documentation for all possible statuses.
- Type: string
- Type: string
Returns transactions with the defined user misery value. User Misery is a user-weighted performance metric that counts the number of unique users who were frustrated; "frustration" is measured as a response time four times the satisfactory response time threshold (in milliseconds). It highlights transactions that have the highest impact on users.
- Type: number
In order, the first available user field available: email, then username, ID, and then IP address.
- Type: string
An alternative, or addition, to the username. Sentry is aware of email addresses and can therefore display things such as Gravatars and unlock messaging capabilities.
- Type: string
Application-specific internal identifier for the user.
- Type: string
User's IP address. Sentry uses the IP address as a unique identifier for unauthenticated users.
- Type: string
Username, which is typically a better label than the user.id
.
- Type: string
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").