Interface CfnAppMonitor.MetricDefinitionProperty
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
CfnAppMonitor.MetricDefinitionProperty.Jsii$Proxy
- Enclosing class:
CfnAppMonitor
Valid destinations include CloudWatch and Evidently.
By default, RUM app monitors send some metrics to CloudWatch . These default metrics are listed in CloudWatch metrics that you can collect.
In addition to these default metrics, you can choose to send extended metrics or custom metrics or both.
- Extended metrics enable you to send metrics with additional dimensions not included in the default metrics. You can also send extended metrics to Evidently as well as CloudWatch . The valid dimension names for the additional dimensions for extended metrics are
BrowserName,CountryCode,DeviceType,FileType,OSName, andPageId. For more information, see Extended metrics . - Custom metrics are metrics that you define. You can send custom metrics to CloudWatch or to CloudWatch Evidently or to both. With custom metrics, you can use any metric name and namespace, and to derive the metrics you can use any custom events, built-in events, custom attributes, or default attributes.
You can't send custom metrics to the AWS/RUM namespace. You must send custom metrics to a custom namespace that you define. The namespace that you use can't start with AWS/ . CloudWatch RUM prepends RUM/CustomMetrics/ to the custom namespace that you define, so the final namespace for your metrics in CloudWatch is RUM/CustomMetrics/ *your-custom-namespace* .
For information about syntax rules for specifying custom metrics and extended metrics, see MetridDefinitionRequest in the CloudWatch RUM API Reference .
The maximum number of metric definitions that one destination can contain is 2000.
Extended metrics sent to CloudWatch and RUM custom metrics are charged as CloudWatch custom metrics. Each combination of additional dimension name and dimension value counts as a custom metric.
If some metric definitions that you specify are not valid, then the operation will not modify any metric definitions even if other metric definitions specified are valid.
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.rum.*;
MetricDefinitionProperty metricDefinitionProperty = MetricDefinitionProperty.builder()
.name("name")
// the properties below are optional
.dimensionKeys(Map.of(
"dimensionKeysKey", "dimensionKeys"))
.eventPattern("eventPattern")
.namespace("namespace")
.unitLabel("unitLabel")
.valueKey("valueKey")
.build();
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classA builder forCfnAppMonitor.MetricDefinitionPropertystatic final classAn implementation forCfnAppMonitor.MetricDefinitionProperty -
Method Summary
Modifier and TypeMethodDescriptionbuilder()default ObjectThis field is a map of field paths to dimension names.default StringThe pattern that defines the metric.getName()The name of the metric that is defined in this structure.default StringIf you are creating a custom metric instead of an extended metrics, use this parameter to define the metric namespace for that custom metric.default StringUse this field only if you are sending this metric to CloudWatch .default StringThe field within the event object that the metric value is sourced from.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getName
The name of the metric that is defined in this structure.- See Also:
-
getDimensionKeys
This field is a map of field paths to dimension names.It defines the dimensions to associate with this metric in CloudWatch . The value of this field is used only if the metric destination is
CloudWatch. If the metric destination isEvidently, the value ofDimensionKeysis ignored.Returns union: either Mapinvalid input: '<'String,
String> orIResolvable- See Also:
-
getEventPattern
The pattern that defines the metric.RUM checks events that happen in a user's session against the pattern, and events that match the pattern are sent to the metric destination.
If the metrics destination is
CloudWatchand the event also matches a value inDimensionKeys, then the metric is published with the specified dimensions.- See Also:
-
getNamespace
If you are creating a custom metric instead of an extended metrics, use this parameter to define the metric namespace for that custom metric.Do not specify this parameter if you are creating an extended metric.
You can't use any string that starts with
AWS/for your namespace.- See Also:
-
getUnitLabel
Use this field only if you are sending this metric to CloudWatch .It defines the CloudWatch metric unit that this metric is measured in.
- See Also:
-
getValueKey
The field within the event object that the metric value is sourced from.- See Also:
-
builder
-