CloudWatchObservabilityAccessManager ************************************ Client ====== class CloudWatchObservabilityAccessManager.Client A low-level client representing CloudWatch Observability Access Manager Use Amazon CloudWatch Observability Access Manager to create and manage links between source accounts and monitoring accounts by using *CloudWatch cross-account observability*. With CloudWatch cross-account observability, you can monitor and troubleshoot applications that span multiple accounts within a Region. Seamlessly search, visualize, and analyze your metrics, logs, traces, Application Signals services and service level objectives (SLOs), Application Insights applications, and internet monitors in any of the linked accounts without account boundaries. Set up one or more Amazon Web Services accounts as *monitoring accounts* and link them with multiple *source accounts*. A monitoring account is a central Amazon Web Services account that can view and interact with observability data generated from source accounts. A source account is an individual Amazon Web Services account that generates observability data for the resources that reside in it. Source accounts share their observability data with the monitoring account. The shared observability data can include metrics in Amazon CloudWatch, logs in Amazon CloudWatch Logs, traces in X-Ray, Application Signals services and service level objectives (SLOs), applications in Amazon CloudWatch Application Insights, and internet monitors in CloudWatch Internet Monitor. When you set up a link, you can choose to share the metrics from all namespaces with the monitoring account, or filter to a subset of namespaces. And for CloudWatch Logs, you can choose to share all log groups with the monitoring account, or filter to a subset of log groups. import boto3 client = boto3.client('oam') These are the available methods: * can_paginate * close * create_link * create_sink * delete_link * delete_sink * get_link * get_paginator * get_sink * get_sink_policy * get_waiter * list_attached_links * list_links * list_sinks * list_tags_for_resource * put_sink_policy * tag_resource * untag_resource * update_link Paginators ========== Paginators are available on a client instance via the "get_paginator" method. For more detailed instructions and examples on the usage of paginators, see the paginators user guide. The available paginators are: * ListAttachedLinks * ListLinks * ListSinks CloudWatchObservabilityAccessManager / Paginator / ListLinks ListLinks ********* class CloudWatchObservabilityAccessManager.Paginator.ListLinks paginator = client.get_paginator('list_links') paginate(**kwargs) Creates an iterator that will paginate through responses from "CloudWatchObservabilityAccessManager.Client.list_links()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max- items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'Id': 'string', 'Label': 'string', 'ResourceTypes': [ 'string', ], 'SinkArn': 'string' }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* An array of structures that contain the information about the returned links. * *(dict) --* A structure that contains information about one of this source account's links to a monitoring account. * **Arn** *(string) --* The ARN of the link. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the link ARN. * **Label** *(string) --* The label that was assigned to this link at creation, with the variables resolved to their actual values. * **ResourceTypes** *(list) --* The resource types supported by this link. * *(string) --* * **SinkArn** *(string) --* The ARN of the sink that this link is attached to. CloudWatchObservabilityAccessManager / Paginator / ListSinks ListSinks ********* class CloudWatchObservabilityAccessManager.Paginator.ListSinks paginator = client.get_paginator('list_sinks') paginate(**kwargs) Creates an iterator that will paginate through responses from "CloudWatchObservabilityAccessManager.Client.list_sinks()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max- items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'Id': 'string', 'Name': 'string' }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* An array of structures that contain the information about the returned sinks. * *(dict) --* A structure that contains information about one of this monitoring account's sinks. * **Arn** *(string) --* The ARN of the sink. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the sink ARN. * **Name** *(string) --* The name of the sink. CloudWatchObservabilityAccessManager / Paginator / ListAttachedLinks ListAttachedLinks ***************** class CloudWatchObservabilityAccessManager.Paginator.ListAttachedLinks paginator = client.get_paginator('list_attached_links') paginate(**kwargs) Creates an iterator that will paginate through responses from " CloudWatchObservabilityAccessManager.Client.list_attached_links ()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( SinkIdentifier='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **SinkIdentifier** (*string*) -- **[REQUIRED]** The ARN of the sink that you want to retrieve links for. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Label': 'string', 'LinkArn': 'string', 'ResourceTypes': [ 'string', ] }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* An array of structures that contain the information about the attached links. * *(dict) --* A structure that contains information about one link attached to this monitoring account sink. * **Label** *(string) --* The label that was assigned to this link at creation, with the variables resolved to their actual values. * **LinkArn** *(string) --* The ARN of the link. * **ResourceTypes** *(list) --* The resource types supported by this link. * *(string) --* CloudWatchObservabilityAccessManager / Client / get_paginator get_paginator ************* CloudWatchObservabilityAccessManager.Client.get_paginator(operation_name) Create a paginator for an operation. Parameters: **operation_name** (*string*) -- The operation name. This is the same name as the method name on the client. For example, if the method name is "create_foo", and you'd normally invoke the operation as "client.create_foo(**kwargs)", if the "create_foo" operation can be paginated, you can use the call "client.get_paginator("create_foo")". Raises: **OperationNotPageableError** -- Raised if the operation is not pageable. You can use the "client.can_paginate" method to check if an operation is pageable. Return type: "botocore.paginate.Paginator" Returns: A paginator object. CloudWatchObservabilityAccessManager / Client / create_link create_link *********** CloudWatchObservabilityAccessManager.Client.create_link(**kwargs) 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. See also: AWS API Documentation **Request Syntax** response = client.create_link( LabelTemplate='string', LinkConfiguration={ 'LogGroupConfiguration': { 'Filter': 'string' }, 'MetricConfiguration': { 'Filter': 'string' } }, ResourceTypes=[ 'AWS::CloudWatch::Metric'|'AWS::Logs::LogGroup'|'AWS::XRay::Trace'|'AWS::ApplicationInsights::Application'|'AWS::InternetMonitor::Monitor'|'AWS::ApplicationSignals::Service'|'AWS::ApplicationSignals::ServiceLevelObjective', ], SinkIdentifier='string', Tags={ 'string': 'string' } ) Parameters: * **LabelTemplate** (*string*) -- **[REQUIRED]** Specify a friendly human-readable name to use to identify this source account when you are viewing data from it in the monitoring account. You can use a custom label or use the following variables: * "$AccountName" is the name of the account * "$AccountEmail" is the globally unique email address of the account * "$AccountEmailNoDomain" is the email address of the account without the domain name Note: In the Amazon Web Services GovCloud (US-East) and Amazon Web Services GovCloud (US-West) Regions, the only supported option is to use custom labels, and the "$AccountName", "$AccountEmail", and "$AccountEmailNoDomain" variables all resolve as *account-id* instead of the specified variable. * **LinkConfiguration** (*dict*) -- Use this structure to optionally create filters that specify that only some metric namespaces or log groups are to be shared from the source account to the monitoring account. * **LogGroupConfiguration** *(dict) --* Use this structure to filter which log groups are to send log events from the source account to the monitoring account. * **Filter** *(string) --* **[REQUIRED]** Use this field to specify which log groups are to share their log events with the monitoring account. Use the term "LogGroupName" and one or more of the following operands. Use single quotation marks (') around log group names. The matching of log group names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "LogGroupName IN ('This-Log-Group', 'Other-Log-Group')" includes only the log groups with names "This-Log-Group" and "Other-Log-Group". * "LogGroupName NOT IN ('Private-Log-Group', 'Private-Log- Group-2')" includes all log groups except the log groups with names "Private-Log-Group" and "Private-Log- Group-2". * "LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%'" includes all log groups that have names that start with "aws/lambda/" or "AWSLogs". Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all log groups with the monitoring account. * **MetricConfiguration** *(dict) --* Use this structure to filter which metric namespaces are to be shared from the source account to the monitoring account. * **Filter** *(string) --* **[REQUIRED]** Use this field to specify which metrics are to be shared with the monitoring account. Use the term "Namespace" and one or more of the following operands. Use single quotation marks (') around namespace names. The matching of namespace names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "Namespace NOT LIKE 'AWS/%'" includes only namespaces that don't start with "AWS/", such as custom namespaces. * "Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3')" includes only the metrics in the EC2, Elastic Load Balancing, and Amazon S3 namespaces. * "Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%'" includes only the EC2 namespace and your custom namespaces. Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all metric namespaces with the monitoring account. * **ResourceTypes** (*list*) -- **[REQUIRED]** An array of strings that define which types of data that the source account shares with the monitoring account. * *(string) --* * **SinkIdentifier** (*string*) -- **[REQUIRED]** The ARN of the sink to use to create this link. You can use ListSinks to find the ARNs of sinks. For more information about sinks, see CreateSink. * **Tags** (*dict*) -- Assigns one or more tags (key-value pairs) to the link. 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. For more information about using tags to control access, see Controlling access to Amazon Web Services resources using tags. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'Id': 'string', 'Label': 'string', 'LabelTemplate': 'string', 'LinkConfiguration': { 'LogGroupConfiguration': { 'Filter': 'string' }, 'MetricConfiguration': { 'Filter': 'string' } }, 'ResourceTypes': [ 'string', ], 'SinkArn': 'string', 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **Arn** *(string) --* The ARN of the link that is newly created. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the link ARN. * **Label** *(string) --* The label that you assigned to this link. If the "labelTemplate" includes variables, this field displays the variables resolved to their actual values. * **LabelTemplate** *(string) --* The exact label template that you specified, with the variables not resolved. * **LinkConfiguration** *(dict) --* This structure includes filters that specify which metric namespaces and which log groups are shared from the source account to the monitoring account. * **LogGroupConfiguration** *(dict) --* Use this structure to filter which log groups are to send log events from the source account to the monitoring account. * **Filter** *(string) --* Use this field to specify which log groups are to share their log events with the monitoring account. Use the term "LogGroupName" and one or more of the following operands. Use single quotation marks (') around log group names. The matching of log group names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "LogGroupName IN ('This-Log-Group', 'Other-Log- Group')" includes only the log groups with names "This-Log-Group" and "Other-Log-Group". * "LogGroupName NOT IN ('Private-Log-Group', 'Private- Log-Group-2')" includes all log groups except the log groups with names "Private-Log-Group" and "Private- Log-Group-2". * "LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%'" includes all log groups that have names that start with "aws/lambda/" or "AWSLogs". Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all log groups with the monitoring account. * **MetricConfiguration** *(dict) --* Use this structure to filter which metric namespaces are to be shared from the source account to the monitoring account. * **Filter** *(string) --* Use this field to specify which metrics are to be shared with the monitoring account. Use the term "Namespace" and one or more of the following operands. Use single quotation marks (') around namespace names. The matching of namespace names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "Namespace NOT LIKE 'AWS/%'" includes only namespaces that don't start with "AWS/", such as custom namespaces. * "Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3')" includes only the metrics in the EC2, Elastic Load Balancing, and Amazon S3 namespaces. * "Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%'" includes only the EC2 namespace and your custom namespaces. Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all metric namespaces with the monitoring account. * **ResourceTypes** *(list) --* The resource types supported by this link. * *(string) --* * **SinkArn** *(string) --* The ARN of the sink that is used for this link. * **Tags** *(dict) --* The tags assigned to the link. * *(string) --* * *(string) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.Conflict Exception" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.ServiceQ uotaExceededException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" CloudWatchObservabilityAccessManager / Client / can_paginate can_paginate ************ CloudWatchObservabilityAccessManager.Client.can_paginate(operation_name) Check if an operation can be paginated. Parameters: **operation_name** (*string*) -- The operation name. This is the same name as the method name on the client. For example, if the method name is "create_foo", and you'd normally invoke the operation as "client.create_foo(**kwargs)", if the "create_foo" operation can be paginated, you can use the call "client.get_paginator("create_foo")". Returns: "True" if the operation can be paginated, "False" otherwise. CloudWatchObservabilityAccessManager / Client / put_sink_policy put_sink_policy *************** CloudWatchObservabilityAccessManager.Client.put_sink_policy(**kwargs) 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. See also: AWS API Documentation **Request Syntax** response = client.put_sink_policy( Policy='string', SinkIdentifier='string' ) Parameters: * **Policy** (*string*) -- **[REQUIRED]** The JSON policy to use. If you are updating an existing policy, the entire existing policy is replaced by what you specify here. The policy must be in JSON string format with quotation marks escaped and no newlines. For examples of different types of policies, see the **Examples** section on this page. * **SinkIdentifier** (*string*) -- **[REQUIRED]** The ARN of the sink to attach this policy to. Return type: dict Returns: **Response Syntax** { 'Policy': 'string', 'SinkArn': 'string', 'SinkId': 'string' } **Response Structure** * *(dict) --* * **Policy** *(string) --* The policy that you specified. * **SinkArn** *(string) --* The ARN of the sink. * **SinkId** *(string) --* The random ID string that Amazon Web Services generated as part of the sink ARN. **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / delete_link delete_link *********** CloudWatchObservabilityAccessManager.Client.delete_link(**kwargs) Deletes a link between a monitoring account sink and a source account. You must run this operation in the source account. See also: AWS API Documentation **Request Syntax** response = client.delete_link( Identifier='string' ) Parameters: **Identifier** (*string*) -- **[REQUIRED]** The ARN of the link to delete. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / list_links list_links ********** CloudWatchObservabilityAccessManager.Client.list_links(**kwargs) 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 from within the monitoring account. See also: AWS API Documentation **Request Syntax** response = client.list_links( MaxResults=123, NextToken='string' ) Parameters: * **MaxResults** (*integer*) -- Limits the number of returned links to the specified number. * **NextToken** (*string*) -- The token for the next set of items to return. You received this token from a previous call. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'Id': 'string', 'Label': 'string', 'ResourceTypes': [ 'string', ], 'SinkArn': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* An array of structures that contain the information about the returned links. * *(dict) --* A structure that contains information about one of this source account's links to a monitoring account. * **Arn** *(string) --* The ARN of the link. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the link ARN. * **Label** *(string) --* The label that was assigned to this link at creation, with the variables resolved to their actual values. * **ResourceTypes** *(list) --* The resource types supported by this link. * *(string) --* * **SinkArn** *(string) --* The ARN of the sink that this link is attached to. * **NextToken** *(string) --* The token to use when requesting the next set of links. **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / list_tags_for_resource list_tags_for_resource ********************** CloudWatchObservabilityAccessManager.Client.list_tags_for_resource(**kwargs) Displays the tags associated with a resource. Both sinks and links support tagging. See also: AWS API Documentation **Request Syntax** response = client.list_tags_for_resource( ResourceArn='string' ) Parameters: **ResourceArn** (*string*) -- **[REQUIRED]** The ARN of the resource that you want to view tags for. The ARN format of a sink is "arn:aws:oam:Region:account-id:sink /sink-id" The ARN format of a link is "arn:aws:oam:Region:account-id:link /link-id" For more information about ARN format, see CloudWatch Logs resources and operations. Warning: Unlike tagging permissions in other Amazon Web Services services, to retrieve the list of tags for links or sinks you must have the "oam:RequestTag" permission. The "aws:ReguestTag" permission does not allow you to tag and untag links and sinks. Return type: dict Returns: **Response Syntax** { 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **Tags** *(dict) --* The list of tags associated with the requested resource.> * *(string) --* * *(string) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Validati onException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / get_link get_link ******** CloudWatchObservabilityAccessManager.Client.get_link(**kwargs) Returns complete information about one link. To use this operation, provide the link ARN. To retrieve a list of link ARNs, use ListLinks. See also: AWS API Documentation **Request Syntax** response = client.get_link( Identifier='string', IncludeTags=True|False ) Parameters: * **Identifier** (*string*) -- **[REQUIRED]** The ARN of the link to retrieve information for. * **IncludeTags** (*boolean*) -- Specifies whether to include the tags associated with the link in the response. When "IncludeTags" is set to "true" and the caller has the required permission, "oam:ListTagsForResource", the API will return the tags for the specified resource. If the caller doesn't have the required permission, "oam:ListTagsForResource", the API will raise an exception. The default value is "false". Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'Id': 'string', 'Label': 'string', 'LabelTemplate': 'string', 'LinkConfiguration': { 'LogGroupConfiguration': { 'Filter': 'string' }, 'MetricConfiguration': { 'Filter': 'string' } }, 'ResourceTypes': [ 'string', ], 'SinkArn': 'string', 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **Arn** *(string) --* The ARN of the link. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the link ARN. * **Label** *(string) --* The label that you assigned to this link, with the variables resolved to their actual values. * **LabelTemplate** *(string) --* The exact label template that was specified when the link was created, with the template variables not resolved. * **LinkConfiguration** *(dict) --* This structure includes filters that specify which metric namespaces and which log groups are shared from the source account to the monitoring account. * **LogGroupConfiguration** *(dict) --* Use this structure to filter which log groups are to send log events from the source account to the monitoring account. * **Filter** *(string) --* Use this field to specify which log groups are to share their log events with the monitoring account. Use the term "LogGroupName" and one or more of the following operands. Use single quotation marks (') around log group names. The matching of log group names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "LogGroupName IN ('This-Log-Group', 'Other-Log- Group')" includes only the log groups with names "This-Log-Group" and "Other-Log-Group". * "LogGroupName NOT IN ('Private-Log-Group', 'Private- Log-Group-2')" includes all log groups except the log groups with names "Private-Log-Group" and "Private- Log-Group-2". * "LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%'" includes all log groups that have names that start with "aws/lambda/" or "AWSLogs". Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all log groups with the monitoring account. * **MetricConfiguration** *(dict) --* Use this structure to filter which metric namespaces are to be shared from the source account to the monitoring account. * **Filter** *(string) --* Use this field to specify which metrics are to be shared with the monitoring account. Use the term "Namespace" and one or more of the following operands. Use single quotation marks (') around namespace names. The matching of namespace names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "Namespace NOT LIKE 'AWS/%'" includes only namespaces that don't start with "AWS/", such as custom namespaces. * "Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3')" includes only the metrics in the EC2, Elastic Load Balancing, and Amazon S3 namespaces. * "Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%'" includes only the EC2 namespace and your custom namespaces. Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all metric namespaces with the monitoring account. * **ResourceTypes** *(list) --* The resource types supported by this link. * *(string) --* * **SinkArn** *(string) --* The ARN of the sink that is used for this link. * **Tags** *(dict) --* The tags assigned to the link. * *(string) --* * *(string) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / untag_resource untag_resource ************** CloudWatchObservabilityAccessManager.Client.untag_resource(**kwargs) Removes one or more tags from the specified resource. Warning: 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. See also: AWS API Documentation **Request Syntax** response = client.untag_resource( ResourceArn='string', TagKeys=[ 'string', ] ) Parameters: * **ResourceArn** (*string*) -- **[REQUIRED]** The ARN of the resource that you're removing tags from. The ARN format of a sink is "arn:aws:oam:Region:account- id:sink/sink-id" The ARN format of a link is "arn:aws:oam:Region:account- id:link/link-id" For more information about ARN format, see CloudWatch Logs resources and operations. * **TagKeys** (*list*) -- **[REQUIRED]** The list of tag keys to remove from the resource. * *(string) --* Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Validati onException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / update_link update_link *********** CloudWatchObservabilityAccessManager.Client.update_link(**kwargs) 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. See also: AWS API Documentation **Request Syntax** response = client.update_link( Identifier='string', IncludeTags=True|False, LinkConfiguration={ 'LogGroupConfiguration': { 'Filter': 'string' }, 'MetricConfiguration': { 'Filter': 'string' } }, ResourceTypes=[ 'AWS::CloudWatch::Metric'|'AWS::Logs::LogGroup'|'AWS::XRay::Trace'|'AWS::ApplicationInsights::Application'|'AWS::InternetMonitor::Monitor'|'AWS::ApplicationSignals::Service'|'AWS::ApplicationSignals::ServiceLevelObjective', ] ) Parameters: * **Identifier** (*string*) -- **[REQUIRED]** The ARN of the link that you want to update. * **IncludeTags** (*boolean*) -- Specifies whether to include the tags associated with the link in the response after the update operation. When "IncludeTags" is set to "true" and the caller has the required permission, "oam:ListTagsForResource", the API will return the tags for the specified resource. If the caller doesn't have the required permission, "oam:ListTagsForResource", the API will raise an exception. The default value is "false". * **LinkConfiguration** (*dict*) -- Use this structure to filter which metric namespaces and which log groups are to be shared from the source account to the monitoring account. * **LogGroupConfiguration** *(dict) --* Use this structure to filter which log groups are to send log events from the source account to the monitoring account. * **Filter** *(string) --* **[REQUIRED]** Use this field to specify which log groups are to share their log events with the monitoring account. Use the term "LogGroupName" and one or more of the following operands. Use single quotation marks (') around log group names. The matching of log group names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "LogGroupName IN ('This-Log-Group', 'Other-Log-Group')" includes only the log groups with names "This-Log-Group" and "Other-Log-Group". * "LogGroupName NOT IN ('Private-Log-Group', 'Private-Log- Group-2')" includes all log groups except the log groups with names "Private-Log-Group" and "Private-Log- Group-2". * "LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%'" includes all log groups that have names that start with "aws/lambda/" or "AWSLogs". Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all log groups with the monitoring account. * **MetricConfiguration** *(dict) --* Use this structure to filter which metric namespaces are to be shared from the source account to the monitoring account. * **Filter** *(string) --* **[REQUIRED]** Use this field to specify which metrics are to be shared with the monitoring account. Use the term "Namespace" and one or more of the following operands. Use single quotation marks (') around namespace names. The matching of namespace names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "Namespace NOT LIKE 'AWS/%'" includes only namespaces that don't start with "AWS/", such as custom namespaces. * "Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3')" includes only the metrics in the EC2, Elastic Load Balancing, and Amazon S3 namespaces. * "Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%'" includes only the EC2 namespace and your custom namespaces. Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all metric namespaces with the monitoring account. * **ResourceTypes** (*list*) -- **[REQUIRED]** An array of strings that define which types of data that the source account will send to the monitoring account. Your input here replaces the current set of data types that are shared. * *(string) --* Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'Id': 'string', 'Label': 'string', 'LabelTemplate': 'string', 'LinkConfiguration': { 'LogGroupConfiguration': { 'Filter': 'string' }, 'MetricConfiguration': { 'Filter': 'string' } }, 'ResourceTypes': [ 'string', ], 'SinkArn': 'string', 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **Arn** *(string) --* The ARN of the link that you have updated. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the sink ARN. * **Label** *(string) --* The label assigned to this link, with the variables resolved to their actual values. * **LabelTemplate** *(string) --* The exact label template that was specified when the link was created, with the template variables not resolved. * **LinkConfiguration** *(dict) --* This structure includes filters that specify which metric namespaces and which log groups are shared from the source account to the monitoring account. * **LogGroupConfiguration** *(dict) --* Use this structure to filter which log groups are to send log events from the source account to the monitoring account. * **Filter** *(string) --* Use this field to specify which log groups are to share their log events with the monitoring account. Use the term "LogGroupName" and one or more of the following operands. Use single quotation marks (') around log group names. The matching of log group names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "LogGroupName IN ('This-Log-Group', 'Other-Log- Group')" includes only the log groups with names "This-Log-Group" and "Other-Log-Group". * "LogGroupName NOT IN ('Private-Log-Group', 'Private- Log-Group-2')" includes all log groups except the log groups with names "Private-Log-Group" and "Private- Log-Group-2". * "LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%'" includes all log groups that have names that start with "aws/lambda/" or "AWSLogs". Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all log groups with the monitoring account. * **MetricConfiguration** *(dict) --* Use this structure to filter which metric namespaces are to be shared from the source account to the monitoring account. * **Filter** *(string) --* Use this field to specify which metrics are to be shared with the monitoring account. Use the term "Namespace" and one or more of the following operands. Use single quotation marks (') around namespace names. The matching of namespace names is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are "AND" and "OR". * "=" and "!=" * "AND" * "OR" * "LIKE" and "NOT LIKE". These can be used only as prefix searches. Include a "%" at the end of the string that you want to search for and include. * "IN" and "NOT IN", using parentheses "( )" Examples: * "Namespace NOT LIKE 'AWS/%'" includes only namespaces that don't start with "AWS/", such as custom namespaces. * "Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3')" includes only the metrics in the EC2, Elastic Load Balancing, and Amazon S3 namespaces. * "Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%'" includes only the EC2 namespace and your custom namespaces. Note: If you are updating a link that uses filters, you can specify "*" as the only value for the "filter" parameter to delete the filter and share all metric namespaces with the monitoring account. * **ResourceTypes** *(list) --* The resource types now supported by this link. * *(string) --* * **SinkArn** *(string) --* The ARN of the sink that is used for this link. * **Tags** *(dict) --* The tags assigned to the link. * *(string) --* * *(string) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / get_waiter get_waiter ********** CloudWatchObservabilityAccessManager.Client.get_waiter(waiter_name) Returns an object that can wait for some condition. Parameters: **waiter_name** (*str*) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters. Returns: The specified waiter object. Return type: "botocore.waiter.Waiter" CloudWatchObservabilityAccessManager / Client / list_sinks list_sinks ********** CloudWatchObservabilityAccessManager.Client.list_sinks(**kwargs) Use this operation in a monitoring account to return the list of sinks created in that account. See also: AWS API Documentation **Request Syntax** response = client.list_sinks( MaxResults=123, NextToken='string' ) Parameters: * **MaxResults** (*integer*) -- Limits the number of returned links to the specified number. * **NextToken** (*string*) -- The token for the next set of items to return. You received this token from a previous call. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'Id': 'string', 'Name': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* An array of structures that contain the information about the returned sinks. * *(dict) --* A structure that contains information about one of this monitoring account's sinks. * **Arn** *(string) --* The ARN of the sink. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the sink ARN. * **Name** *(string) --* The name of the sink. * **NextToken** *(string) --* The token to use when requesting the next set of sinks. **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / list_attached_links list_attached_links ******************* CloudWatchObservabilityAccessManager.Client.list_attached_links(**kwargs) 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. See also: AWS API Documentation **Request Syntax** response = client.list_attached_links( MaxResults=123, NextToken='string', SinkIdentifier='string' ) Parameters: * **MaxResults** (*integer*) -- Limits the number of returned links to the specified number. * **NextToken** (*string*) -- The token for the next set of items to return. You received this token from a previous call. * **SinkIdentifier** (*string*) -- **[REQUIRED]** The ARN of the sink that you want to retrieve links for. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Label': 'string', 'LinkArn': 'string', 'ResourceTypes': [ 'string', ] }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* An array of structures that contain the information about the attached links. * *(dict) --* A structure that contains information about one link attached to this monitoring account sink. * **Label** *(string) --* The label that was assigned to this link at creation, with the variables resolved to their actual values. * **LinkArn** *(string) --* The ARN of the link. * **ResourceTypes** *(list) --* The resource types supported by this link. * *(string) --* * **NextToken** *(string) --* The token to use when requesting the next set of links. **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / get_sink get_sink ******** CloudWatchObservabilityAccessManager.Client.get_sink(**kwargs) 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. See also: AWS API Documentation **Request Syntax** response = client.get_sink( Identifier='string', IncludeTags=True|False ) Parameters: * **Identifier** (*string*) -- **[REQUIRED]** The ARN of the sink to retrieve information for. * **IncludeTags** (*boolean*) -- Specifies whether to include the tags associated with the sink in the response. When "IncludeTags" is set to "true" and the caller has the required permission, "oam:ListTagsForResource", the API will return the tags for the specified resource. If the caller doesn't have the required permission, "oam:ListTagsForResource", the API will raise an exception. The default value is "false". Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'Id': 'string', 'Name': 'string', 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **Arn** *(string) --* The ARN of the sink. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the sink ARN. * **Name** *(string) --* The name of the sink. * **Tags** *(dict) --* The tags assigned to the sink. * *(string) --* * *(string) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / close close ***** CloudWatchObservabilityAccessManager.Client.close() Closes underlying endpoint connections. CloudWatchObservabilityAccessManager / Client / create_sink create_sink *********** CloudWatchObservabilityAccessManager.Client.create_sink(**kwargs) 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. See also: AWS API Documentation **Request Syntax** response = client.create_sink( Name='string', Tags={ 'string': 'string' } ) Parameters: * **Name** (*string*) -- **[REQUIRED]** A name for the sink. * **Tags** (*dict*) -- Assigns one or more tags (key-value pairs) to the link. 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. For more information about using tags to control access, see Controlling access to Amazon Web Services resources using tags. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'Id': 'string', 'Name': 'string', 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **Arn** *(string) --* The ARN of the sink that is newly created. * **Id** *(string) --* The random ID string that Amazon Web Services generated as part of the sink ARN. * **Name** *(string) --* The name of the sink. * **Tags** *(dict) --* The tags assigned to the sink. * *(string) --* * *(string) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.Conflict Exception" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.ServiceQ uotaExceededException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" CloudWatchObservabilityAccessManager / Client / delete_sink delete_sink *********** CloudWatchObservabilityAccessManager.Client.delete_sink(**kwargs) Deletes a sink. You must delete all links to a sink before you can delete that sink. See also: AWS API Documentation **Request Syntax** response = client.delete_sink( Identifier='string' ) Parameters: **Identifier** (*string*) -- **[REQUIRED]** The ARN of the sink to delete. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.Conflict Exception" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / tag_resource tag_resource ************ CloudWatchObservabilityAccessManager.Client.tag_resource(**kwargs) 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. Warning: 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. See also: AWS API Documentation **Request Syntax** response = client.tag_resource( ResourceArn='string', Tags={ 'string': 'string' } ) Parameters: * **ResourceArn** (*string*) -- **[REQUIRED]** The ARN of the resource that you're adding tags to. The ARN format of a sink is "arn:aws:oam:Region:account- id:sink/sink-id" The ARN format of a link is "arn:aws:oam:Region:account- id:link/link-id" For more information about ARN format, see CloudWatch Logs resources and operations. * **Tags** (*dict*) -- **[REQUIRED]** The list of key-value pairs to associate with the resource. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Validati onException" * "CloudWatchObservabilityAccessManager.Client.exceptions.TooManyT agsException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException" CloudWatchObservabilityAccessManager / Client / get_sink_policy get_sink_policy *************** CloudWatchObservabilityAccessManager.Client.get_sink_policy(**kwargs) 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. See also: AWS API Documentation **Request Syntax** response = client.get_sink_policy( SinkIdentifier='string' ) Parameters: **SinkIdentifier** (*string*) -- **[REQUIRED]** The ARN of the sink to retrieve the policy of. Return type: dict Returns: **Response Syntax** { 'Policy': 'string', 'SinkArn': 'string', 'SinkId': 'string' } **Response Structure** * *(dict) --* * **Policy** *(string) --* The policy that you specified, in JSON format. * **SinkArn** *(string) --* The ARN of the sink. * **SinkId** *(string) --* The random ID string that Amazon Web Services generated as part of the sink ARN. **Exceptions** * "CloudWatchObservabilityAccessManager.Client.exceptions.Internal ServiceFault" * "CloudWatchObservabilityAccessManager.Client.exceptions.MissingR equiredParameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.InvalidP arameterException" * "CloudWatchObservabilityAccessManager.Client.exceptions.Resource NotFoundException"