Client — AWS SDK for Ruby V3

Class: Aws::CloudWatchRUM::Client

Overview

An API client for CloudWatchRUM. To construct a client, you need to configure a :region and :credentials.

client = Aws::CloudWatchRUM::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from Aws::ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.


473
474
475
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 473

def initialize(*args)
  super
end

Instance Method Details

#batch_create_rum_metric_definitions(params = {}) ⇒ Types::BatchCreateRumMetricDefinitionsResponse

Specifies the extended metrics and custom metrics that you want a CloudWatch RUM app monitor to send to a destination. 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 with CloudWatch RUM.

In addition to these default metrics, you can choose to send extended metrics, custom metrics, or both.

  • Extended metrics let you send metrics with additional dimensions that aren't included in the default metrics. You can also send extended metrics to both Evidently and CloudWatch. The valid dimension names for the additional dimensions for extended metrics are BrowserName, CountryCode, DeviceType, FileType, OSName, and PageId. For more information, see Extended metrics that you can send to CloudWatch and CloudWatch Evidently.

  • Custom metrics are metrics that you define. You can send custom metrics to CloudWatch. CloudWatch Evidently, or both. With custom metrics, you can use any metric name and namespace. 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.

The maximum number of metric definitions that you can specify in one BatchCreateRumMetricDefinitions operation is 200.

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. For more information, see Amazon CloudWatch Pricing.

You must have already created a destination for the metrics before you send them. For more information, see PutRumMetricsDestination.

If some metric definitions specified in a BatchCreateRumMetricDefinitions operations are not valid, those metric definitions fail and return errors, but all valid metric definitions in the same operation still succeed.


615
616
617
618
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 615

def batch_create_rum_metric_definitions(params = {}, options = {})
  req = build_request(:batch_create_rum_metric_definitions, params)
  req.send_request(options)
end

#batch_delete_rum_metric_definitions(params = {}) ⇒ Types::BatchDeleteRumMetricDefinitionsResponse

Removes the specified metrics from being sent to an extended metrics destination.

If some metric definition IDs specified in a BatchDeleteRumMetricDefinitions operations are not valid, those metric definitions fail and return errors, but all valid metric definition IDs in the same operation are still deleted.

The maximum number of metric definitions that you can specify in one BatchDeleteRumMetricDefinitions operation is 200.


680
681
682
683
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 680

def batch_delete_rum_metric_definitions(params = {}, options = {})
  req = build_request(:batch_delete_rum_metric_definitions, params)
  req.send_request(options)
end

#batch_get_rum_metric_definitions(params = {}) ⇒ Types::BatchGetRumMetricDefinitionsResponse

Retrieves the list of metrics and dimensions that a RUM app monitor is sending to a single destination.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.


748
749
750
751
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 748

def batch_get_rum_metric_definitions(params = {}, options = {})
  req = build_request(:batch_get_rum_metric_definitions, params)
  req.send_request(options)
end

#create_app_monitor(params = {}) ⇒ Types::CreateAppMonitorResponse

Creates a Amazon CloudWatch RUM app monitor, which 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.

You use this operation only to create a new app monitor. To update an existing app monitor, use UpdateAppMonitor instead.

After you create an app monitor, sign in to the CloudWatch RUM console to get the JavaScript code snippet to add to your web application. For more information, see How do I find a code snippet that I've already generated?


891
892
893
894
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 891

def create_app_monitor(params = {}, options = {})
  req = build_request(:create_app_monitor, params)
  req.send_request(options)
end

#delete_app_monitor(params = {}) ⇒ Struct

Deletes an existing app monitor. This immediately stops the collection of data.


914
915
916
917
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 914

def delete_app_monitor(params = {}, options = {})
  req = build_request(:delete_app_monitor, params)
  req.send_request(options)
end

#delete_resource_policy(params = {}) ⇒ Types::DeleteResourcePolicyResponse

Removes the association of a resource-based policy from an app monitor.


951
952
953
954
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 951

def delete_resource_policy(params = {}, options = {})
  req = build_request(:delete_resource_policy, params)
  req.send_request(options)
end

#delete_rum_metrics_destination(params = {}) ⇒ Struct

Deletes a destination for CloudWatch RUM extended metrics, so that the specified app monitor stops sending extended metrics to that destination.


988
989
990
991
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 988

def delete_rum_metrics_destination(params = {}, options = {})
  req = build_request(:delete_rum_metrics_destination, params)
  req.send_request(options)
end

#get_app_monitor(params = {}) ⇒ Types::GetAppMonitorResponse

Retrieves the complete configuration information for one app monitor.


