aws-sdk-cloudwatchrum 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -134,8 +134,8 @@ module Aws::CloudWatchRUM
134
134
  # @return [Array<String>]
135
135
  #
136
136
  # @!attribute [rw] favorite_pages
137
- # A list of pages in the CloudWatch RUM console that are to be
138
- # displayed with a "favorite" icon.
137
+ # A list of pages in your application that are to be displayed with a
138
+ # "favorite" icon in the CloudWatch RUM console.
139
139
  # @return [Array<String>]
140
140
  #
141
141
  # @!attribute [rw] guest_role_arn
@@ -156,14 +156,16 @@ module Aws::CloudWatchRUM
156
156
  # @return [Array<String>]
157
157
  #
158
158
  # @!attribute [rw] session_sample_rate
159
- # Specifies the percentage of user sessions to use for RUM data
160
- # collection. Choosing a higher percentage gives you more data but
161
- # also incurs more costs.
159
+ # Specifies the portion of user sessions to use for RUM data
160
+ # collection. Choosing a higher portion gives you more data but also
161
+ # incurs more costs.
162
162
  #
163
- # The number you specify is the percentage of user sessions that will
164
- # be used.
163
+ # The range for this value is 0 to 1 inclusive. Setting this to 1
164
+ # means that 100% of user sessions are sampled, and setting it to 0.1
165
+ # means that 10% of user sessions are sampled.
165
166
  #
166
- # If you omit this parameter, the default of 10 is used.
167
+ # If you omit this parameter, the default of 0.1 is used, and 10% of
168
+ # sessions will be sampled.
167
169
  # @return [Float]
168
170
  #
169
171
  # @!attribute [rw] telemetries
@@ -266,6 +268,282 @@ module Aws::CloudWatchRUM
266
268
  include Aws::Structure
267
269
  end
268
270
 
