GET
/v1/rating/module_config/hashmap/types
¶Return the list of every mapping type available.
Return type: | list(str ) |
---|
GET
/v1/rating/module_config/hashmap/services
¶Get the service list
Return: | List of every services. |
---|---|
Return type: | ServiceCollection |
GET
/v1/rating/module_config/hashmap/services/
(service_id)¶Return a service.
Parameters: |
|
---|---|
Return type: |
POST
/v1/rating/module_config/hashmap/services
¶Create hashmap service.
Parameters: |
|
---|---|
Return type: |
DELETE
/v1/rating/module_config/hashmap/services
¶Delete the service and all the sub keys recursively.
Parameters: |
|
---|
Service
¶Type describing a service.
A service is directly mapped to the usage key, the collected service.
Data samples:
{
"name": "compute",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
b'<value>\n <service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>\n <name>compute</name>\n</value>'
name
¶Name of the service.
service_id
¶UUID of the service.
ServiceCollection
¶Type describing a list of services.
Data samples:
{
"services": [
{
"name": "compute",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
]
}
b'<value>\n <services>\n <item>\n <service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>\n <name>compute</name>\n </item>\n </services>\n</value>'
services
¶List of services.
GET
/v1/rating/module_config/hashmap/fields
¶Get the field list.
Parameters: |
|
---|---|
Return: | List of every fields. |
Return type: |
GET
/v1/rating/module_config/hashmap/fields/
(field_id)¶Return a field.
Parameters: |
|
---|---|
Return type: |
POST
/v1/rating/module_config/hashmap/fields
¶Create a field.
Parameters: |
|
---|---|
Return type: |
DELETE
/v1/rating/module_config/hashmap/fields
¶Delete the field and all the sub keys recursively.
Parameters: |
|
---|
Field
¶Type describing a field.
A field is mapping a value of the ‘desc’ dict of the CloudKitty data. It’s used to map the name of a metadata.
Data samples:
{
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"name": "image_id",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
b'<value>\n <field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>\n <name>image_id</name>\n <service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>\n</value>'
field_id
¶UUID of the field.
name
¶Name of the field.
service_id
¶UUID of the parent service.
FieldCollection
¶Type describing a list of fields.
Data samples:
{
"fields": [
{
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"name": "image_id",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
]
}
b'<value>\n <fields>\n <item>\n <field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>\n <name>image_id</name>\n <service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>\n </item>\n </fields>\n</value>'
fields
¶List of fields.
GET
/v1/rating/module_config/hashmap/mappings
¶Get the mapping list
Parameters: |
|
---|
filter on tenant). Useful if you want to filter on tenant being None.
:return: List of every mappings.
:type service_id: uuid
:type field_id: uuid
:type group_id: uuid
:type no_group: bool
:type tenant_id: uuid
:type filter_tenant: bool
Return type: | MappingCollection |
---|
GET
/v1/rating/module_config/hashmap/mappings/
(mapping_id)¶Return a mapping.
Parameters: |
|
---|---|
Return type: |
POST
/v1/rating/module_config/hashmap/mappings
¶Create a mapping.
Parameters: |
|
---|---|
Return type: |
PUT
/v1/rating/module_config/hashmap/mappings
¶Update a mapping.
Parameters: |
|
---|
DELETE
/v1/rating/module_config/hashmap/mappings
¶Delete a mapping.
Parameters: |
|
---|
GET
/v1/rating/module_config/hashmap/mappings/group
¶Get the group attached to the mapping.
Parameters: |
|
---|---|
Return type: |
Mapping
¶Type describing a Mapping.
A mapping is used to apply rating rules based on a value, if the parent is a field then it’s check the value of a metadata. If it’s a service then it directly apply the rate to the volume.
Data samples:
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"mapping_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"type": "flat",
"value": "m1.micro"
}
b'<value>\n <mapping_id>39dbd39d-f663-4444-a795-fb19d81af136</mapping_id>\n <value>m1.micro</value>\n <type>flat</type>\n <cost>4.2</cost>\n <field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>\n <tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>\n</value>'
cost
¶Value of the mapping.
field_id
¶UUID of the field.
group_id
¶UUID of the hashmap group.
map_type
¶Type of the mapping.
mapping_id
¶UUID of the mapping.
service_id
¶UUID of the service.
tenant_id
¶ID of the hashmap tenant.
value
¶Key of the mapping.
MappingCollection
¶Type describing a list of mappings.
Data samples:
{
"mappings": [
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"mapping_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"type": "flat",
"value": "m1.micro"
}
]
}
b'<value>\n <mappings>\n <item>\n <mapping_id>39dbd39d-f663-4444-a795-fb19d81af136</mapping_id>\n <value>m1.micro</value>\n <type>flat</type>\n <cost>4.2</cost>\n <field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>\n <tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>\n </item>\n </mappings>\n</value>'
mappings
¶List of mappings.
Threshold
¶Type describing a Threshold.
A threshold is used to apply rating rules based on a level, if the parent is a field then the level is checked against a metadata. If it’s a service then it’s the quantity of the resource that is checked.
Data samples:
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"level": "1024",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"threshold_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"type": "flat"
}
b'<value>\n <threshold_id>39dbd39d-f663-4444-a795-fb19d81af136</threshold_id>\n <level>1024</level>\n <type>flat</type>\n <cost>4.2</cost>\n <field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>\n <tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>\n</value>'
cost
¶Value of the threshold.
field_id
¶UUID of the field.
group_id
¶UUID of the hashmap group.
level
¶Level of the threshold.
map_type
¶Type of the threshold.
service_id
¶UUID of the service.
tenant_id
¶ID of the hashmap tenant.
threshold_id
¶UUID of the threshold.
ThresholdCollection
¶Type describing a list of mappings.
Data samples:
{
"thresholds": [
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"level": "1024",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"threshold_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"type": "flat"
}
]
}
b'<value>\n <thresholds>\n <item>\n <threshold_id>39dbd39d-f663-4444-a795-fb19d81af136</threshold_id>\n <level>1024</level>\n <type>flat</type>\n <cost>4.2</cost>\n <field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>\n <tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>\n </item>\n </thresholds>\n</value>'
thresholds
¶List of thresholds.
GET
/v1/rating/module_config/hashmap/groups
¶Get the group list
Return: | List of every group. |
---|---|
Return type: | GroupCollection |
GET
/v1/rating/module_config/hashmap/groups/
(group_id)¶Return a group.
Parameters: |
|
---|---|
Return type: |
POST
/v1/rating/module_config/hashmap/groups
¶Create a group.
Parameters: |
|
---|---|
Return type: |
DELETE
/v1/rating/module_config/hashmap/groups
¶Delete a group.
Parameters: |
|
---|
GET
/v1/rating/module_config/hashmap/groups/mappings
¶Get the mappings attached to the group.
Parameters: |
|
---|---|
Return type: |
GET
/v1/rating/module_config/hashmap/groups/thresholds
¶Get the thresholds attached to the group.
Parameters: |
|
---|---|
Return type: |
Group
¶Type describing a group.
A group is used to divide calculations. It can be used to create a group for the instance rating (flavor) and one if we have premium images (image_id). So you can take into account multiple parameters during the rating.
Data samples:
{
"group_id": "afe898cb-86d8-4557-ad67-f4f01891bbee",
"name": "instance_rating"
}
b'<value>\n <group_id>afe898cb-86d8-4557-ad67-f4f01891bbee</group_id>\n <name>instance_rating</name>\n</value>'
group_id
¶UUID of the group.
name
¶Name of the group.
GroupCollection
¶Type describing a list of groups.
Data samples:
{
"groups": [
{
"group_id": "afe898cb-86d8-4557-ad67-f4f01891bbee",
"name": "instance_rating"
}
]
}
b'<value>\n <groups>\n <item>\n <group_id>afe898cb-86d8-4557-ad67-f4f01891bbee</group_id>\n <name>instance_rating</name>\n </item>\n </groups>\n</value>'
groups
¶List of groups.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.