Class: Aws::PrometheusService::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::PrometheusService::Client
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-prometheusservice/client.rb
Overview
An API client for PrometheusService. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::PrometheusService::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
See #initialize for a full list of supported configuration options.
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#create_alert_manager_definition(params = {}) ⇒ Types::CreateAlertManagerDefinitionResponse
The ‘CreateAlertManagerDefinition` operation creates the alert manager definition in a workspace.
-
#create_logging_configuration(params = {}) ⇒ Types::CreateLoggingConfigurationResponse
The ‘CreateLoggingConfiguration` operation creates a logging configuration for the workspace.
-
#create_rule_groups_namespace(params = {}) ⇒ Types::CreateRuleGroupsNamespaceResponse
The ‘CreateRuleGroupsNamespace` operation creates a rule groups namespace within a workspace.
-
#create_scraper(params = {}) ⇒ Types::CreateScraperResponse
The ‘CreateScraper` operation creates a scraper to collect metrics.
-
#create_workspace(params = {}) ⇒ Types::CreateWorkspaceResponse
Creates a Prometheus workspace.
-
#delete_alert_manager_definition(params = {}) ⇒ Struct
Deletes the alert manager definition from a workspace.
-
#delete_logging_configuration(params = {}) ⇒ Struct
Deletes the logging configuration for a workspace.
-
#delete_rule_groups_namespace(params = {}) ⇒ Struct
Deletes one rule groups namespace and its associated rule groups definition.
-
#delete_scraper(params = {}) ⇒ Types::DeleteScraperResponse
The ‘DeleteScraper` operation deletes one scraper, and stops any metrics collection that the scraper performs.
-
#delete_workspace(params = {}) ⇒ Struct
Deletes an existing workspace.
-
#describe_alert_manager_definition(params = {}) ⇒ Types::DescribeAlertManagerDefinitionResponse
Retrieves the full information about the alert manager definition for a workspace.
-
#describe_logging_configuration(params = {}) ⇒ Types::DescribeLoggingConfigurationResponse
Returns complete information about the current logging configuration of the workspace.
-
#describe_rule_groups_namespace(params = {}) ⇒ Types::DescribeRuleGroupsNamespaceResponse
Returns complete information about one rule groups namespace.
-
#describe_scraper(params = {}) ⇒ Types::DescribeScraperResponse
The ‘DescribeScraper` operation displays information about an existing scraper.
-
#describe_workspace(params = {}) ⇒ Types::DescribeWorkspaceResponse
Returns information about an existing workspace.
-
#describe_workspace_configuration(params = {}) ⇒ Types::DescribeWorkspaceConfigurationResponse
Use this operation to return information about the configuration of a workspace.
-
#get_default_scraper_configuration(params = {}) ⇒ Types::GetDefaultScraperConfigurationResponse
The ‘GetDefaultScraperConfiguration` operation returns the default scraper configuration used when Amazon EKS creates a scraper for you.
-
#list_rule_groups_namespaces(params = {}) ⇒ Types::ListRuleGroupsNamespacesResponse
Returns a list of rule groups namespaces in a workspace.
-
#list_scrapers(params = {}) ⇒ Types::ListScrapersResponse
The ‘ListScrapers` operation lists all of the scrapers in your account.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
The ‘ListTagsForResource` operation returns the tags that are associated with an Amazon Managed Service for Prometheus resource.
-
#list_workspaces(params = {}) ⇒ Types::ListWorkspacesResponse
Lists all of the Amazon Managed Service for Prometheus workspaces in your account.
-
#put_alert_manager_definition(params = {}) ⇒ Types::PutAlertManagerDefinitionResponse
Updates an existing alert manager definition in a workspace.
-
#put_rule_groups_namespace(params = {}) ⇒ Types::PutRuleGroupsNamespaceResponse
Updates an existing rule groups namespace within a workspace.
-
#tag_resource(params = {}) ⇒ Struct
The ‘TagResource` operation associates tags with an Amazon Managed Service for Prometheus resource.
-
#untag_resource(params = {}) ⇒ Struct
Removes the specified tags from an Amazon Managed Service for Prometheus resource.
-
#update_logging_configuration(params = {}) ⇒ Types::UpdateLoggingConfigurationResponse
Updates the log group ARN or the workspace ID of the current logging configuration.
-
#update_scraper(params = {}) ⇒ Types::UpdateScraperResponse
Updates an existing scraper.
-
#update_workspace_alias(params = {}) ⇒ Struct
Updates the alias of an existing workspace.
-
#update_workspace_configuration(params = {}) ⇒ Types::UpdateWorkspaceConfigurationResponse
Use this operation to create or update the label sets, label set limits, and retention period of a workspace.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
-
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
467 468 469 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 467 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
2073 2074 2075 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 2073 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
2076 2077 2078 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 2076 def errors_module Errors end |
Instance Method Details
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1927 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) tracer = config.telemetry_provider.tracer_provider.tracer( Aws::Telemetry.module_to_tracer_name('Aws::PrometheusService') ) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config, tracer: tracer ) context[:gem_name] = 'aws-sdk-prometheusservice' context[:gem_version] = '1.50.0' Seahorse::Client::Request.new(handlers, context) end |
#create_alert_manager_definition(params = {}) ⇒ Types::CreateAlertManagerDefinitionResponse
The ‘CreateAlertManagerDefinition` operation creates the alert manager definition in a workspace. If a workspace already has an alert manager definition, don’t use this operation to update it. Instead, use ‘PutAlertManagerDefinition`.
520 521 522 523 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 520 def create_alert_manager_definition(params = {}, = {}) req = build_request(:create_alert_manager_definition, params) req.send_request() end |
#create_logging_configuration(params = {}) ⇒ Types::CreateLoggingConfigurationResponse
The ‘CreateLoggingConfiguration` operation creates a logging configuration for the workspace. Use this operation to set the CloudWatch log group to which the logs will be published to.
565 566 567 568 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 565 def create_logging_configuration(params = {}, = {}) req = build_request(:create_logging_configuration, params) req.send_request() end |
#create_rule_groups_namespace(params = {}) ⇒ Types::CreateRuleGroupsNamespaceResponse
The ‘CreateRuleGroupsNamespace` operation creates a rule groups namespace within a workspace. A rule groups namespace is associated with exactly one rules file. A workspace can have multiple rule groups namespaces.
Use this operation only to create new rule groups namespaces. To update an existing rule groups namespace, use ‘PutRuleGroupsNamespace`.
640 641 642 643 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 640 def create_rule_groups_namespace(params = {}, = {}) req = build_request(:create_rule_groups_namespace, params) req.send_request() end |
#create_scraper(params = {}) ⇒ Types::CreateScraperResponse
The ‘CreateScraper` operation creates a scraper to collect metrics. A scraper pulls metrics from Prometheus-compatible sources within an Amazon EKS cluster, and sends them to your Amazon Managed Service for Prometheus workspace. Scrapers are flexible, and can be configured to control what metrics are collected, the frequency of collection, what transformations are applied to the metrics, and more.
An IAM role will be created for you that Amazon Managed Service for Prometheus uses to access the metrics in your cluster. You must configure this role with a policy that allows it to scrape metrics from your cluster. For more information, see [Configuring your Amazon EKS cluster] in the *Amazon Managed Service for Prometheus User Guide*.
The ‘scrapeConfiguration` parameter contains the base-64 encoded YAML configuration for the scraper.
<note markdown=“1”> For more information about collectors, including what metrics are collected, and how to configure the scraper, see [Using an Amazon Web Services managed collector] in the *Amazon Managed Service for Prometheus User Guide*.
</note>
[1]: docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-how-to.html#AMP-collector-eks-setup [2]: docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-how-to.html
757 758 759 760 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 757 def create_scraper(params = {}, = {}) req = build_request(:create_scraper, params) req.send_request() end |
#create_workspace(params = {}) ⇒ Types::CreateWorkspaceResponse
Creates a Prometheus workspace. A workspace is a logical space dedicated to the storage and querying of Prometheus metrics. You can have one or more workspaces in each Region in your account.
825 826 827 828 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 825 def create_workspace(params = {}, = {}) req = build_request(:create_workspace, params) req.send_request() end |
#delete_alert_manager_definition(params = {}) ⇒ Struct
Deletes the alert manager definition from a workspace.
855 856 857 858 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 855 def delete_alert_manager_definition(params = {}, = {}) req = build_request(:delete_alert_manager_definition, params) req.send_request() end |
#delete_logging_configuration(params = {}) ⇒ Struct
Deletes the logging configuration for a workspace.
886 887 888 889 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 886 def delete_logging_configuration(params = {}, = {}) req = build_request(:delete_logging_configuration, params) req.send_request() end |
#delete_rule_groups_namespace(params = {}) ⇒ Struct
Deletes one rule groups namespace and its associated rule groups definition.
922 923 924 925 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 922 def delete_rule_groups_namespace(params = {}, = {}) req = build_request(:delete_rule_groups_namespace, params) req.send_request() end |
#delete_scraper(params = {}) ⇒ Types::DeleteScraperResponse
The ‘DeleteScraper` operation deletes one scraper, and stops any metrics collection that the scraper performs.
961 962 963 964 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 961 def delete_scraper(params = {}, = {}) req = build_request(:delete_scraper, params) req.send_request() end |
#delete_workspace(params = {}) ⇒ Struct
Deletes an existing workspace.
<note markdown=“1”> When you delete a workspace, the data that has been ingested into it is not immediately deleted. It will be permanently deleted within one month.
</note>
997 998 999 1000 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 997 def delete_workspace(params = {}, = {}) req = build_request(:delete_workspace, params) req.send_request() end |
#describe_alert_manager_definition(params = {}) ⇒ Types::DescribeAlertManagerDefinitionResponse
Retrieves the full information about the alert manager definition for a workspace.
1030 1031 1032 1033 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1030 def describe_alert_manager_definition(params = {}, = {}) req = build_request(:describe_alert_manager_definition, params) req.send_request() end |
#describe_logging_configuration(params = {}) ⇒ Types::DescribeLoggingConfigurationResponse
Returns complete information about the current logging configuration of the workspace.
1064 1065 1066 1067 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1064 def describe_logging_configuration(params = {}, = {}) req = build_request(:describe_logging_configuration, params) req.send_request() end |
#describe_rule_groups_namespace(params = {}) ⇒ Types::DescribeRuleGroupsNamespaceResponse
Returns complete information about one rule groups namespace. To retrieve a list of rule groups namespaces, use ‘ListRuleGroupsNamespaces`.
1106 1107 1108 1109 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1106 def describe_rule_groups_namespace(params = {}, = {}) req = build_request(:describe_rule_groups_namespace, params) req.send_request() end |
#describe_scraper(params = {}) ⇒ Types::DescribeScraperResponse
The ‘DescribeScraper` operation displays information about an existing scraper.
The following waiters are defined for this operation (see #wait_until for detailed usage):
* scraper_active
* scraper_deleted
1159 1160 1161 1162 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1159 def describe_scraper(params = {}, = {}) req = build_request(:describe_scraper, params) req.send_request() end |
#describe_workspace(params = {}) ⇒ Types::DescribeWorkspaceResponse
Returns information about an existing workspace.
The following waiters are defined for this operation (see #wait_until for detailed usage):
* workspace_active
* workspace_deleted
1201 1202 1203 1204 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1201 def describe_workspace(params = {}, = {}) req = build_request(:describe_workspace, params) req.send_request() end |
#describe_workspace_configuration(params = {}) ⇒ Types::DescribeWorkspaceConfigurationResponse
Use this operation to return information about the configuration of a workspace. The configuration details returned include workspace configuration status, label set limits, and retention period.
1243 1244 1245 1246 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1243 def describe_workspace_configuration(params = {}, = {}) req = build_request(:describe_workspace_configuration, params) req.send_request() end |
#get_default_scraper_configuration(params = {}) ⇒ Types::GetDefaultScraperConfigurationResponse
The ‘GetDefaultScraperConfiguration` operation returns the default scraper configuration used when Amazon EKS creates a scraper for you.
1263 1264 1265 1266 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1263 def get_default_scraper_configuration(params = {}, = {}) req = build_request(:get_default_scraper_configuration, params) req.send_request() end |
#list_rule_groups_namespaces(params = {}) ⇒ Types::ListRuleGroupsNamespacesResponse
Returns a list of rule groups namespaces in a workspace.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1324 1325 1326 1327 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1324 def list_rule_groups_namespaces(params = {}, = {}) req = build_request(:list_rule_groups_namespaces, params) req.send_request() end |
#list_scrapers(params = {}) ⇒ Types::ListScrapersResponse
The ‘ListScrapers` operation lists all of the scrapers in your account. This includes scrapers being created or deleted. You can optionally filter the returned list.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1406 1407 1408 1409 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1406 def list_scrapers(params = {}, = {}) req = build_request(:list_scrapers, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
The ‘ListTagsForResource` operation returns the tags that are associated with an Amazon Managed Service for Prometheus resource. Currently, the only resources that can be tagged are scrapers, workspaces, and rule groups namespaces.
1439 1440 1441 1442 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1439 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#list_workspaces(params = {}) ⇒ Types::ListWorkspacesResponse
Lists all of the Amazon Managed Service for Prometheus workspaces in your account. This includes workspaces being created or deleted.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1500 1501 1502 1503 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1500 def list_workspaces(params = {}, = {}) req = build_request(:list_workspaces, params) req.send_request() end |
#put_alert_manager_definition(params = {}) ⇒ Types::PutAlertManagerDefinitionResponse
Updates an existing alert manager definition in a workspace. If the workspace does not already have an alert manager definition, don’t use this operation to create it. Instead, use ‘CreateAlertManagerDefinition`.
1552 1553 1554 1555 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1552 def put_alert_manager_definition(params = {}, = {}) req = build_request(:put_alert_manager_definition, params) req.send_request() end |
#put_rule_groups_namespace(params = {}) ⇒ Types::PutRuleGroupsNamespaceResponse
Updates an existing rule groups namespace within a workspace. A rule groups namespace is associated with exactly one rules file. A workspace can have multiple rule groups namespaces.
Use this operation only to update existing rule groups namespaces. To create a new rule groups namespace, use ‘CreateRuleGroupsNamespace`.
You can’t use this operation to add tags to an existing rule groups namespace. Instead, use ‘TagResource`.
1621 1622 1623 1624 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1621 def put_rule_groups_namespace(params = {}, = {}) req = build_request(:put_rule_groups_namespace, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
The ‘TagResource` operation associates tags with an Amazon Managed Service for Prometheus resource. The only resources that can be tagged are rule groups namespaces, scrapers, and workspaces.
If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. 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. To remove a tag, use ‘UntagResource`.
1659 1660 1661 1662 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1659 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Removes the specified tags from an Amazon Managed Service for Prometheus resource. The only resources that can be tagged are rule groups namespaces, scrapers, and workspaces.
1687 1688 1689 1690 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1687 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_logging_configuration(params = {}) ⇒ Types::UpdateLoggingConfigurationResponse
Updates the log group ARN or the workspace ID of the current logging configuration.
1730 1731 1732 1733 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1730 def update_logging_configuration(params = {}, = {}) req = build_request(:update_logging_configuration, params) req.send_request() end |
#update_scraper(params = {}) ⇒ Types::UpdateScraperResponse
Updates an existing scraper.
You can’t use this function to update the source from which the scraper is collecting metrics. To change the source, delete the scraper and create a new one.
1814 1815 1816 1817 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1814 def update_scraper(params = {}, = {}) req = build_request(:update_scraper, params) req.send_request() end |
#update_workspace_alias(params = {}) ⇒ Struct
Updates the alias of an existing workspace.
1851 1852 1853 1854 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1851 def update_workspace_alias(params = {}, = {}) req = build_request(:update_workspace_alias, params) req.send_request() end |
#update_workspace_configuration(params = {}) ⇒ Types::UpdateWorkspaceConfigurationResponse
Use this operation to create or update the label sets, label set limits, and retention period of a workspace.
You must specify at least one of ‘limitsPerLabelSet` or `retentionPeriodInDays` for the request to be valid.
1918 1919 1920 1921 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 1918 def update_workspace_configuration(params = {}, = {}) req = build_request(:update_workspace_configuration, params) req.send_request() end |
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
## Basic Usage
A waiter will call an API operation until:
-
It is successful
-
It enters a terminal state
-
It makes the maximum number of attempts
In between attempts, the waiter will sleep.
# polls in a loop, sleeping between attempts
client.wait_until(waiter_name, params)
## Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.
# poll for ~25 seconds
client.wait_until(waiter_name, params, {
max_attempts: 5,
delay: 5,
})
## Callbacks
You can be notified before each polling attempt and before each delay. If you throw ‘:success` or `:failure` from these callbacks, it will terminate the waiter.
started_at = Time.now
client.wait_until(waiter_name, params, {
# disable max attempts
max_attempts: nil,
# poll for 1 hour, instead of a number of attempts
before_wait: -> (attempts, response) do
throw :failure if Time.now - started_at > 3600
end
})
## Handling Errors
When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
## Valid Waiters
The following table lists the valid waiter names, the operations they call, and the default ‘:delay` and `:max_attempts` values.
| waiter_name | params | :delay | :max_attempts | | —————– | ————————— | ——– | ————- | | scraper_active | #describe_scraper | 2 | 60 | | scraper_deleted | #describe_scraper | 2 | 60 | | workspace_active | #describe_workspace | 2 | 60 | | workspace_deleted | #describe_workspace | 2 | 60 |
2036 2037 2038 2039 2040 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 2036 def wait_until(waiter_name, params = {}, = {}) w = waiter(waiter_name, ) yield(w.waiter) if block_given? # deprecated w.wait(params) end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
2044 2045 2046 |
# File 'lib/aws-sdk-prometheusservice/client.rb', line 2044 def waiter_names waiters.keys end |