271
+ # A structure that defines one error caused by a
272
+ # [BatchCreateRumMetricsDefinitions][1] operation.
273
+ #
274
+ #
275
+ #
276
+ # [1]: https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_BatchCreateRumMetricsDefinitions.html
277
+ #
278
+ # @!attribute [rw] error_code
279
+ # The error code.
280
+ # @return [String]
281
+ #
282
+ # @!attribute [rw] error_message
283
+ # The error message for this metric definition.
284
+ # @return [String]
285
+ #
286
+ # @!attribute [rw] metric_definition
287
+ # The metric definition that caused this error.
288
+ # @return [Types::MetricDefinitionRequest]
289
+ #
290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchCreateRumMetricDefinitionsError AWS API Documentation
291
+ #
292
+ class BatchCreateRumMetricDefinitionsError < Struct.new(
293
+ :error_code,
294
+ :error_message,
295
+ :metric_definition)
296
+ SENSITIVE = []
297
+ include Aws::Structure
298
+ end
299
+
300
+ # @note When making an API call, you may pass BatchCreateRumMetricDefinitionsRequest
301
+ # data as a hash:
302
+ #
303
+ # {
304
+ # app_monitor_name: "AppMonitorName", # required
305
+ # destination: "CloudWatch", # required, accepts CloudWatch, Evidently
306
+ # destination_arn: "DestinationArn",
307
+ # metric_definitions: [ # required
308
+ # {
309
+ # dimension_keys: {
310
+ # "DimensionKey" => "DimensionName",
311
+ # },
312
+ # event_pattern: "EventPattern",
313
+ # name: "MetricName", # required
314
+ # unit_label: "UnitLabel",
315
+ # value_key: "ValueKey",
316
+ # },
317
+ # ],
318
+ # }
319
+ #
320
+ # @!attribute [rw] app_monitor_name
321
+ # The name of the CloudWatch RUM app monitor that is to send the
322
+ # metrics.
323
+ # @return [String]
324
+ #
325
+ # @!attribute [rw] destination
326
+ # The destination to send the metrics to. Valid values are
327
+ # `CloudWatch` and `Evidently`. If you specify `Evidently`, you must
328
+ # also specify the ARN of the CloudWatchEvidently experiment that will
329
+ # receive the metrics and an IAM role that has permission to write to
330
+ # the experiment.
331
+ # @return [String]
332
+ #
333
+ # @!attribute [rw] destination_arn
334
+ # This parameter is required if `Destination` is `Evidently`. If
335
+ # `Destination` is `CloudWatch`, do not use this parameter.
336
+ #
337
+ # This parameter specifies the ARN of the Evidently experiment that is
338
+ # to receive the metrics. You must have already defined this
339
+ # experiment as a valid destination. For more information, see
340
+ # [PutRumMetricsDestination][1].
341
+ #
342
+ #
343
+ #
344
+ # [1]: https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_PutRumMetricsDestination.html
345
+ # @return [String]
346
+ #
347
+ # @!attribute [rw] metric_definitions
348
+ # An array of structures which define the metrics that you want to
349
+ # send.
350
+ # @return [Array<Types::MetricDefinitionRequest>]
351
+ #
352
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchCreateRumMetricDefinitionsRequest AWS API Documentation
353
+ #
354
+ class BatchCreateRumMetricDefinitionsRequest < Struct.new(
355
+ :app_monitor_name,
356
+ :destination,
357
+ :destination_arn,
358
+ :metric_definitions)
359
+ SENSITIVE = []
360
+ include Aws::Structure
361
+ end
362
+
363
+ # @!attribute [rw] errors
364
+ # An array of error objects, if the operation caused any errors.
365
+ # @return [Array<Types::BatchCreateRumMetricDefinitionsError>]
366
+ #
367
+ # @!attribute [rw] metric_definitions
368
+ # An array of structures that define the extended metrics.
369
+ # @return [Array<Types::MetricDefinition>]
370
+ #
371
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchCreateRumMetricDefinitionsResponse AWS API Documentation
372
+ #
373
+ class BatchCreateRumMetricDefinitionsResponse < Struct.new(
374
+ :errors,
375
+ :metric_definitions)
376
+ SENSITIVE = []
377
+ include Aws::Structure
378
+ end
379
+
380
+ # A structure that defines one error caused by a
381
+ # [BatchCreateRumMetricsDefinitions][1] operation.
382
+ #
383
+ #
384
+ #
385
+ # [1]: https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_BatchDeleteRumMetricsDefinitions.html
386
+ #
387
+ # @!attribute [rw] error_code
388
+ # The error code.
389
+ # @return [String]
390
+ #
391
+ # @!attribute [rw] error_message
392
+ # The error message for this metric definition.
393
+ # @return [String]
394
+ #
395
+ # @!attribute [rw] metric_definition_id
396
+ # The ID of the metric definition that caused this error.
397
+ # @return [String]
398
+ #
399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchDeleteRumMetricDefinitionsError AWS API Documentation
400
+ #
401
+ class BatchDeleteRumMetricDefinitionsError < Struct.new(
402
+ :error_code,
403
+ :error_message,
404
+ :metric_definition_id)
405
+ SENSITIVE = []
406
+ include Aws::Structure
407
+ end
408
+
409
+ # @note When making an API call, you may pass BatchDeleteRumMetricDefinitionsRequest
410
+ # data as a hash:
411
+ #
412
+ # {
413
+ # app_monitor_name: "AppMonitorName", # required
414
+ # destination: "CloudWatch", # required, accepts CloudWatch, Evidently
415
+ # destination_arn: "DestinationArn",
416
+ # metric_definition_ids: ["MetricDefinitionId"], # required
417
+ # }
418
+ #
419
+ # @!attribute [rw] app_monitor_name
420
+ # The name of the CloudWatch RUM app monitor that is sending these
421
+ # metrics.
422
+ # @return [String]
423
+ #
424
+ # @!attribute [rw] destination
425
+ # Defines the destination where you want to stop sending the specified
426
+ # metrics. Valid values are `CloudWatch` and `Evidently`. If you
427
+ # specify `Evidently`, you must also specify the ARN of the
428
+ # CloudWatchEvidently experiment that is to be the destination and an
429
+ # IAM role that has permission to write to the experiment.
430
+ # @return [String]
431
+ #
432
+ # @!attribute [rw] destination_arn
433
+ # This parameter is required if `Destination` is `Evidently`. If
434
+ # `Destination` is `CloudWatch`, do not use this parameter.
435
+ #
436
+ # This parameter specifies the ARN of the Evidently experiment that
437
+ # was receiving the metrics that are being deleted.
438
+ # @return [String]
439
+ #
440
+ # @!attribute [rw] metric_definition_ids
441
+ # An array of structures which define the metrics that you want to
442
+ # stop sending.
443
+ # @return [Array<String>]
444
+ #
445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchDeleteRumMetricDefinitionsRequest AWS API Documentation
446
+ #
447
+ class BatchDeleteRumMetricDefinitionsRequest < Struct.new(
448
+ :app_monitor_name,
449
+ :destination,
450
+ :destination_arn,
451
+ :metric_definition_ids)
452
+ SENSITIVE = []
453
+ include Aws::Structure
454
+ end
455
+
456
+ # @!attribute [rw] errors
457
+ # An array of error objects, if the operation caused any errors.
458
+ # @return [Array<Types::BatchDeleteRumMetricDefinitionsError>]
459
+ #
460
+ # @!attribute [rw] metric_definition_ids
461
+ # The IDs of the metric definitions that were deleted.
462
+ # @return [Array<String>]
463
+ #
464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchDeleteRumMetricDefinitionsResponse AWS API Documentation
465
+ #
466
+ class BatchDeleteRumMetricDefinitionsResponse < Struct.new(
467
+ :errors,
468
+ :metric_definition_ids)
469
+ SENSITIVE = []
470
+ include Aws::Structure
471
+ end
472
+
473
+ # @note When making an API call, you may pass BatchGetRumMetricDefinitionsRequest
474
+ # data as a hash:
475
+ #
476
+ # {
477
+ # app_monitor_name: "AppMonitorName", # required
478
+ # destination: "CloudWatch", # required, accepts CloudWatch, Evidently
479
+ # destination_arn: "DestinationArn",
480
+ # max_results: 1,
481
+ # next_token: "String",
482
+ # }
483
+ #
484
+ # @!attribute [rw] app_monitor_name
485
+ # The name of the CloudWatch RUM app monitor that is sending the
486
+ # metrics.
487
+ # @return [String]
488
+ #
489
+ # @!attribute [rw] destination
490
+ # The type of destination that you want to view metrics for. Valid
491
+ # values are `CloudWatch` and `Evidently`.
492
+ # @return [String]
493
+ #
494
+ # @!attribute [rw] destination_arn
495
+ # This parameter is required if `Destination` is `Evidently`. If
496
+ # `Destination` is `CloudWatch`, do not use this parameter.
497
+ #
498
+ # This parameter specifies the ARN of the Evidently experiment that
499
+ # corresponds to the destination.
500
+ # @return [String]
501
+ #
502
+ # @!attribute [rw] max_results
503
+ # The maximum number of results to return in one operation. The
504
+ # default is 50. The maximum that you can specify is 100.
505
+ #
506
+ # To retrieve the remaining results, make another call with the
507
+ # returned `NextToken` value.
508
+ # @return [Integer]
509
+ #
510
+ # @!attribute [rw] next_token
511
+ # Use the token returned by the previous operation to request the next
512
+ # page of results.
513
+ # @return [String]
514
+ #
515
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchGetRumMetricDefinitionsRequest AWS API Documentation
516
+ #
517
+ class BatchGetRumMetricDefinitionsRequest < Struct.new(
518
+ :app_monitor_name,
519
+ :destination,
520
+ :destination_arn,
521
+ :max_results,
522
+ :next_token)
523
+ SENSITIVE = []
524
+ include Aws::Structure
525
+ end
526
+
527
+ # @!attribute [rw] metric_definitions
528
+ # An array of structures that display information about the metrics
529
+ # that are sent by the specified app monitor to the specified
530
+ # destination.
531
+ # @return [Array<Types::MetricDefinition>]
532
+ #
533
+ # @!attribute [rw] next_token
534
+ # A token that you can use in a subsequent operation to retrieve the
535
+ # next set of results.
536
+ # @return [String]
537
+ #
538
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/BatchGetRumMetricDefinitionsResponse AWS API Documentation
539
+ #
540
+ class BatchGetRumMetricDefinitionsResponse < Struct.new(
541
+ :metric_definitions,
542
+ :next_token)
543
+ SENSITIVE = []
544
+ include Aws::Structure
545
+ end
546
+
269
547
  # This operation attempted to create a resource that already exists.
