In extracting the contract for RPC backends in devstack (to have most of them live in plugins) one bit of an edge case was discovered. https://github.com/openstack-dev/devstack/blob/master/lib/swift#L388 The connection to the RPC mechanism from ceilometermiddleware inside of swift uses a transport url instead of an oslo.messaging config block. ceilometermiddleware requires oslo.config and oslo.messaging, so it seems like it could use an oslo config block instead. One of the reasons why this seems like a better idea is that not all the properties of a messaging connection can be encoded in just a url today. For instance, Rabbit can specify heartbeating params - https://github.com/openstack-dev/devstack/blob/master/lib/rpc_backend#L282-L287, and zmq needs matchmaker info - https://github.com/openstack-dev/devstack/blob/master/lib/rpc_backend#L282-L287 (Note: zmq is not currently able to be configured for swift + ceilometer today https://github.com/openstack-dev/devstack/blob/master/lib/rpc_backend#L282-L287 and given what it needs in it's config, it's not clear that it would be reasonable to do so.) Could we deprecate the use of tranport_url in ceilometermiddleware and move to an actual oslo.config file somewhere instead? That would bring it in line with the rest of the RPC configuration for services, and ensure that all connections in a cluster have access to all the same options. -Sean -- Sean Dague http://dague.net