Class: Aws::CostExplorer::Types::AnomalySubscription
- Inherits:
-
Struct
- Object
- Struct
- Aws::CostExplorer::Types::AnomalySubscription
- Includes:
- Structure
- Defined in:
- lib/aws-sdk-costexplorer/types.rb
Overview
An ‘AnomalySubscription` resource (also referred to as an alert subscription) sends notifications about specific anomalies that meet an alerting criteria defined by you.
You can specify the frequency of the alerts and the subscribers to notify.
Anomaly subscriptions can be associated with one or more [ ‘AnomalyMonitor` ][1] resources, and they only send notifications about anomalies detected by those associated monitors. You can also configure a threshold to further control which anomalies are included in the notifications.
Anomalies that don’t exceed the chosen threshold and therefore don’t trigger notifications from an anomaly subscription will still be available on the console and from the [ ‘GetAnomalies` ][2] API.
[1]: docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_AnomalyMonitor.html [2]: docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetAnomalies.html
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#account_id ⇒ String
Your unique account identifier.
-
#frequency ⇒ String
The frequency that anomaly notifications are sent.
-
#monitor_arn_list ⇒ Array<String>
A list of cost anomaly monitors.
-
#subscribers ⇒ Array<Types::Subscriber>
A list of subscribers to notify.
-
#subscription_arn ⇒ String
The ‘AnomalySubscription` Amazon Resource Name (ARN).
-
#subscription_name ⇒ String
The name for the subscription.
-
#threshold ⇒ Float
(deprecated).
-
#threshold_expression ⇒ Types::Expression
An [Expression] object used to specify the anomalies that you want to generate alerts for.
Instance Attribute Details
#account_id ⇒ String
Your unique account identifier.
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |
#frequency ⇒ String
The frequency that anomaly notifications are sent. Notifications are sent either over email (for DAILY and WEEKLY frequencies) or SNS (for IMMEDIATE frequency). For more information, see [Creating an Amazon SNS topic for anomaly notifications].
[1]: docs.aws.amazon.com/cost-management/latest/userguide/ad-SNS.html
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |
#monitor_arn_list ⇒ Array<String>
A list of cost anomaly monitors.
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |
#subscribers ⇒ Array<Types::Subscriber>
A list of subscribers to notify.
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |
#subscription_arn ⇒ String
The ‘AnomalySubscription` Amazon Resource Name (ARN).
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |
#subscription_name ⇒ String
The name for the subscription.
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |
#threshold ⇒ Float
(deprecated)
An absolute dollar value that must be exceeded by the anomaly’s total impact (see [Impact] for more details) for an anomaly notification to be generated.
This field has been deprecated. To specify a threshold, use ThresholdExpression. Continued use of Threshold will be treated as shorthand syntax for a ThresholdExpression.
One of Threshold or ThresholdExpression is required for this resource. You cannot specify both.
[1]: docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Impact.html
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |
#threshold_expression ⇒ Types::Expression
An [Expression] object used to specify the anomalies that you want to generate alerts for. This supports dimensions and nested expressions. The supported dimensions are ‘ANOMALY_TOTAL_IMPACT_ABSOLUTE` and `ANOMALY_TOTAL_IMPACT_PERCENTAGE`, corresponding to an anomaly’s TotalImpact and TotalImpactPercentage, respectively (see [Impact] for more details). The supported nested expression types are `AND` and `OR`. The match option `GREATER_THAN_OR_EQUAL` is required. Values must be numbers between 0 and 10,000,000,000 in string format.
One of Threshold or ThresholdExpression is required for this resource. You cannot specify both.
The following are examples of valid ThresholdExpressions:
-
Absolute threshold: ‘{ “Dimensions”: { “Key”: “ANOMALY_TOTAL_IMPACT_ABSOLUTE”, “MatchOptions”: [ “GREATER_THAN_OR_EQUAL” ], “Values”: [ “100” ] } }`
-
Percentage threshold: ‘{ “Dimensions”: { “Key”: “ANOMALY_TOTAL_IMPACT_PERCENTAGE”, “MatchOptions”: [ “GREATER_THAN_OR_EQUAL” ], “Values”: [ “100” ] } }`
-
‘AND` two thresholds together: `{ “And”: [ { “Dimensions”: { “Key”: “ANOMALY_TOTAL_IMPACT_ABSOLUTE”, “MatchOptions”: [ “GREATER_THAN_OR_EQUAL” ], “Values”: [ “100” ] } }, { “Dimensions”: { “Key”: “ANOMALY_TOTAL_IMPACT_PERCENTAGE”, “MatchOptions”: [ “GREATER_THAN_OR_EQUAL” ], “Values”: [ “100” ] } } ] }`
-
‘OR` two thresholds together: `{ “Or”: [ { “Dimensions”: { “Key”: “ANOMALY_TOTAL_IMPACT_ABSOLUTE”, “MatchOptions”: [ “GREATER_THAN_OR_EQUAL” ], “Values”: [ “100” ] } }, { “Dimensions”: { “Key”: “ANOMALY_TOTAL_IMPACT_PERCENTAGE”, “MatchOptions”: [ “GREATER_THAN_OR_EQUAL” ], “Values”: [ “100” ] } } ] }`
[1]: docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html [2]: docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Impact.html
373 374 375 376 377 378 379 380 381 382 383 384 |
# File 'lib/aws-sdk-costexplorer/types.rb', line 373 class AnomalySubscription < Struct.new( :subscription_arn, :account_id, :monitor_arn_list, :subscribers, :threshold, :frequency, :subscription_name, :threshold_expression) SENSITIVE = [] include Aws::Structure end |