Class: Aws::CostExplorer::Types::AnomalySubscription

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-costexplorer/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 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 API.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#account_idString

Your unique account identifier.

Returns:

  • (String)


378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

class AnomalySubscription < Struct.new(
  :subscription_arn,
  :account_id,
  :monitor_arn_list,
  :subscribers,
  :threshold,
  :frequency,
  :subscription_name,
  :threshold_expression)
  SENSITIVE = []
  include Aws::Structure
end

#frequencyString

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.

Returns:

  • (String)


378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

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_listArray<String>

A list of cost anomaly monitors.

Returns:

  • (Array<String>)


378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

class AnomalySubscription < Struct.new(
  :subscription_arn,
  :account_id,
  :monitor_arn_list,
  :subscribers,
  :threshold,
  :frequency,
  :subscription_name,
  :threshold_expression)
  SENSITIVE = []
  include Aws::Structure
end

#subscribersArray<Types::Subscriber>

A list of subscribers to notify.

Returns:



378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

class AnomalySubscription < Struct.new(
  :subscription_arn,
  :account_id,
  :monitor_arn_list,
  :subscribers,
  :threshold,
  :frequency,
  :subscription_name,
  :threshold_expression)
  SENSITIVE = []
  include Aws::Structure
end

#subscription_arnString

The AnomalySubscription Amazon Resource Name (ARN).

Returns:

  • (String)


378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

class AnomalySubscription < Struct.new(
  :subscription_arn,
  :account_id,
  :monitor_arn_list,
  :subscribers,
  :threshold,
  :frequency,
  :subscription_name,
  :threshold_expression)
  SENSITIVE = []
  include Aws::Structure
end

#subscription_nameString

The name for the subscription.

Returns:

  • (String)


378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

class AnomalySubscription < Struct.new(
  :subscription_arn,
  :account_id,
  :monitor_arn_list,
  :subscribers,
  :threshold,
  :frequency,
  :subscription_name,
  :threshold_expression)
  SENSITIVE = []
  include Aws::Structure
end

#thresholdFloat

(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.

Returns:

  • (Float)


378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

class AnomalySubscription < Struct.new(
  :subscription_arn,
  :account_id,
  :monitor_arn_list,
  :subscribers,
  :threshold,
  :frequency,
  :subscription_name,
  :threshold_expression)
  SENSITIVE = []
  include Aws::Structure
end

#threshold_expressionTypes::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" ] \} \} ] \}

Returns:



378
379
380
381
382
383
384
385
386
387
388
389
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 378

class AnomalySubscription < Struct.new(
  :subscription_arn,
  :account_id,
  :monitor_arn_list,
  :subscribers,
  :threshold,
  :frequency,
  :subscription_name,
  :threshold_expression)
  SENSITIVE = []
  include Aws::Structure
end