This patch includes several separate sets of changes which
have been reviewed individually but must be submitted
together to get past the newly updated version of pep8
and changes to the nova code base.
1. Replace our CONF object with the one from openstack.common.cfg.
There's no need to use our own, especially since some option
are already registered on it for us.
Signed-off-by: Julien Danjou <julien.danjou@enovance.com>
2. Instead of importing the RPC code from nova, use
the openstack.common.rpc package. This change
copies that code in from openstack-common, changes
the imports throughout ceilometer, and fixes the
way the configuration settings are initialized.
3. Resolve PEP-8 issues introduced by an even more
pedantic version of pep8 (1.3.1). Some of the
changes are fixed, and some warnings/errors are
suppressed.
4. Ignore import errors in impl_qpid because the qpid
package is not installed on the stackforge test server.
5. Fix missing imports from gettextutils in openstack.common.
Change-Id: I0ee7d4b3278d8ff1951ca27592e3be8a87fe4854
bug 1004198
bug 1004200
- Set up the collector to receive the metering messages.
- Make the collector republish notifications as metering data.
- Add a "monitor" mode to tools/notificationclient.py to simply print
the events without writing them to a file.
- Add a --topic flag to tools/notificationclient.py so it can be made
to listen events other than notifications (for monitoring metering
events).
- Change "counter_datetime" within the metering message to "timestamp"
to be consistent with the notification message format.
- Add a configuration option to control the secret value for signing
metering messages.
- Make the collector and agent daemon control topics more specific.
- Use the config setting to set the metering topic subscription.
- Set a short interval for polling to get more data for development
testing.
- Log after successful load of pollsters instead of before attempt.
Change-Id: Iedfe26f8a4fa80d88cd0a76e5738001ba5689bdc
Implement a Counter class for use by notification plugins.
Define a base class for Notification plugins.
Define a dispatcher class for notification events to be passed to the plugins.
Add a notification plugin for instance creation and "instance" counters.
Add a reusable function for turning a Counter into a metering event dictionary.
Change-Id: Iaa626b98e1a661ed31cc8b8e95263c111df20888