Class: Aws::PrometheusService::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::PrometheusService::Client
- Includes:
- ClientStubs
- Defined in:
- gems/aws-sdk-prometheusservice/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.
See #initialize for a full list of supported configuration options.
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
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.
-
#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_workspace_alias(params = {}) ⇒ Struct
Updates the alias of an existing workspace.
Instance Method Summary collapse
-
#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.
Methods included from 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.
410 411 412 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 410 def initialize(*args) super end |
Instance Method Details
#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
.
463 464 465 466 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 463 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.
507 508 509 510 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 507 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
.
582 583 584 585 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 582 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. You can configure the scraper to control what
metrics are collected, and what transformations are applied prior to
sending them to your workspace.
If needed, an IAM role will be created for you that gives Amazon Managed Service for Prometheus access to the metrics in your cluster. For more information, see Using roles for scraping metrics from EKS in the Amazon Managed Service for Prometheus User Guide.
You cannot update a scraper. If you want to change the configuration of the scraper, create a new scraper and delete the old one.
The scrapeConfiguration
parameter contains the base64-encoded
version of the YAML configuration file.
689 690 691 692 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 689 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.
757 758 759 760 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 757 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.
787 788 789 790 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 787 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.
818 819 820 821 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 818 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.
854 855 856 857 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 854 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.
893 894 895 896 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 893 def delete_scraper(params = {}, = {}) req = build_request(:delete_scraper, params) req.send_request() end |
#delete_workspace(params = {}) ⇒ Struct
Deletes an existing workspace.
929 930 931 932 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 929 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.
962 963 964 965 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 962 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.
996 997 998 999 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 996 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
.
1038 1039 1040 1041 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1038 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
1089 1090 1091 1092 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1089 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
1131 1132 1133 1134 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1131 def describe_workspace(params = {}, = {}) req = build_request(:describe_workspace, 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.
1151 1152 1153 1154 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1151 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.
1212 1213 1214 1215 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1212 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.
1292 1293 1294 1295 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1292 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 workspaces and
rule groups namespaces.
1325 1326 1327 1328 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1325 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.
1386 1387 1388 1389 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1386 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
.
1438 1439 1440 1441 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1438 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
.
1507 1508 1509 1510 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1507 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 workspaces and rule groups namespaces.
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.
1544 1545 1546 1547 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1544 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 workspaces and rule groups namespaces.
1572 1573 1574 1575 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1572 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.
1615 1616 1617 1618 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1615 def update_logging_configuration(params = {}, = {}) req = build_request(:update_logging_configuration, params) req.send_request() end |
#update_workspace_alias(params = {}) ⇒ Struct
Updates the alias of an existing workspace.
1652 1653 1654 1655 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1652 def update_workspace_alias(params = {}, = {}) req = build_request(:update_workspace_alias, 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 |
1765 1766 1767 1768 1769 |
# File 'gems/aws-sdk-prometheusservice/lib/aws-sdk-prometheusservice/client.rb', line 1765 def wait_until(waiter_name, params = {}, = {}) w = waiter(waiter_name, ) yield(w.waiter) if block_given? # deprecated w.wait(params) end |