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
- Dashboards - within the widget builder, depending on dataset selection
- Performance - only in transaction summaries
- Replay - on the Replay page
- 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.
Searchable Properties
Below is a list of keys and tokens that can be used in the event search.
apdex(threshold)
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
app.in_foreground
Indicates if the app is in the foreground or background. Values are 1/0
or true/false
- Type: boolean
avg(field)
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
count_if(column,operator,value)
Returns results with a matching count that satisfy the condition passed to the parameters of the function.
- Type: number
count_miserable(field,threshold)
Returns results with a matching count of unique instances of the field that fall above the miserable threshold.
- Type: number
count_unique(field)
Returns results with a matching count of the unique instances of the field entered.
- Type: number
count_web_vitals(vital,threshold)
Returns results with a matching count that meet a Web Vitals quality threshold (poor
, meh
, good
, or any
).
- Type: number
count()
Returns results with a matching count. (Same as timesSeen
in issue search.) Doesn't take a parameter.
- Type: number
culprit
Deprecated
- Type: string
device.arch
CPU architecture
- Type: string
device.battery_level
If the device has a battery, this can be a floating point value defining the battery level (in the range 0-100).
- Type: string
device.brand
Brand of the device
- Type: string
device.charging
Whether the device was charging or not. Not a boolean.
- Type: string
device.class
The estimated performance class of the client device, estimated high
, medium
, or low
. For more details, see the Device Classification section below.
- Type: string
device.family
Family of the device. Typically, the common part of a model name across generations. For example, iPhone, Samsung Galaxy.
- Type: string
device.locale
Deprecated
- Type: string
device.name
Details of the device
- Type: string
device.online
Whether the device was online or not. A string that is either True
or False
.
- Type: string
device.orientation
Describes the orientation of the device and can be either portrait
or landscape
.
- Type: string
device.screen_density
Device screen density in pixels.
- Type: string
device.screen_dpi
Number of dots per inch of the device screen.
- Type: string
device.screen_height_pixels
Device screen height in pixels.
- Type: string
device.screen_width_pixels
Device screen width in pixels.
- Type: string
device.simulator
Indicates whether this device is a simulator or a real device. A string that is either True
or False
.
- Type: string
device.uuid
Deprecated
- Type: UUID
dist
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
environment
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
epm()
Returns results with a matching events-per-minute count. Doesn't take a parameter.
- Type: number
eps()
Returns results with a matching events-per-second count. Doesn't take a parameter.
- Type: number
error.handled
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
error.main_thread
Indicates if the error occurred on the main thread. Values are 1/0
or true/false
- Type: boolean
error.mechanism
An object describing the mechanism that created this exception.
- Type: array
error.type
The type of exception. For example, ValueError
.
- Type: array
error.unhandled
The inversion of error.handled
.
- Type: boolean
error.value
Original value of a field that causes or exhibits the error.
- Type: array
event.type
Type of the event (transaction, error, default, csp, and so on). The transaction type is unavailable in Issues.
- Type: string
failure_count()
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
failure_rate()
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
geo.city
Full name of the city
- Type: string
geo.country_code
ISO 3166-1 country code
- Type: string
geo.region
Full name of the country
- Type: string
has
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
HTTP method of the request that created the event.
- Type: string
http.referer
Identifies the web page from which the resource was requested.
- Type: string
http.status_code
HTTP status code, which indicates whether a response was successful. For example, 200
or 404
.
- Type: string
http.url
Full URL of the request that caused the error, but without any parameters
- Type: string
id
The event or replay id. In Issues, use only the ID value without the id
key.
- Type: UUID
issue
The short issue code, for example SENTRY-ABC
.
- Type: string
last_seen()
Datetime when the event was last seen. Equivalent to max(timestamp)
. Doesn't take a parameter.
- Type: datetime
level
Severity of the event (such as: fatal, error, warning). Always set to info for transactions.
- Type: string
location
Location where the error happened.
- Type: string
max(numeric field)
Returns results with a matching maximum value for the field entered.
- Type: matches field
measurements.app_start_cold
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
measurements.app_start_warm
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
measurements.cls
Cumulative Layout Shift (CLS) is the sum of individual layout shift scores for every unexpected element shift during the rendering process.
- Type: number
measurements.fcp
First Contentful Paint (FCP) measures the time for the first content to render in the viewport.
- Type: duration
measurements.fid
First Input Delay (FID) measures the response time when the user tries to interact with the viewport.
- Type: duration
measurements.fp
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
measurements.frames_frozen
Slow and frozen frames measure the responsiveness of your app.
- Type: number
measurements.frames_frozen_rate
Returns results with a matching rate of frozen frames. That is, measurements.frames_frozen
divided by the measurements.frames_total
.
- Type: number
measurements.frames_slow
Slow and frozen frames measure the responsiveness of your app.
- Type: number
measurements.frames_slow_rate
Returns results with a matching rate of slow frames. That is, measurements.frames_slow
divided by the measurements.frames_total
.
- Type: number
measurements.frames_total
Returns results with a matching total number of frames.
- Type: number
measurements.lcp
Largest Contentful Paint (LCP) measures the render time for the largest content to appear in the viewport.
- Type: duration
measurements.stall_count
A stall is when the JavaScript event loop takes longer than expected to complete. Only applies to React Native.
- Type: number
measurements.stall_longest_time
The longest stall time is the time, in milliseconds, of the longest event loop stall. Only applies to React Native.
- Type: duration
measurements.stall_percentage
Stall percentage is equal to the stall_total_time
divided by the transaction.duration
. Only applies to React Native.
- Type: number
measurements.stall_total_time
The total stall time is the total combined time, in milliseconds, of all stalls. Only applies to React Native.
- Type: duration
measurements.ttfb
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
measurements.ttfb.requesttime
The time between start of the request and start of the response (see diagram).
- Type: duration
message
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
min(numeric field)
Returns results with a matching minimum value for the field entered.
- Type: matches field
os.build
The internal build revision of the operating system.
- Type: string
os.kernel_version
The independent kernel version string. This is typically the entire output of the uname
syscall.
- Type: string
percentile(field,level)
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
platform
Name of the platform. This is only a metrics property for valid platforms, defaulting to other
.
- Type: string
project
The name of the
- Type: string
project.id
The id of the
- Type: number
pXY(duration field)
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
release
A release is a version of your code deployed to an environment. You can create a
release:latest
to pick the most recent release.- Type: string
release.build
The number that identifies an iteration of your app. For example, CFBundleVersion
on iOS or versionCode
on Android. Learn more.
- Type: number
release.package
The unique identifier of the
CFBundleIdentifier
on iOS or packageName
on Android. Learn more.- Type: string
release.stage
The usage your release is seeing relative to other releases. Values can be adopted
, low
, or replaced
. Learn more.
- Type: string
release.version
A shorter version of the name; name without the package or short version of the hash. Learn more.
- Type: string
sdk.name
Name of the Sentry SDK that sent the event.
- Type: string
sdk.version
Version of the Sentry SDK that sent the event.
- Type: string
spans.browser
Cumulative browser time for a transaction, based on the span operations.
- Type: duration
spans.db
Cumulative db time for a transaction, based on span operations.
- Type: duration
spans.http
Cumulative http time for a transaction, based on span operations.
- Type: duration
spans.resource
Cumulative resource time for a transaction, based on span operations.
- Type: duration
spans.ui
Cumulative UI time for a transaction, based on span operations.
- Type: duration
stack.abs_path
The absolute path to the source file. In events, this is an array; in issues, this is a single value.
- Type: array, single value
stack.colno
Column number of the call, starting at 1.
- Type: array
stack.filename
The path to the source file relative to the
- Type: array, single value
stack.function
Name of the function being called. In events, this is an array. In issues, this is a single value.
- Type: array, single value
stack.in_app
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
stack.lineno
Line number of the call, starting at 1.
- Type: array
stack.module
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
stack.package
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
sum(numeric field)
Returns results with a matching total value for the the field entered.
- Type: matches field
timestamp
The finish timestamp of the transaction. Returns events with matching datetime.
- Type: datetime
timestamp.to_day
Timestamp rounded down to the nearest day.
- Type: datetime
timestamp.to_hour
Timestamp rounded down to the nearest hour.
- Type: datetime
title
Title of the error or the transaction name.
- Type: string
trace
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
trace.parent_span
Span ID of the parent to the current transaction. This is null if the transaction is root.
- Type: UUID
trace.span
Span ID of the root span of the root transaction in the event.
- Type: UUID
transaction
For transactions, the name of the transaction. For errors, the name of the associated transaction.
- Type: string
transaction.duration
Duration, in milliseconds, of the transaction.
- Type: duration
transaction.op
Short code identifying the type of operation the span is measuring.
- Type: string
transaction.status
Describes the status of the span/transaction. Check out our Transaction Payloads documentation for all possible statuses.
- Type: string
unreal.crash_type
- Type: string
user_misery(number)
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
user.display
In order, the first available user field available: email, then username, ID, and then IP address.
- Type: string
user.email
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
user.id
Application-specific internal identifier for the user.
- Type: string
user.ip
User's IP address. Sentry uses the IP address as a unique identifier for unauthenticated users.
- Type: string
user.username
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!) to suggesting an update ("yeah, this would be better").