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.
473 474 475 |
# File 'lib/aws-sdk-oam/client.rb', line 473 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.
1368 1369 1370 |
# File 'lib/aws-sdk-oam/client.rb', line 1368 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.
1371 1372 1373 |
# File 'lib/aws-sdk-oam/client.rb', line 1371 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.
1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 |
# File 'lib/aws-sdk-oam/client.rb', line 1341 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::OAM') ) 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-oam' context[:gem_version] = '1.43.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
608 609 610 611 |
# File 'lib/aws-sdk-oam/client.rb', line 608 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
675 676 677 678 |
# File 'lib/aws-sdk-oam/client.rb', line 675 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.
698 699 700 701 |
# File 'lib/aws-sdk-oam/client.rb', line 698 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.
721 722 723 724 |
# File 'lib/aws-sdk-oam/client.rb', line 721 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
784 785 786 787 |
# File 'lib/aws-sdk-oam/client.rb', line 784 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
837 838 839 840 |
# File 'lib/aws-sdk-oam/client.rb', line 837 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.
871 872 873 874 |
# File 'lib/aws-sdk-oam/client.rb', line 871 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.
927 928 929 930 |
# File 'lib/aws-sdk-oam/client.rb', line 927 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.
978 979 980 981 |
# File 'lib/aws-sdk-oam/client.rb', line 978 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.
1019 1020 1021 1022 |
# File 'lib/aws-sdk-oam/client.rb', line 1019 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.
1067 1068 1069 1070 |
# File 'lib/aws-sdk-oam/client.rb', line 1067 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 six types of services with their respective resource 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`
-
**Internet Monitor** - Specify with ‘AWS::InternetMonitor::Monitor`
-
**Application Signals** - Specify with ‘AWS::ApplicationSignals::Service` and `AWS::ApplicationSignals::ServiceLevelObjective`
See the examples in this section to see how to specify permitted source accounts and data types.
1135 1136 1137 1138 |
# File 'lib/aws-sdk-oam/client.rb', line 1135 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.
1197 1198 1199 1200 |
# File 'lib/aws-sdk-oam/client.rb', line 1197 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.
1241 1242 1243 1244 |
# File 'lib/aws-sdk-oam/client.rb', line 1241 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
1332 1333 1334 1335 |
# File 'lib/aws-sdk-oam/client.rb', line 1332 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.
1361 1362 1363 |
# File 'lib/aws-sdk-oam/client.rb', line 1361 def waiter_names [] end |