Class: Aws::FreeTier::Types::Expression
- Inherits:
-
Struct
- Object
- Struct
- Aws::FreeTier::Types::Expression
- Includes:
- Structure
- Defined in:
- 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”: [ [ {“Dimensions”: { “Key”: “REGION”, “Values”: [ “us-east-1”, “us-west-1” ], “MatchOptions”: [“EQUALS”] }, {“Dimensions”: { “Key”: “SERVICE”, “Values”: [“AWSLambda”], “MatchOptions”: [“CONTAINS”] } } ]}, {“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
-
#and ⇒ Array<Types::Expression>
Return results that match all ‘Expressions` that you specified in the array.
-
#dimensions ⇒ Types::DimensionValues
The specific dimension, values, and match type to filter objects with.
-
#not ⇒ Types::Expression
Return results that don’t match the ‘Expression` that you specified.
-
#or ⇒ Array<Types::Expression>
Return results that match any of the ‘Expressions` that you specified.
Instance Attribute Details
#and ⇒ Array<Types::Expression>
Return results that match all ‘Expressions` that you specified in the array.
104 105 106 107 108 109 110 111 |
# File 'lib/aws-sdk-freetier/types.rb', line 104 class Expression < Struct.new( :and, :dimensions, :not, :or) SENSITIVE = [] include Aws::Structure end |
#dimensions ⇒ Types::DimensionValues
The specific dimension, values, and match type to filter objects with.
104 105 106 107 108 109 110 111 |
# File 'lib/aws-sdk-freetier/types.rb', line 104 class Expression < Struct.new( :and, :dimensions, :not, :or) SENSITIVE = [] include Aws::Structure end |
#not ⇒ Types::Expression
Return results that don’t match the ‘Expression` that you specified.
104 105 106 107 108 109 110 111 |
# File 'lib/aws-sdk-freetier/types.rb', line 104 class Expression < Struct.new( :and, :dimensions, :not, :or) SENSITIVE = [] include Aws::Structure end |
#or ⇒ Array<Types::Expression>
Return results that match any of the ‘Expressions` that you specified. in the array.
104 105 106 107 108 109 110 111 |
# File 'lib/aws-sdk-freetier/types.rb', line 104 class Expression < Struct.new( :and, :dimensions, :not, :or) SENSITIVE = [] include Aws::Structure end |