Class: Aws::OAM::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::OAM::Client
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-oam/client.rb
Overview
An API client for OAM. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::OAM::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_link(params = {}) ⇒ Types::CreateLinkOutput
Creates a link between a source account and a sink that you have created in a monitoring account.
-
#create_sink(params = {}) ⇒ Types::CreateSinkOutput
Use this to create a sink in the current account, so that it can be used as a monitoring account in CloudWatch cross-account observability.
-
#delete_link(params = {}) ⇒ Struct
Deletes a link between a monitoring account sink and a source account.
-
#delete_sink(params = {}) ⇒ Struct
Deletes a sink.
-
#get_link(params = {}) ⇒ Types::GetLinkOutput
Returns complete information about one link.
-
#get_sink(params = {}) ⇒ Types::GetSinkOutput
Returns complete information about one monitoring account sink.
-
#get_sink_policy(params = {}) ⇒ Types::GetSinkPolicyOutput
Returns the current sink policy attached to this sink.
-
#list_attached_links(params = {}) ⇒ Types::ListAttachedLinksOutput
Returns a list of source account links that are linked to this monitoring account sink.
-
#list_links(params = {}) ⇒ Types::ListLinksOutput
Use this operation in a source account to return a list of links to monitoring account sinks that this source account has.
-
#list_sinks(params = {}) ⇒ Types::ListSinksOutput
Use this operation in a monitoring account to return the list of sinks created in that account.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceOutput
Displays the tags associated with a resource.
-
#put_sink_policy(params = {}) ⇒ Types::PutSinkPolicyOutput
Creates or updates the resource policy that grants permissions to source accounts to link to the monitoring account sink.
-
#tag_resource(params = {}) ⇒ Struct
Assigns one or more tags (key-value pairs) to the specified resource.
-
#untag_resource(params = {}) ⇒ Struct
Removes one or more tags from the specified resource.
-
#update_link(params = {}) ⇒ Types::UpdateLinkOutput
Use this operation to change what types of data are shared from a source account to its linked monitoring account sink.
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.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
413 414 415 |
# File 'lib/aws-sdk-oam/client.rb', line 413 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.
1254 1255 1256 |
# File 'lib/aws-sdk-oam/client.rb', line 1254 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.
1257 1258 1259 |
# File 'lib/aws-sdk-oam/client.rb', line 1257 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.
1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 |
# File 'lib/aws-sdk-oam/client.rb', line 1232 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-oam' context[:gem_version] = '1.19.0' Seahorse::Client::Request.new(handlers, context) end |
#create_link(params = {}) ⇒ Types::CreateLinkOutput
Creates a link between a source account and a sink that you have created in a monitoring account. After the link is created, data is sent from the source account to the monitoring account. When you create a link, you can optionally specify filters that specify which metric namespaces and which log groups are shared from the source account to the monitoring account.
Before you create a link, you must create a sink in the monitoring account and create a sink policy in that account. The sink policy must permit the source account to link to it. You can grant permission to source accounts by granting permission to an entire organization or to individual accounts.
For more information, see [CreateSink] and [PutSinkPolicy].
Each monitoring account can be linked to as many as 100,000 source accounts.
Each source account can be linked to as many as five monitoring accounts.
[1]: docs.aws.amazon.com/OAM/latest/APIReference/API_CreateSink.html [2]: docs.aws.amazon.com/OAM/latest/APIReference/API_PutSinkPolicy.html
540 541 542 543 |
# File 'lib/aws-sdk-oam/client.rb', line 540 def create_link(params = {}, = {}) req = build_request(:create_link, params) req.send_request() end |
#create_sink(params = {}) ⇒ Types::CreateSinkOutput
Use this to create a sink in the current account, so that it can be used as a monitoring account in CloudWatch cross-account observability. A sink is a resource that represents an attachment point in a monitoring account. Source accounts can link to the sink to send observability data.
After you create a sink, you must create a sink policy that allows source accounts to attach to it. For more information, see [PutSinkPolicy].
Each account can contain one sink per Region. If you delete a sink, you can then create a new one in that Region.
[1]: docs.aws.amazon.com/OAM/latest/APIReference/API_PutSinkPolicy.html
607 608 609 610 |
# File 'lib/aws-sdk-oam/client.rb', line 607 def create_sink(params = {}, = {}) req = build_request(:create_sink, params) req.send_request() end |
#delete_link(params = {}) ⇒ Struct
Deletes a link between a monitoring account sink and a source account. You must run this operation in the source account.
630 631 632 633 |
# File 'lib/aws-sdk-oam/client.rb', line 630 def delete_link(params = {}, = {}) req = build_request(:delete_link, params) req.send_request() end |
#delete_sink(params = {}) ⇒ Struct
Deletes a sink. You must delete all links to a sink before you can delete that sink.
653 654 655 656 |
# File 'lib/aws-sdk-oam/client.rb', line 653 def delete_sink(params = {}, = {}) req = build_request(:delete_sink, params) req.send_request() end |
#get_link(params = {}) ⇒ Types::GetLinkOutput
Returns complete information about one link.
To use this operation, provide the link ARN. To retrieve a list of link ARNs, use [ListLinks].
[1]: docs.aws.amazon.com/OAM/latest/APIReference/API_ListLinks.html
705 706 707 708 |
# File 'lib/aws-sdk-oam/client.rb', line 705 def get_link(params = {}, = {}) req = build_request(:get_link, params) req.send_request() end |
#get_sink(params = {}) ⇒ Types::GetSinkOutput
Returns complete information about one monitoring account sink.
To use this operation, provide the sink ARN. To retrieve a list of sink ARNs, use [ListSinks].
[1]: docs.aws.amazon.com/OAM/latest/APIReference/API_ListSinks.html
747 748 749 750 |
# File 'lib/aws-sdk-oam/client.rb', line 747 def get_sink(params = {}, = {}) req = build_request(:get_sink, params) req.send_request() end |
#get_sink_policy(params = {}) ⇒ Types::GetSinkPolicyOutput
Returns the current sink policy attached to this sink. The sink policy specifies what accounts can attach to this sink as source accounts, and what types of data they can share.
781 782 783 784 |
# File 'lib/aws-sdk-oam/client.rb', line 781 def get_sink_policy(params = {}, = {}) req = build_request(:get_sink_policy, params) req.send_request() end |
#list_attached_links(params = {}) ⇒ Types::ListAttachedLinksOutput
Returns a list of source account links that are linked to this monitoring account sink.
To use this operation, provide the sink ARN. To retrieve a list of sink ARNs, use [ListSinks].
To find a list of links for one source account, use [ListLinks].
[1]: docs.aws.amazon.com/OAM/latest/APIReference/API_ListSinks.html [2]: docs.aws.amazon.com/OAM/latest/APIReference/API_ListLinks.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
837 838 839 840 |
# File 'lib/aws-sdk-oam/client.rb', line 837 def list_attached_links(params = {}, = {}) req = build_request(:list_attached_links, params) req.send_request() end |
#list_links(params = {}) ⇒ Types::ListLinksOutput
Use this operation in a source account to return a list of links to monitoring account sinks that this source account has.
To find a list of links for one monitoring account sink, use
- ListAttachedLinks][1
-
from within the monitoring account.
[1]: docs.aws.amazon.com/OAM/latest/APIReference/API_ListAttachedLinks.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
888 889 890 891 |
# File 'lib/aws-sdk-oam/client.rb', line 888 def list_links(params = {}, = {}) req = build_request(:list_links, params) req.send_request() end |
#list_sinks(params = {}) ⇒ Types::ListSinksOutput
Use this operation in a monitoring account to return the list of sinks created in that account.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
929 930 931 932 |
# File 'lib/aws-sdk-oam/client.rb', line 929 def list_sinks(params = {}, = {}) req = build_request(:list_sinks, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceOutput
Displays the tags associated with a resource. Both sinks and links support tagging.
977 978 979 980 |
# File 'lib/aws-sdk-oam/client.rb', line 977 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#put_sink_policy(params = {}) ⇒ Types::PutSinkPolicyOutput
Creates or updates the resource policy that grants permissions to source accounts to link to the monitoring account sink. When you create a sink policy, you can grant permissions to all accounts in an organization or to individual accounts.
You can also use a sink policy to limit the types of data that is shared. The three types that you can allow or deny are:
-
Metrics - Specify with ‘AWS::CloudWatch::Metric`
-
**Log groups** - Specify with ‘AWS::Logs::LogGroup`
-
Traces - Specify with ‘AWS::XRay::Trace`
-
**Application Insights - Applications** - Specify with ‘AWS::ApplicationInsights::Application`
See the examples in this section to see how to specify permitted source accounts and data types.
1038 1039 1040 1041 |
# File 'lib/aws-sdk-oam/client.rb', line 1038 def put_sink_policy(params = {}, = {}) req = build_request(:put_sink_policy, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Assigns one or more tags (key-value pairs) to the specified resource. Both sinks and links can be tagged.
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 alarm, 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 alarm, 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.
Unlike tagging permissions in other Amazon Web Services services, to tag or untag links and sinks you must have the ‘oam:ResourceTag` permission. The `iam:ResourceTag` permission does not allow you to tag and untag links and sinks.
1100 1101 1102 1103 |
# File 'lib/aws-sdk-oam/client.rb', line 1100 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Removes one or more tags from the specified resource.
Unlike tagging permissions in other Amazon Web Services services, to tag or untag links and sinks you must have the ‘oam:ResourceTag` permission. The `iam:TagResource` permission does not allow you to tag and untag links and sinks.
1144 1145 1146 1147 |
# File 'lib/aws-sdk-oam/client.rb', line 1144 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_link(params = {}) ⇒ Types::UpdateLinkOutput
Use this operation to change what types of data are shared from a source account to its linked monitoring account sink. You can’t change the sink or change the monitoring account with this operation.
When you update a link, you can optionally specify filters that specify which metric namespaces and which log groups are shared from the source account to the monitoring account.
To update the list of tags associated with the sink, use [TagResource].
[1]: docs.aws.amazon.com/OAM/latest/APIReference/API_TagResource.html
1223 1224 1225 1226 |
# File 'lib/aws-sdk-oam/client.rb', line 1223 def update_link(params = {}, = {}) req = build_request(:update_link, params) req.send_request() 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.
1247 1248 1249 |
# File 'lib/aws-sdk-oam/client.rb', line 1247 def waiter_names [] end |