270
548
  #
271
549
  # @!attribute [rw] message
@@ -451,6 +729,46 @@ module Aws::CloudWatchRUM
451
729
  #
452
730
  class DeleteAppMonitorResponse < Aws::EmptyStructure; end
453
731
 
732
+ # @note When making an API call, you may pass DeleteRumMetricsDestinationRequest
733
+ # data as a hash:
734
+ #
735
+ # {
736
+ # app_monitor_name: "AppMonitorName", # required
737
+ # destination: "CloudWatch", # required, accepts CloudWatch, Evidently
738
+ # destination_arn: "DestinationArn",
739
+ # }
740
+ #
741
+ # @!attribute [rw] app_monitor_name
742
+ # The name of the app monitor that is sending metrics to the
743
+ # destination that you want to delete.
744
+ # @return [String]
745
+ #
746
+ # @!attribute [rw] destination
747
+ # The type of destination to delete. Valid values are `CloudWatch` and
748
+ # `Evidently`.
749
+ # @return [String]
750
+ #
751
+ # @!attribute [rw] destination_arn
752
+ # This parameter is required if `Destination` is `Evidently`. If
753
+ # `Destination` is `CloudWatch`, do not use this parameter. This
754
+ # parameter specifies the ARN of the Evidently experiment that
755
+ # corresponds to the destination to delete.
756
+ # @return [String]
757
+ #
758
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/DeleteRumMetricsDestinationRequest AWS API Documentation
759
+ #
760
+ class DeleteRumMetricsDestinationRequest < Struct.new(
761
+ :app_monitor_name,
762
+ :destination,
763
+ :destination_arn)
764
+ SENSITIVE = []
765
+ include Aws::Structure
766
+ end
767
+
768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/DeleteRumMetricsDestinationResponse AWS API Documentation
769
+ #
770
+ class DeleteRumMetricsDestinationResponse < Aws::EmptyStructure; end
771
+
454
772
  # @note When making an API call, you may pass GetAppMonitorDataRequest
