Class: Aws::FreeTier::Types::Expression

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-freetier/lib/aws-sdk-freetier/types.rb

Overview

Use Expression to filter in the GetFreeTierUsage API operation.

You can use the following patterns:

  • Simple dimension values (Dimensions root operator)

  • Complex expressions with logical operators (AND, NOT, and OR root operators).

For simple dimension values, you can set the dimension name, values, and match type for the filters that you plan to use.

Example for simple dimension values

You can filter to match exactly for REGION==us-east-1 OR REGION==us-west-1.

The corresponding Expression appears like the following: \{ "Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ], "MatchOptions": ["EQUALS"] \} \}

As shown in the previous example, lists of dimension values are combined with OR when you apply the filter.

For complex expressions with logical operators, you can have nested expressions to use the logical operators and specify advanced filtering.

Example for complex expressions with logical operators

You can filter by ((REGION == us-east-1 OR REGION == us-west-1) OR (SERVICE CONTAINS AWSLambda)) AND (USAGE_TYPE !CONTAINS DataTransfer).

The corresponding Expression appears like the following: \{ "And": [ \{"Or": [ \{"Dimensions": \{ "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ], "MatchOptions": ["EQUALS"] \}\}, \{"Dimensions": \{ "Key": "SERVICE", "Values": ["AWSLambda"], "MatchOptions": ["CONTAINS"] \} \} ]\}, \{"Not": \{"Dimensions": \{ "Key": "USAGE_TYPE", "Values": ["DataTransfer"], "MatchOptions": ["CONTAINS"] \}\}\} ] \}

In the following Contents, you must specify exactly one of the following root operators.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#andArray<Types::Expression>

Return results that match all Expressions that you specified in the array.

Returns:



105
106
107
108
109
110
111
112
# File 'gems/aws-sdk-freetier/lib/aws-sdk-freetier/types.rb', line 105

class Expression < Struct.new(
  :and,
  :dimensions,
  :not,
  :or)
  SENSITIVE = []
  include Aws::Structure
end

#dimensionsTypes::DimensionValues

The specific dimension, values, and match type to filter objects with.



105
106
107
108
109
110
111
112
# File 'gems/aws-sdk-freetier/lib/aws-sdk-freetier/types.rb', line 105

class Expression < Struct.new(
  :and,
  :dimensions,
  :not,
  :or)
  SENSITIVE = []
  include Aws::Structure
end

#notTypes::Expression

Return results that don’t match the Expression that you specified.

Returns:



105
106
107
108
109
110
111
112
# File 'gems/aws-sdk-freetier/lib/aws-sdk-freetier/types.rb', line 105

class Expression < Struct.new(
  :and,
  :dimensions,
  :not,
  :or)
  SENSITIVE = []
  include Aws::Structure
end

#orArray<Types::Expression>

Return results that match any of the Expressions that you specified. in the array.

Returns:



105
106
107
108
109
110
111
112
# File 'gems/aws-sdk-freetier/lib/aws-sdk-freetier/types.rb', line 105

class Expression < Struct.new(
  :and,
  :dimensions,
  :not,
  :or)
  SENSITIVE = []
  include Aws::Structure
end