
This adds a v2 storage interface as well as a gnocchi backend for it to cloudkitty. This new interface will allow us to implement the v2 API, which will be more metric-oriented. This new storage uses the new dataframe format ('desc' is now split up into 'groupby' and 'metadata', following the collect logic); and supports grouping, filters and pagination. Modifications: * The tenant/scope state management isn't handled by the storage backend anymore. A StateManager object has been added. * All internal interactions with the storage backend use the v2 interface. An adapter class has been added to ensure retrocompatibility with the v1 interface. * A base class for functional tests testing the v2 storage interface has been added. It contains generic tests, which should allow easier testing for new v2 backends. * Some developer documentation explaining how to implement a v2 storage backend has been added. User documentation will be updated once the v2 storage backend is considered stable. The v1 is still the default storage version. Note that this new version is considered unstable and should only be used for upstream development. Change-Id: I5e9b95c79292582fab3017289d35ee310e35ffea Story: 2001372 Task: 6585 Task: 14361 Task: 24535
87 lines
2.3 KiB
Plaintext
87 lines
2.3 KiB
Plaintext
#
|
|
#"context_is_admin": "role:admin"
|
|
|
|
#
|
|
#"admin_or_owner": "is_admin:True or tenant:%(tenant_id)s"
|
|
|
|
#
|
|
#"default": ""
|
|
|
|
# Return the list of every services mapped to a collector.
|
|
# LIST /v1/collector/mappings
|
|
#"collector:list_mappings": "role:admin"
|
|
|
|
# Return a service to collector mapping.
|
|
# GET /v1/collector/mappings/{service_id}
|
|
#"collector:get_mapping": "role:admin"
|
|
|
|
# Manage a service to collector mapping.
|
|
# POST /v1/collector/mappings
|
|
# DELETE /v1/collector/mappings/{service_id}
|
|
#"collector:manage_mapping": "role:admin"
|
|
|
|
# Query the enable state of a collector.
|
|
# GET /v1/collector/states/{collector_id}
|
|
#"collector:get_state": "role:admin"
|
|
|
|
# Set the enable state of a collector.
|
|
# PUT /v1/collector/states/{collector_id}
|
|
#"collector:update_state": "role:admin"
|
|
|
|
# List available services information in Cloudkitty.
|
|
# LIST /v1/info/services
|
|
#"info:list_services_info": ""
|
|
|
|
# Get specified service information.
|
|
# GET /v1/info/services/{metric_id}
|
|
#"info:get_service_info": ""
|
|
|
|
# List available metrics information in Cloudkitty.
|
|
# LIST /v1/info/metrics
|
|
#"info:list_metrics_info": ""
|
|
|
|
# Get specified metric information.
|
|
# GET /v1/info/metrics/{metric_id}
|
|
#"info:get_metric_info": ""
|
|
|
|
# Get current configuration in Cloudkitty.
|
|
# GET /v1/info/config
|
|
#"info:get_config": ""
|
|
|
|
# Reture the list of loaded modules in Cloudkitty.
|
|
# LIST /v1/rating/modules
|
|
#"rating:list_modules": "role:admin"
|
|
|
|
# Get specified module.
|
|
# GET /v1/rating/modules/{module_id}
|
|
#"rating:get_module": "role:admin"
|
|
|
|
# Change the state and priority of a module.
|
|
# PUT /v1/rating/modules/{module_id}
|
|
#"rating:update_module": "role:admin"
|
|
|
|
# Get an instant quote based on multiple resource descriptions.
|
|
# POST /v1/rating/quote
|
|
#"rating:quote": ""
|
|
|
|
# Trigger a rating module list reload.
|
|
# GET /v1/rating/reload_modules
|
|
#"rating:module_config": "role:admin"
|
|
|
|
# Return the list of rated tenants.
|
|
# GET /v1/report/tenants
|
|
#"report:list_tenants": "role:admin"
|
|
|
|
# Return the summary to pay for a given period.
|
|
# GET /v1/report/summary
|
|
#"report:get_summary": "rule:admin_or_owner"
|
|
|
|
# Return the amount to pay for a given period.
|
|
# GET /v1/report/total
|
|
#"report:get_total": "rule:admin_or_owner"
|
|
|
|
# Return a list of rated resources for a time period and a tenant.
|
|
# GET /v1/storage/dataframes
|
|
#"storage:list_data_frames": ""
|
|
|