The ceilometer.openstack.common.rpc.impl_kombu Module

class ceilometer.openstack.common.rpc.impl_kombu.Connection(conf, server_params=None)[source]

Bases: object

Connection object.

cancel_consumer_thread()[source]

Cancel a consumer thread

close()[source]

Close/release this connection

consume(limit=None)[source]

Consume from all queues/consumers

consume_in_thread()[source]

Consumer from all queues/consumers in a greenthread

create_consumer(topic, proxy, fanout=False)[source]

Create a consumer that calls a method in a proxy object

create_worker(topic, proxy, pool_name)[source]

Create a worker that calls a method in a proxy object

declare_consumer(consumer_cls, topic, callback)[source]

Create a Consumer using the class that was passed in and add it to our list of consumers

declare_direct_consumer(topic, callback)[source]

Create a ‘direct’ queue. In nova’s use, this is generally a msg_id queue used for responses for call/multicall

declare_fanout_consumer(topic, callback)[source]

Create a ‘fanout’ consumer

declare_topic_consumer(topic, callback=None, queue_name=None, exchange_name=None)[source]

Create a ‘topic’ consumer.

direct_send(msg_id, msg)[source]

Send a ‘direct’ message

ensure(error_callback, method, *args, **kwargs)[source]
fanout_send(topic, msg)[source]

Send a ‘fanout’ message

get_channel()[source]

Convenience call for bin/clear_rabbit_queues

iterconsume(limit=None, timeout=None)[source]

Return an iterator that will consume from all queues/consumers

join_consumer_pool(callback, pool_name, topic, exchange_name=None)[source]

Register as a member of a group of consumers for a given topic from the specified exchange.

Exactly one member of a given pool will receive each message.

A message will be delivered to multiple pools, if more than one is created.

notify_send(topic, msg, **kwargs)[source]

Send a notify message on a topic

publisher_send(cls, topic, msg, timeout=None, **kwargs)[source]

Send to a publisher based on the publisher class

reconnect()[source]

Handles reconnecting and re-establishing queues. Will retry up to self.max_retries number of times. self.max_retries = 0 means to retry forever. Sleep between tries, starting at self.interval_start seconds, backing off self.interval_stepping number of seconds each attempt.

reset()[source]

Reset a connection so it can be used again

topic_send(topic, msg, timeout=None)[source]

Send a ‘topic’ message

wait_on_proxy_callbacks()[source]

Wait for all proxy callback threads to exit.

class ceilometer.openstack.common.rpc.impl_kombu.ConsumerBase(channel, callback, tag, **kwargs)[source]

Bases: object

Consumer base class.

cancel()[source]

Cancel the consuming from the queue, if it has started

consume(*args, **kwargs)[source]

Actually declare the consumer on the amqp channel. This will start the flow of messages from the queue. Using the Connection.iterconsume() iterator will process the messages, calling the appropriate callback.

If a callback is specified in kwargs, use that. Otherwise, use the callback passed during __init__()

If kwargs[‘nowait’] is True, then this call will block until a message is read.

Messages will automatically be acked if the callback doesn’t raise an exception

reconnect(channel)[source]

Re-declare the queue after a rabbit reconnect

class ceilometer.openstack.common.rpc.impl_kombu.DirectConsumer(conf, channel, msg_id, callback, tag, **kwargs)[source]

Bases: ceilometer.openstack.common.rpc.impl_kombu.ConsumerBase

Queue/consumer class for ‘direct’

class ceilometer.openstack.common.rpc.impl_kombu.DirectPublisher(conf, channel, msg_id, **kwargs)[source]

Bases: ceilometer.openstack.common.rpc.impl_kombu.Publisher

Publisher class for ‘direct’

class ceilometer.openstack.common.rpc.impl_kombu.FanoutConsumer(conf, channel, topic, callback, tag, **kwargs)[source]

Bases: ceilometer.openstack.common.rpc.impl_kombu.ConsumerBase

Consumer class for ‘fanout’

class ceilometer.openstack.common.rpc.impl_kombu.FanoutPublisher(conf, channel, topic, **kwargs)[source]

Bases: ceilometer.openstack.common.rpc.impl_kombu.Publisher

Publisher class for ‘fanout’

class ceilometer.openstack.common.rpc.impl_kombu.NotifyPublisher(conf, channel, topic, **kwargs)[source]

Bases: ceilometer.openstack.common.rpc.impl_kombu.TopicPublisher

Publisher class for ‘notify’

reconnect(channel)[source]
class ceilometer.openstack.common.rpc.impl_kombu.Publisher(channel, exchange_name, routing_key, **kwargs)[source]

Bases: object

Base Publisher class

reconnect(channel)[source]

Re-establish the Producer after a rabbit reconnection

send(msg, timeout=None)[source]

Send a message

class ceilometer.openstack.common.rpc.impl_kombu.TopicConsumer(conf, channel, topic, callback, tag, name=None, exchange_name=None, **kwargs)[source]

Bases: ceilometer.openstack.common.rpc.impl_kombu.ConsumerBase

Consumer class for ‘topic’

class ceilometer.openstack.common.rpc.impl_kombu.TopicPublisher(conf, channel, topic, **kwargs)[source]

Bases: ceilometer.openstack.common.rpc.impl_kombu.Publisher

Publisher class for ‘topic’

Previous topic

The ceilometer.openstack.common.rpc.impl_fake Module

Next topic

The ceilometer.openstack.common.rpc.impl_qpid Module

This Page