1044
1045
1046
1047
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1044

def get_app_monitor(params = {}, options = {})
  req = build_request(:get_app_monitor, params)
  req.send_request(options)
end

#get_app_monitor_data(params = {}) ⇒ Types::GetAppMonitorDataResponse

Retrieves the raw performance events that RUM has collected from your web application, so that you can do your own processing or analysis of this data.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.


1107
1108
1109
1110
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1107

def get_app_monitor_data(params = {}, options = {})
  req = build_request(:get_app_monitor_data, params)
  req.send_request(options)
end

#get_resource_policy(params = {}) ⇒ Types::GetResourcePolicyResponse

Use this operation to retrieve information about a resource-based policy that is attached to an app monitor.


1139
1140
1141
1142
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1139

def get_resource_policy(params = {}, options = {})
  req = build_request(:get_resource_policy, params)
  req.send_request(options)
end

#list_app_monitors(params = {}) ⇒ Types::ListAppMonitorsResponse

Returns a list of the Amazon CloudWatch RUM app monitors in the account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.


1184
1185
1186
1187
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1184

def list_app_monitors(params = {}, options = {})
  req = build_request(:list_app_monitors, params)
  req.send_request(options)
end

#list_rum_metrics_destinations(params = {}) ⇒ Types::ListRumMetricsDestinationsResponse

Returns a list of destinations that you have created to receive RUM extended metrics, for the specified app monitor.

For more information about extended metrics, see AddRumMetrics.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.


1240
1241
1242
1243
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1240

def list_rum_metrics_destinations(params = {}, options = {})
  req = build_request(:list_rum_metrics_destinations, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Displays the tags associated with a CloudWatch RUM resource.


1271
1272
1273
1274
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1271

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#put_resource_policy(params = {}) ⇒ Types::PutResourcePolicyResponse

Use this operation to assign a resource-based policy to a CloudWatch RUM app monitor to control access to it. Each app monitor can have one resource-based policy. The maximum size of the policy is 4 KB. To learn more about using resource policies with RUM, see Using resource-based policies with CloudWatch RUM.


1335
1336
1337
1338
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1335

def put_resource_policy(params = {}, options = {})
  req = build_request(:put_resource_policy, params)
  req.send_request(options)
end

#put_rum_events(params = {}) ⇒ Struct

Sends telemetry events about your application performance and user behavior to CloudWatch RUM. The code snippet that RUM generates for you to add to your application includes PutRumEvents operations to send this data to RUM.

Each PutRumEvents operation can send a batch of events from one user session.


1408
1409
1410
1411
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1408

def put_rum_events(params = {}, options = {})
  req = build_request(:put_rum_events, params)
  req.send_request(options)
end

#put_rum_metrics_destination(params = {}) ⇒ Struct

Creates or updates a destination to receive extended metrics from CloudWatch RUM. You can send extended metrics to CloudWatch or to a CloudWatch Evidently experiment.

For more information about extended metrics, see BatchCreateRumMetricDefinitions.


1472
1473
1474
1475
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1472

def put_rum_metrics_destination(params = {}, options = {})
  req = build_request(:put_rum_metrics_destination, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Assigns one or more tags (key-value pairs) to the specified CloudWatch RUM resource. Currently, the only resources that can be tagged app monitors.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can use the TagResource action with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the alarm. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource.

For more information, see Tagging Amazon Web Services resources.


1523
1524
1525
1526
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1523

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes one or more tags from the specified resource.


1550
1551
1552
1553
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1550

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_app_monitor(params = {}) ⇒ Struct

Updates the configuration of an existing app monitor. When you use this operation, only the parts of the app monitor configuration that you specify in this operation are changed. For any parameters that you omit, the existing values are kept.

You can't use this operation to change the tags of an existing app monitor. To change the tags of an existing app monitor, use TagResource.

To create a new app monitor, use CreateAppMonitor.

After you update an app monitor, sign in to the CloudWatch RUM console to get the updated JavaScript code snippet to add to your web application. For more information, see How do I find a code snippet that I've already generated?


1658
1659
1660
1661
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1658

def update_app_monitor(params = {}, options = {})
  req = build_request(:update_app_monitor, params)
  req.send_request(options)
end

#update_rum_metric_definition(params = {}) ⇒ Struct


1726
1727
1728
1729
# File 'gems/aws-sdk-cloudwatchrum/lib/aws-sdk-cloudwatchrum/client.rb', line 1726

def update_rum_metric_definition(params = {}, options = {})
  req = build_request(:update_rum_metric_definition, params)
  req.send_request(options)
end