455
773
  # data as a hash:
456
774
  #
@@ -584,7 +902,8 @@ module Aws::CloudWatchRUM
584
902
  # }
585
903
  #
586
904
  # @!attribute [rw] max_results
587
- # The maximum number of results to return in one operation.
905
+ # The maximum number of results to return in one operation. The
906
+ # default is 50. The maximum that you can specify is 100.
588
907
  # @return [Integer]
589
908
  #
590
909
  # @!attribute [rw] next_token
@@ -620,6 +939,62 @@ module Aws::CloudWatchRUM
620
939
  include Aws::Structure
621
940
  end
622
941
 
942
+ # @note When making an API call, you may pass ListRumMetricsDestinationsRequest
943
+ # data as a hash:
944
+ #
945
+ # {
946
+ # app_monitor_name: "AppMonitorName", # required
947
+ # max_results: 1,
948
+ # next_token: "String",
949
+ # }
950
+ #
951
+ # @!attribute [rw] app_monitor_name
952
+ # The name of the app monitor associated with the destinations that
953
+ # you want to retrieve.
954
+ # @return [String]
955
+ #
956
+ # @!attribute [rw] max_results
957
+ # The maximum number of results to return in one operation. The
958
+ # default is 50. The maximum that you can specify is 100.
959
+ #
960
+ # To retrieve the remaining results, make another call with the
961
+ # returned `NextToken` value.
962
+ # @return [Integer]
963
+ #
964
+ # @!attribute [rw] next_token
965
+ # Use the token returned by the previous operation to request the next
966
+ # page of results.
967
+ # @return [String]
968
+ #
969
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ListRumMetricsDestinationsRequest AWS API Documentation
970
+ #
971
+ class ListRumMetricsDestinationsRequest < Struct.new(
972
+ :app_monitor_name,
973
+ :max_results,
974
+ :next_token)
975
+ SENSITIVE = []
976
+ include Aws::Structure
977
+ end
978
+
979
+ # @!attribute [rw] destinations
980
+ # The list of CloudWatch RUM extended metrics destinations associated
981
+ # with the app monitor that you specified.
982
+ # @return [Array<Types::MetricDestinationSummary>]
983
+ #
984
+ # @!attribute [rw] next_token
985
+ # A token that you can use in a subsequent operation to retrieve the
986
+ # next set of results.
987
+ # @return [String]
988
+ #
989
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/ListRumMetricsDestinationsResponse AWS API Documentation
990
+ #
991
+ class ListRumMetricsDestinationsResponse < Struct.new(
992
+ :destinations,
993
+ :next_token)
994
+ SENSITIVE = []
995
+ include Aws::Structure
996
+ end
997
+
623
998
  # @note When making an API call, you may pass ListTagsForResourceRequest
624
999
  # data as a hash:
625
1000
  #
@@ -657,6 +1032,276 @@ module Aws::CloudWatchRUM
657
1032
  include Aws::Structure
658
1033
  end
659
1034
 
