Dynamically enable or disable meters

Registered by VijayKumar Kodam

Currently there is no way to enable or disable meters without restarting ceilometer. There are cases where operators do not want to run all the meters continuously.

With this blueprint, it will be possible to enable or disable meters without restart of ceilometer agents. Changes needs to be done in ceilometer-collector, ceilometer-central agent, and ceilometer-compute agent.

Here is a high level call flow.
Using “pyinotify” monitor the pipeline.yaml for changes. This can be done by a stand-alone process or a script. When the file is modified, signal is sent to ceilometer-collector, ceilometer-central, ceilometer-compute agents. The signal handlers gets invoked in the ceilometer agents.

Then the ceilometer agents shall:
1. Read the yaml file
2. Iterate through the list of polling tasks objects
    a. In the yaml file check if the meter is added/deleted under the respective pipelines in polling_task
    b. If meter is added then update the list of PollingTask object with the corresponding pollster object.
    c. if meter is deleted then delete the pollster object from list of pollsters in PollingTask object.

Blueprint information

Status:
Complete
Approver:
Julien Danjou
Priority:
Low
Drafter:
None
Direction:
Needs approval
Assignee:
Liusheng
Definition:
Obsolete
Series goal:
None
Implementation:
Not started
Milestone target:
None
Completed by
Liusheng

Related branches

Sprints

Whiteboard

Some results of disscusion:
https://etherpad.openstack.org/p/dynamic-meters
http://lists.openstack.org/pipermail/openstack-dev/2014-January/023733.html

                                                       -----by liusheng 2014.7.9

Gerrit topic: https://review.openstack.org/#q,topic:bp/dynamic-meters,n,z

Addressed by: https://review.openstack.org/140232
    Add support for dynamic meters

Addressed by: https://review.openstack.org/141741
    Add tests for dynamic meters feature

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.