Expand description
Data structures used by operation inputs/outputs.
Modules§
Structs§
- AppMonitor
A RUM app monitor collects telemetry data from your application and sends that data to RUM. The data includes performance and reliability information such as page load time, client-side errors, and user behavior.
- AppMonitor
Configuration This structure contains much of the configuration data for the app monitor.
- AppMonitor
Details A structure that contains information about the RUM app monitor.
- AppMonitor
Summary A structure that includes some data about app monitors and their settings.
- Batch
Create RumMetric Definitions Error A structure that defines one error caused by a BatchCreateRumMetricsDefinitions operation.
- Batch
Delete RumMetric Definitions Error A structure that defines one error caused by a BatchCreateRumMetricsDefinitions operation.
- Custom
Events A structure that contains information about custom events for this app monitor.
- CwLog
A structure that contains the information about whether the app monitor stores copies of the data that RUM collects in CloudWatch Logs. If it does, this structure also contains the name of the log group.
- Data
Storage A structure that contains information about whether this app monitor stores a copy of the telemetry data that RUM collects using CloudWatch Logs.
- Deobfuscation
Configuration A structure that contains the configuration for how an app monitor can deobfuscate stack traces.
- Java
Script Source Maps A structure that contains the configuration for how an app monitor can unminify JavaScript error stack traces using source maps.
- Metric
Definition A structure that displays the definition of one extended metric that RUM sends to CloudWatch or CloudWatch Evidently. For more information, see Additional metrics that you can send to CloudWatch and CloudWatch Evidently.
- Metric
Definition Request Use this structure to define one extended metric or custom metric that RUM will send to CloudWatch or CloudWatch Evidently. For more information, see Custom metrics and extended metrics that you can send to CloudWatch and CloudWatch Evidently.
This structure is validated differently for extended metrics and custom metrics. For extended metrics that are sent to the
AWS/RUM
namespace, the following validations apply:-
The
Namespace
parameter must be omitted or set toAWS/RUM
. -
Only certain combinations of values for
Name
,ValueKey
, andEventPattern
are valid. In addition to what is displayed in the following list, theEventPattern
can also include information used by theDimensionKeys
field.-
If
Name
isPerformanceNavigationDuration
, thenValueKey
must beevent_details.duration
and theEventPattern
must include{"event_type":\["com.amazon.rum.performance_navigation_event"\]}
-
If
Name
isPerformanceResourceDuration
, thenValueKey
must beevent_details.duration
and theEventPattern
must include{"event_type":\["com.amazon.rum.performance_resource_event"\]}
-
If
Name
isNavigationSatisfiedTransaction
, thenValueKey
must be null and theEventPattern
must include{ "event_type": \["com.amazon.rum.performance_navigation_event"\], "event_details": { "duration": \[{ "numeric": \[">",2000\] }\] } }
-
If
Name
isNavigationToleratedTransaction
, thenValueKey
must be null and theEventPattern
must include{ "event_type": \["com.amazon.rum.performance_navigation_event"\], "event_details": { "duration": \[{ "numeric": \[">=",2000,"<"8000\] }\] } }
-
If
Name
isNavigationFrustratedTransaction
, thenValueKey
must be null and theEventPattern
must include{ "event_type": \["com.amazon.rum.performance_navigation_event"\], "event_details": { "duration": \[{ "numeric": \[">=",8000\] }\] } }
-
If
Name
isWebVitalsCumulativeLayoutShift
, thenValueKey
must beevent_details.value
and theEventPattern
must include{"event_type":\["com.amazon.rum.cumulative_layout_shift_event"\]}
-
If
Name
isWebVitalsFirstInputDelay
, thenValueKey
must beevent_details.value
and theEventPattern
must include{"event_type":\["com.amazon.rum.first_input_delay_event"\]}
-
If
Name
isWebVitalsLargestContentfulPaint
, thenValueKey
must beevent_details.value
and theEventPattern
must include{"event_type":\["com.amazon.rum.largest_contentful_paint_event"\]}
-
If
Name
isJsErrorCount
, thenValueKey
must be null and theEventPattern
must include{"event_type":\["com.amazon.rum.js_error_event"\]}
-
If
Name
isHttpErrorCount
, thenValueKey
must be null and theEventPattern
must include{"event_type":\["com.amazon.rum.http_event"\]}
-
If
Name
isSessionCount
, thenValueKey
must be null and theEventPattern
must include{"event_type":\["com.amazon.rum.session_start_event"\]}
-
If
Name
isPageViewCount
, thenValueKey
must be null and theEventPattern
must include{"event_type":\["com.amazon.rum.page_view_event"\]}
-
If
Name
isHttp4xxCount
, thenValueKey
must be null and theEventPattern
must include{"event_type": \["com.amazon.rum.http_event"\],"event_details":{"response":{"status":\[{"numeric":\[">=",400,"<",500\]}\]}}} }
-
If
Name
isHttp5xxCount
, thenValueKey
must be null and theEventPattern
must include{"event_type": \["com.amazon.rum.http_event"\],"event_details":{"response":{"status":\[{"numeric":\[">=",500,"<=",599\]}\]}}} }
-
For custom metrics, the following validation rules apply:
-
The namespace can't be omitted and can't be
AWS/RUM
. You can use theAWS/RUM
namespace only for extended metrics. -
All dimensions listed in the
DimensionKeys
field must be present in the value ofEventPattern
. -
The values that you specify for
ValueKey
,EventPattern
, andDimensionKeys
must be fields in RUM events, so all first-level keys in these fields must be one of the keys in the list later in this section. -
If you set a value for
EventPattern
, it must be a JSON object. -
For every non-empty
event_details
, there must be a non-emptyevent_type
. -
If
EventPattern
contains anevent_details
field, it must also contain anevent_type
. For every built-inevent_type
that you use, you must use a value forevent_details
that corresponds to thatevent_type
. For information about event details that correspond to event types, see RUM event details. -
In
EventPattern
, any JSON array must contain only one value.
Valid key values for first-level keys in the
ValueKey
,EventPattern
, andDimensionKeys
fields:-
account_id
-
application_Id
-
application_version
-
application_name
-
batch_id
-
event_details
-
event_id
-
event_interaction
-
event_timestamp
-
event_type
-
event_version
-
log_stream
-
metadata
-
sessionId
-
user_details
-
userId
-
- Metric
Destination Summary A structure that displays information about one destination that CloudWatch RUM sends extended metrics to.
- Query
Filter A structure that defines a key and values that you can use to filter the results. The only performance events that are returned are those that have values matching the ones that you specify in one of your
QueryFilter
structures.For example, you could specify
Browser
as theName
and specifyChrome,Firefox
as theValues
to return events generated only from those browsers.Specifying
Invert
as theName
works as a "not equal to" filter. For example, specifyInvert
as theName
and specifyChrome
as the value to return all events except events from user sessions with the Chrome browser.- RumEvent
A structure that contains the information for one performance event that RUM collects from a user session with your application.
- Time
Range A structure that defines the time range that you want to retrieve results from.
- User
Details A structure that contains information about the user session that this batch of events was collected from.
Enums§
- Custom
Events Status - When writing a match expression against
CustomEventsStatus
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - Deobfuscation
Status - When writing a match expression against
DeobfuscationStatus
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - Metric
Destination - When writing a match expression against
MetricDestination
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - State
Enum - When writing a match expression against
StateEnum
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - Telemetry
- When writing a match expression against
Telemetry
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature.