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/RUMnamespace, the following validations apply:-
The
Namespaceparameter must be omitted or set toAWS/RUM. -
Only certain combinations of values for
Name,ValueKey, andEventPatternare valid. In addition to what is displayed in the following list, theEventPatterncan also include information used by theDimensionKeysfield.-
If
NameisPerformanceNavigationDuration, thenValueKeymust beevent_details.durationand theEventPatternmust include{"event_type":\["com.amazon.rum.performance_navigation_event"\]} -
If
NameisPerformanceResourceDuration, thenValueKeymust beevent_details.durationand theEventPatternmust include{"event_type":\["com.amazon.rum.performance_resource_event"\]} -
If
NameisNavigationSatisfiedTransaction, thenValueKeymust be null and theEventPatternmust include{ "event_type": \["com.amazon.rum.performance_navigation_event"\], "event_details": { "duration": \[{ "numeric": \[">",2000\] }\] } } -
If
NameisNavigationToleratedTransaction, thenValueKeymust be null and theEventPatternmust include{ "event_type": \["com.amazon.rum.performance_navigation_event"\], "event_details": { "duration": \[{ "numeric": \[">=",2000,"<"8000\] }\] } } -
If
NameisNavigationFrustratedTransaction, thenValueKeymust be null and theEventPatternmust include{ "event_type": \["com.amazon.rum.performance_navigation_event"\], "event_details": { "duration": \[{ "numeric": \[">=",8000\] }\] } } -
If
NameisWebVitalsCumulativeLayoutShift, thenValueKeymust beevent_details.valueand theEventPatternmust include{"event_type":\["com.amazon.rum.cumulative_layout_shift_event"\]} -
If
NameisWebVitalsFirstInputDelay, thenValueKeymust beevent_details.valueand theEventPatternmust include{"event_type":\["com.amazon.rum.first_input_delay_event"\]} -
If
NameisWebVitalsLargestContentfulPaint, thenValueKeymust beevent_details.valueand theEventPatternmust include{"event_type":\["com.amazon.rum.largest_contentful_paint_event"\]} -
If
NameisJsErrorCount, thenValueKeymust be null and theEventPatternmust include{"event_type":\["com.amazon.rum.js_error_event"\]} -
If
NameisHttpErrorCount, thenValueKeymust be null and theEventPatternmust include{"event_type":\["com.amazon.rum.http_event"\]} -
If
NameisSessionCount, thenValueKeymust be null and theEventPatternmust include{"event_type":\["com.amazon.rum.session_start_event"\]} -
If
NameisPageViewCount, thenValueKeymust be null and theEventPatternmust include{"event_type":\["com.amazon.rum.page_view_event"\]} -
If
NameisHttp4xxCount, thenValueKeymust be null and theEventPatternmust include{"event_type": \["com.amazon.rum.http_event"\],"event_details":{"response":{"status":\[{"numeric":\[">=",400,"<",500\]}\]}}} } -
If
NameisHttp5xxCount, thenValueKeymust be null and theEventPatternmust 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/RUMnamespace only for extended metrics. -
All dimensions listed in the
DimensionKeysfield must be present in the value ofEventPattern. -
The values that you specify for
ValueKey,EventPattern, andDimensionKeysmust 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
EventPatterncontains anevent_detailsfield, it must also contain anevent_type. For every built-inevent_typethat you use, you must use a value forevent_detailsthat 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, andDimensionKeysfields:-
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
QueryFilterstructures.For example, you could specify
Browseras theNameand specifyChrome,Firefoxas theValuesto return events generated only from those browsers.Specifying
Invertas theNameworks as a "not equal to" filter. For example, specifyInvertas theNameand specifyChromeas 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.