Ceilometer API - Enhancements of blueprint from D3

Registered by Ladislav Smola

API in horizon for ceilometer

- Class wrappers of each Ceilometer entity
- Function wrappers for ceilometer queries

- High level wrappers for important table statistics and time series data, for Resources and Resource Aggregates (containing multiple resources)

- Optimization of high level wrappers:
1. Multithreading ( will get eventually replaced by Ceilometer API optimizations below )
2. Implementing Group-by ( https://blueprints.launchpad.net/ceilometer/+spec/api-group-by )
3. Removing the constraint, that there have to be only one meter per statistic request. (https://blueprints.launchpad.net/ceilometer/+spec/sample-api)
- there will have to be probably a separate Group By for sample api (should be implicitly part of 3)
- there will probably have to be a Group By by metadata, if meter name will be stored in metadata (https://wiki.openstack.org/wiki/Ceilometer/blueprints/multi-dimensions, should be implicitly part of 3)
4. Ordering and limit of statistics, eg. top5 cpu consumers (https://blueprints.launchpad.net/ceilometer/+spec/statistics-order-by-and-limit-for-grouped-query)

Blueprint information

Status:
Complete
Approver:
David Lyle
Priority:
Medium
Drafter:
Ladislav Smola
Direction:
Needs approval
Assignee:
Ladislav Smola
Definition:
Obsolete
Series goal:
None
Implementation:
Blocked
Milestone target:
None
Started by
Ladislav Smola
Completed by
David Lyle

Whiteboard

[2014-01-12 david-lyle] moving to i-3 as not started yet

[2014-02-03 | david-lyle] moving out of icehouse

Gerrit topic: https://review.openstack.org/#q,topic:bp/ceilometer-api-enhancements,n,z

Addressed by: https://review.openstack.org/98064
    Introduce safer access to resource meters

BLOCKED: for truly leveraging the GroupBy, we need complex queries for statistics, so we can query arbitrary groups of resources. That is now blocked by Timeseries as a Service in Ceilometer.

(?)

Work Items

Work items:
Multi-threading: DONE
Implementing group by, removing multi-threading: TODO
Implementing sample-api: TODO
Implementing ordering and limit: TODO

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.