...
Allocation rules are evaluated starting with the lowest priority first and then to the highest priority. A blank priority means that it has the highest priority and will be evaluated last.
...
The name of the rule will be seen in Yotascale’s hierarchy. A rule and priority can be blank.
...
SQL
The rules are like where clause in an SQL. A single expression can have multiple clauses joined by AND & OR operators along with parentheses for precedence.
Structure of a Rule
Following keys/attributes are supported on the left-hand-side of the operator
Any of the 30 Yotascale tags (Team, Name, User, Cost Center, Project, Environment, Owner, Pod, EMR job Flow ID, EMR Role, CreatedBy, application, custom_1, etc.) NOTE: These tag categories can be renamed so verify the tag before using it.
region
productname (Amazon Elastic Compute Cloud, Amazon Simple Storage Service, etc.)
linkedaccountid
database_engine
operating_system
ys_type (Cost, Taxes, RIFee, Discounts, Annual Fee, Support)
ys_usagetypegroup (Others, Network, Access, Instance, Storage, Load Balancer, Container Runtime, MultiInstance)
reservedinstance (Y, N)
namespace
ys_cluster_type (Kubernetes, ECS, EKS)
clusterUUID (Cluster Name)
lower()
lower(regexp_replace())
Operators
Following operators are supported in the rule expression
=
!=
like
is not null
in
not in
...
`Team` In ('Data', 'Data-Infra', 'data-infra', 'Data-infra', 'data-infra', 'DE', 'DI', 'di', 'DSA', 'dsa', 'DSA Unknown') OR `Team` like '%Foo%' OR `Team` like 'Analytics%'
`Operating Hours` = 'DEVOPS' AND `Environment` In ('DEV', 'Dev', 'dev', 'STAGING', 'Staging', 'staging', 'stg', 'TEST')
`AWS Service` = ('AWS Lambda') AND `Environment` In ('DEV', 'Dev', 'dev', 'STAGING', 'Staging', 'staging', 'stg', 'TEST')
Cost Processing
Once a new rule/hierachy is implemented, notify Support to rerun Cost Processing in order for the hierarchy to get cost data.