The ceilometer.plugin ModuleΒΆ

Base class for plugins.

class ceilometer.plugin.DiscoveryBase[source]

Bases: object

DiscoveryBase.discover(manager, param=None)[source]

Discover resources to monitor.

The most fine-grained discovery should be preferred, so the work is the most evenly distributed among multiple agents (if they exist).

For example: if the pollster can separately poll individual resources, it should have its own discovery implementation to discover those resources. If it can only poll per-tenant, then the TenantDiscovery should be used. If even that is not possible, use EndpointDiscovery (see their respective docstrings).

Parameters:
  • manager – The service manager class invoking the plugin.
  • param – an optional parameter to guide the discovery
class ceilometer.plugin.ExchangeTopics

Bases: tuple

ExchangeTopics(exchange, topics)

class ceilometer.plugin.NotificationBase(pipeline_manager)[source]

Bases: ceilometer.plugin.PluginBase

Base class for plugins that support the notification API.

NotificationBase.get_targets(conf)[source]

Return a sequence of oslo.messaging.Target.

Sequence is defining the exchange and topics to be connected for this plugin. :param conf: Configuration.

NotificationBase.info(ctxt, publisher_id, event_type, payload, metadata)[source]

RPC endpoint for notification messages

When another service sends a notification over the message bus, this method receives it.

Parameters:
  • ctxt – oslo.messaging context
  • publisher_id – publisher of the notification
  • event_type – type of notification
  • payload – notification payload
  • metadata – metadata about the notification
NotificationBase.process_notification(message)[source]

Return a sequence of Counter instances for the given message.

Parameters:message – Message to process.
NotificationBase.to_samples_and_publish(context, notification)[source]

Return samples produced by process_notification.

Samples produced for the given notification. :param context: Execution context from the service or RPC call :param notification: The notification to process.

class ceilometer.plugin.PluginBase[source]

Bases: object

Base class for all plugins.

class ceilometer.plugin.PollsterBase[source]

Bases: ceilometer.plugin.PluginBase

Base class for plugins that support the polling API.

PollsterBase.get_samples(manager, cache, resources)[source]

Return a sequence of Counter instances from polling the resources.

Parameters:
  • manager – The service manager class invoking the plugin.
  • cache – A dictionary to allow pollsters to pass data between themselves when recomputing it would be expensive (e.g., asking another service for a list of objects).
  • resources – A list of resources the pollster will get data from. It’s up to the specific pollster to decide how to use it. It is usually supplied by a discovery, see default_discovery for more information.

Previous topic

The ceilometer.collector Module

Next topic

The ceilometer.middleware Module

This Page