Class: Aws::CostExplorer::Types::CostCategoryRule
- Inherits:
-
Struct
- Object
- Struct
- Aws::CostExplorer::Types::CostCategoryRule
- Defined in:
- gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb
Overview
When making an API call, you may pass CostCategoryRule data as a hash:
{
value: "CostCategoryValue",
rule: {
or: [
{
# recursive Expression
},
],
and: [
{
# recursive Expression
},
],
not: {
# recursive Expression
},
dimensions: {
key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE, INVOICING_ENTITY
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
tags: {
key: "TagKey",
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
cost_categories: {
key: "CostCategoryName",
values: ["Value"],
match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
},
},
inherited_value: {
dimension_name: "LINKED_ACCOUNT_NAME", # accepts LINKED_ACCOUNT_NAME, TAG
dimension_key: "GenericString",
},
type: "REGULAR", # accepts REGULAR, INHERITED_VALUE
}
Rules are processed in order. If there are multiple rules that match the line item, then the first rule to match is used to determine that Cost Category value.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#inherited_value ⇒ Types::CostCategoryInheritedValueDimension
The value the line item is categorized as if the line item contains the matched dimension.
-
#rule ⇒ Types::Expression
An [Expression][1] object used to categorize costs.
-
#type ⇒ String
You can define the
CostCategoryRule
rule type as eitherREGULAR
orINHERITED_VALUE
. -
#value ⇒ String
The default value for the cost category.
Instance Attribute Details
#inherited_value ⇒ Types::CostCategoryInheritedValueDimension
The value the line item is categorized as if the line item contains the matched dimension.
610 611 612 613 614 615 616 617 |
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 610 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |
#rule ⇒ Types::Expression
An Expression object used to categorize costs. This supports
dimensions, tags, and nested expressions. Currently the only
dimensions supported are LINKED_ACCOUNT
, SERVICE_CODE
,
RECORD_TYPE
, and LINKED_ACCOUNT_NAME
.
Root level OR
isn't supported. We recommend that you create a
separate rule instead.
RECORD_TYPE
is a dimension used for Cost Explorer APIs, and is
also supported for Cost Category expressions. This dimension uses
different terms, depending on whether you're using the console or
API/JSON editor. For a detailed comparison, see Term
Comparisons in the Billing and Cost Management User Guide.
610 611 612 613 614 615 616 617 |
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 610 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |
#type ⇒ String
You can define the CostCategoryRule
rule type as either REGULAR
or INHERITED_VALUE
. The INHERITED_VALUE
rule type adds the
flexibility of defining a rule that dynamically inherits the cost
category value from the dimension value defined by
CostCategoryInheritedValueDimension
. For example, if you want to
dynamically group costs based on the value of a specific tag key,
first choose an inherited value rule type, then choose the tag
dimension and specify the tag key to use.
610 611 612 613 614 615 616 617 |
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 610 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |
#value ⇒ String
The default value for the cost category.
610 611 612 613 614 615 616 617 |
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 610 class CostCategoryRule < Struct.new( :value, :rule, :inherited_value, :type) SENSITIVE = [] include Aws::Structure end |