1035
+ # A structure that displays the definition of one extended metric that
1036
+ # RUM sends to CloudWatch or CloudWatch Evidently. For more information,
1037
+ # see [ Additional metrics that you can send to CloudWatch and
1038
+ # CloudWatch Evidently][1].
1039
+ #
1040
+ #
1041
+ #
1042
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-vended-metrics.html
1043
+ #
1044
+ # @!attribute [rw] dimension_keys
1045
+ # This field is a map of field paths to dimension names. It defines
1046
+ # the dimensions to associate with this metric in CloudWatch The value
1047
+ # of this field is used only if the metric destination is
1048
+ # `CloudWatch`. If the metric destination is `Evidently`, the value of
1049
+ # `DimensionKeys` is ignored.
1050
+ # @return [Hash<String,String>]
1051
+ #
1052
+ # @!attribute [rw] event_pattern
1053
+ # The pattern that defines the metric. RUM checks events that happen
1054
+ # in a user's session against the pattern, and events that match the
1055
+ # pattern are sent to the metric destination.
1056
+ #
1057
+ # If the metrics destination is `CloudWatch` and the event also
1058
+ # matches a value in `DimensionKeys`, then the metric is published
1059
+ # with the specified dimensions.
1060
+ # @return [String]
1061
+ #
1062
+ # @!attribute [rw] metric_definition_id
1063
+ # The ID of this metric definition.
1064
+ # @return [String]
1065
+ #
1066
+ # @!attribute [rw] name
1067
+ # The name of the metric that is defined in this structure.
1068
+ # @return [String]
1069
+ #
1070
+ # @!attribute [rw] unit_label
1071
+ # Use this field only if you are sending this metric to CloudWatch. It
1072
+ # defines the CloudWatch metric unit that this metric is measured in.
1073
+ # @return [String]
1074
+ #
1075
+ # @!attribute [rw] value_key
1076
+ # The field within the event object that the metric value is sourced
1077
+ # from.
1078
+ # @return [String]
1079
+ #
1080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/MetricDefinition AWS API Documentation
1081
+ #
1082
+ class MetricDefinition < Struct.new(
1083
+ :dimension_keys,
1084
+ :event_pattern,
1085
+ :metric_definition_id,
1086
+ :name,
1087
+ :unit_label,
1088
+ :value_key)
1089
+ SENSITIVE = []
1090
+ include Aws::Structure
1091
+ end
1092
+
1093
+ # Use this structure to define one extended metric that RUM will send to
1094
+ # CloudWatch or CloudWatch Evidently. For more information, see [
1095
+ # Additional metrics that you can send to CloudWatch and CloudWatch
1096
+ # Evidently][1].
1097
+ #
1098
+ # Only certain combinations of values for `Name`, `ValueKey`, and
1099
+ # `EventPattern` are valid. In addition to what is displayed in the list
1100
+ # below, the `EventPattern` can also include information used by the
1101
+ # `DimensionKeys` field.
1102
+ #
1103
+ # * If `Name` is `PerformanceNavigationDuration`, then `ValueKey`must be
1104
+ # `event_details.duration` and the `EventPattern` must include
1105
+ # `\{"event_type":["com.amazon.rum.performance_navigation_event"]\}`
1106
+ #
1107
+ # * If `Name` is `PerformanceResourceDuration`, then `ValueKey`must be
1108
+ # `event_details.duration` and the `EventPattern` must include
1109
+ # `\{"event_type":["com.amazon.rum.performance_resource_event"]\}`
1110
+ #
1111
+ # * If `Name` is `NavigationSatisfiedTransaction`, then `ValueKey`must
1112
+ # be null and the `EventPattern` must include `\{ "event_type":
1113
+ # ["com.amazon.rum.performance_navigation_event"], "event_details": \{
1114
+ # "duration": [\{ "numeric": [">",2000] \}] \} \}`
1115
+ #
1116
+ # * If `Name` is `NavigationToleratedTransaction`, then `ValueKey`must
1117
+ # be null and the `EventPattern` must include `\{ "event_type":
1118
+ # ["com.amazon.rum.performance_navigation_event"], "event_details": \{
1119
+ # "duration": [\{ "numeric": [">=",2000,"<"8000] \}] \} \}`
1120
+ #
1121
+ # * If `Name` is `NavigationFrustratedTransaction`, then `ValueKey`must
1122
+ # be null and the `EventPattern` must include `\{ "event_type":
1123
+ # ["com.amazon.rum.performance_navigation_event"], "event_details": \{
1124
+ # "duration": [\{ "numeric": [">=",8000] \}] \} \}`
1125
+ #
1126
+ # * If `Name` is `WebVitalsCumulativeLayoutShift`, then `ValueKey`must
1127
+ # be `event_details.value` and the `EventPattern` must include
1128
+ # `\{"event_type":["com.amazon.rum.cumulative_layout_shift_event"]\}`
1129
+ #
1130
+ # * If `Name` is `WebVitalsFirstInputDelay`, then `ValueKey`must be
1131
+ # `event_details.value` and the `EventPattern` must include
1132
+ # `\{"event_type":["com.amazon.rum.first_input_delay_event"]\}`
1133
+ #
1134
+ # * If `Name` is `WebVitalsLargestContentfulPaint`, then `ValueKey`must
1135
+ # be `event_details.value` and the `EventPattern` must include
1136
+ # `\{"event_type":["com.amazon.rum.largest_contentful_paint_event"]\}`
1137
+ #
1138
+ # * If `Name` is `JsErrorCount`, then `ValueKey`must be null and the
1139
+ # `EventPattern` must include
1140
+ # `\{"event_type":["com.amazon.rum.js_error_event"]\}`
1141
+ #
1142
+ # * If `Name` is `HttpErrorCount`, then `ValueKey`must be null and the
1143
+ # `EventPattern` must include
1144
+ # `\{"event_type":["com.amazon.rum.http_event"]\}`
1145
+ #
1146
+ # * If `Name` is `SessionCount`, then `ValueKey`must be null and the
1147
+ # `EventPattern` must include
1148
+ # `\{"event_type":["com.amazon.rum.session_start_event"]\}`
1149
+ #
1150
+ #
1151
+ #
1152
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-vended-metrics.html
1153
+ #
1154
+ # @note When making an API call, you may pass MetricDefinitionRequest
1155
+ # data as a hash:
1156
+ #
1157
+ # {
1158
+ # dimension_keys: {
1159
+ # "DimensionKey" => "DimensionName",
1160
+ # },
1161
+ # event_pattern: "EventPattern",
1162
+ # name: "MetricName", # required
1163
+ # unit_label: "UnitLabel",
1164
+ # value_key: "ValueKey",
1165
+ # }
1166
+ #
1167
+ # @!attribute [rw] dimension_keys
1168
+ # Use this field only if you are sending the metric to CloudWatch.
1169
+ #
1170
+ # This field is a map of field paths to dimension names. It defines
1171
+ # the dimensions to associate with this metric in CloudWatch. Valid
1172
+ # values for the entries in this field are the following:
1173
+ #
1174
+ # * `"metadata.pageId": "PageId"`
1175
+ #
1176
+ # * `"metadata.browserName": "BrowserName"`
1177
+ #
1178
+ # * `"metadata.deviceType": "DeviceType"`
1179
+ #
1180
+ # * `"metadata.osName": "OSName"`
1181
+ #
1182
+ # * `"metadata.countryCode": "CountryCode"`
1183
+ #
1184
+ # * `"event_details.fileType": "FileType"`
1185
+ # ^
1186
+ #
1187
+ # <p> All dimensions listed in this field must also be included in <code>EventPattern</code>.</p>
1188
+ # @return [Hash<String,String>]
1189
+ #
1190
+ # @!attribute [rw] event_pattern
1191
+ # The pattern that defines the metric, specified as a JSON object. RUM
1192
+ # checks events that happen in a user's session against the pattern,
1193
+ # and events that match the pattern are sent to the metric
1194
+ # destination.
1195
+ #
1196
+ # When you define extended metrics, the metric definition is not valid
1197
+ # if `EventPattern` is omitted.
1198
+ #
1199
+ # Example event patterns:
1200
+ #
1201
+ # * `'\{ "event_type": ["com.amazon.rum.js_error_event"], "metadata":
1202
+ # \{ "browserName": [ "Chrome", "Safari" ], \} \}'`
1203
+ #
1204
+ # * `'\{ "event_type":
1205
+ # ["com.amazon.rum.performance_navigation_event"], "metadata": \{
1206
+ # "browserName": [ "Chrome", "Firefox" ] \}, "event_details": \{
1207
+ # "duration": [\{ "numeric": [ "<", 2000 ] \}] \} \}'`
1208
+ #
1209
+ # * `'\{ "event_type":
1210
+ # ["com.amazon.rum.performance_navigation_event"], "metadata": \{
1211
+ # "browserName": [ "Chrome", "Safari" ], "countryCode": [ "US" ] \},
1212
+ # "event_details": \{ "duration": [\{ "numeric": [ ">=", 2000, "<",
1213
+ # 8000 ] \}] \} \}'`
1214
+ #
1215
+ # If the metrics destination' is `CloudWatch` and the event also
1216
+ # matches a value in `DimensionKeys`, then the metric is published
1217
+ # with the specified dimensions.
1218
+ # @return [String]
1219
+ #
1220
+ # @!attribute [rw] name
1221
+ # The name for the metric that is defined in this structure. Valid
1222
+ # values are the following:
1223
+ #
1224
+ # * `PerformanceNavigationDuration`
1225
+ #
1226
+ # * `PerformanceResourceDuration `
1227
+ #
1228
+ # * `NavigationSatisfiedTransaction`
1229
+ #
1230
+ # * `NavigationToleratedTransaction`
1231
+ #
1232
+ # * `NavigationFrustratedTransaction`
1233
+ #
1234
+ # * `WebVitalsCumulativeLayoutShift`
1235
+ #
1236
+ # * `WebVitalsFirstInputDelay`
1237
+ #
1238
+ # * `WebVitalsLargestContentfulPaint`
1239
+ #
1240
+ # * `JsErrorCount`
1241
+ #
1242
+ # * `HttpErrorCount`
1243
+ #
1244
+ # * `SessionCount`
1245
+ # @return [String]
1246
+ #
1247
+ # @!attribute [rw] unit_label
1248
+ # The CloudWatch metric unit to use for this metric. If you omit this
1249
+ # field, the metric is recorded with no unit.
1250
+ # @return [String]
1251
+ #
1252
+ # @!attribute [rw] value_key
1253
+ # The field within the event object that the metric value is sourced
1254
+ # from.
1255
+ #
1256
+ # If you omit this field, a hardcoded value of 1 is pushed as the
1257
+ # metric value. This is useful if you just want to count the number of
1258
+ # events that the filter catches.
1259
+ #
1260
+ # If this metric is sent to CloudWatch Evidently, this field will be
1261
+ # passed to Evidently raw and Evidently will handle data extraction
1262
+ # from the event.
1263
+ # @return [String]
1264
+ #
1265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/MetricDefinitionRequest AWS API Documentation
1266
+ #
1267
+ class MetricDefinitionRequest < Struct.new(
1268
+ :dimension_keys,
1269
+ :event_pattern,
1270
+ :name,
1271
+ :unit_label,
1272
+ :value_key)
1273
+ SENSITIVE = []
1274
+ include Aws::Structure
1275
+ end
1276
+
1277
+ # A structure that displays information about one destination that
1278
+ # CloudWatch RUM sends extended metrics to.
1279
+ #
1280
+ # @!attribute [rw] destination
1281
+ # Specifies whether the destination is `CloudWatch` or `Evidently`.
1282
+ # @return [String]
1283
+ #
1284
+ # @!attribute [rw] destination_arn
1285
+ # If the destination is `Evidently`, this specifies the ARN of the
1286
+ # Evidently experiment that receives the metrics.
1287
+ # @return [String]
1288
+ #
1289
+ # @!attribute [rw] iam_role_arn
1290
+ # This field appears only when the destination is `Evidently`. It
1291
+ # specifies the ARN of the IAM role that is used to write to the
1292
+ # Evidently experiment that receives the metrics.
1293
+ # @return [String]
1294
+ #
1295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/MetricDestinationSummary AWS API Documentation
1296
+ #
1297
+ class MetricDestinationSummary < Struct.new(
1298
+ :destination,
1299
+ :destination_arn,
1300
+ :iam_role_arn)
1301
+ SENSITIVE = []
1302
+ include Aws::Structure
1303
+ end
1304
+
660
1305
  # @note When making an API call, you may pass PutRumEventsRequest
661
1306
  # data as a hash:
662
1307
  #
@@ -721,6 +1366,59 @@ module Aws::CloudWatchRUM
721
1366
  #
722
1367
  class PutRumEventsResponse < Aws::EmptyStructure; end
723
1368
 
1369
+ # @note When making an API call, you may pass PutRumMetricsDestinationRequest
1370
+ # data as a hash:
1371
+ #
1372
+ # {
1373
+ # app_monitor_name: "AppMonitorName", # required
1374
+ # destination: "CloudWatch", # required, accepts CloudWatch, Evidently
1375
+ # destination_arn: "DestinationArn",
1376
+ # iam_role_arn: "IamRoleArn",
1377
+ # }
1378
+ #
1379
+ # @!attribute [rw] app_monitor_name
1380
+ # The name of the CloudWatch RUM app monitor that will send the
1381
+ # metrics.
1382
+ # @return [String]
1383
+ #
1384
+ # @!attribute [rw] destination
1385
+ # Defines the destination to send the metrics to. Valid values are
1386
+ # `CloudWatch` and `Evidently`. If you specify `Evidently`, you must
1387
+ # also specify the ARN of the CloudWatchEvidently experiment that is
1388
+ # to be the destination and an IAM role that has permission to write
1389
+ # to the experiment.
1390
+ # @return [String]
1391
+ #
1392
+ # @!attribute [rw] destination_arn
1393
+ # Use this parameter only if `Destination` is `Evidently`. This
1394
+ # parameter specifies the ARN of the Evidently experiment that will
1395
+ # receive the extended metrics.
1396
+ # @return [String]
1397
+ #
1398
+ # @!attribute [rw] iam_role_arn
1399
+ # This parameter is required if `Destination` is `Evidently`. If
1400
+ # `Destination` is `CloudWatch`, do not use this parameter.
1401
+ #
1402
+ # This parameter specifies the ARN of an IAM role that RUM will assume
1403
+ # to write to the Evidently experiment that you are sending metrics
1404
+ # to. This role must have permission to write to that experiment.
1405
+ # @return [String]
1406
+ #
1407
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/PutRumMetricsDestinationRequest AWS API Documentation
1408
+ #
1409
+ class PutRumMetricsDestinationRequest < Struct.new(
1410
+ :app_monitor_name,
1411
+ :destination,
1412
+ :destination_arn,
1413
+ :iam_role_arn)
1414
+ SENSITIVE = []
1415
+ include Aws::Structure
1416
+ end
1417
+
1418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/PutRumMetricsDestinationResponse AWS API Documentation
1419
+ #
1420
+ class PutRumMetricsDestinationResponse < Aws::EmptyStructure; end
1421
+
724
1422
  # A structure that defines a key and values that you can use to filter
725
1423
  # the results. The only performance events that are returned are those
726
1424
  # that have values matching the ones that you specify in one of your
@@ -1036,6 +1734,76 @@ module Aws::CloudWatchRUM
1036
1734
  #
1037
1735
  class UpdateAppMonitorResponse < Aws::EmptyStructure; end
1038
1736
 
1737
+ # @note When making an API call, you may pass UpdateRumMetricDefinitionRequest
1738
+ # data as a hash:
1739
+ #
1740
+ # {
1741
+ # app_monitor_name: "AppMonitorName", # required
1742
+ # destination: "CloudWatch", # required, accepts CloudWatch, Evidently
1743
+ # destination_arn: "DestinationArn",
1744
+ # metric_definition: { # required
1745
+ # dimension_keys: {
1746
+ # "DimensionKey" => "DimensionName",
1747
+ # },
1748
+ # event_pattern: "EventPattern",
1749
+ # name: "MetricName", # required
1750
+ # unit_label: "UnitLabel",
1751
+ # value_key: "ValueKey",
1752
+ # },
1753
+ # metric_definition_id: "MetricDefinitionId", # required
1754
+ # }
1755
+ #
1756
+ # @!attribute [rw] app_monitor_name
1757
+ # The name of the CloudWatch RUM app monitor that sends these metrics.
1758
+ # @return [String]
1759
+ #
1760
+ # @!attribute [rw] destination
1761
+ # The destination to send the metrics to. Valid values are
1762
+ # `CloudWatch` and `Evidently`. If you specify `Evidently`, you must
1763
+ # also specify the ARN of the CloudWatchEvidently experiment that will
1764
+ # receive the metrics and an IAM role that has permission to write to
1765
+ # the experiment.
1766
+ # @return [String]
1767
+ #
1768
+ # @!attribute [rw] destination_arn
1769
+ # This parameter is required if `Destination` is `Evidently`. If
1770
+ # `Destination` is `CloudWatch`, do not use this parameter.
1771
+ #
1772
+ # This parameter specifies the ARN of the Evidently experiment that is
1773
+ # to receive the metrics. You must have already defined this
1774
+ # experiment as a valid destination. For more information, see
1775
+ # [PutRumMetricsDestination][1].
1776
+ #
1777
+ #
1778
+ #
1779
+ # [1]: https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_PutRumMetricsDestination.html
1780
+ # @return [String]
1781
+ #
1782
+ # @!attribute [rw] metric_definition
1783
+ # A structure that contains the new definition that you want to use
1784
+ # for this metric.
1785
+ # @return [Types::MetricDefinitionRequest]
1786
+ #
1787
+ # @!attribute [rw] metric_definition_id
1788
+ # The ID of the metric definition to update.
1789
+ # @return [String]
1790
+ #
1791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/UpdateRumMetricDefinitionRequest AWS API Documentation
1792
+ #
1793
+ class UpdateRumMetricDefinitionRequest < Struct.new(
1794
+ :app_monitor_name,
1795
+ :destination,
1796
+ :destination_arn,
1797
+ :metric_definition,
1798
+ :metric_definition_id)
1799
+ SENSITIVE = []
1800
+ include Aws::Structure
1801
+ end
1802
+
1803
+ # @see http://docs.aws.amazon.com/goto/WebAPI/rum-2018-05-10/UpdateRumMetricDefinitionResponse AWS API Documentation
1804
+ #
1805
+ class UpdateRumMetricDefinitionResponse < Aws::EmptyStructure; end
1806
+
1039
1807
  # A structure that contains information about the user session that this
1040
1808
  # batch of events was collected from.
1041
1809
  #