[metadata]
name = ceilometer
url = http://launchpad.net/ceilometer
summary = OpenStack Telemetry
description_file =
    README.rst
author = OpenStack
author_email = openstack-discuss@lists.openstack.org
home_page = https://docs.openstack.org/ceilometer/latest/
python_requires = >=3.8
classifier =
    Environment :: OpenStack
    Intended Audience :: Information Technology
    Intended Audience :: System Administrators
    License :: OSI Approved :: Apache Software License
    Operating System :: POSIX :: Linux
    Programming Language :: Python
    Programming Language :: Python :: Implementation :: CPython
    Programming Language :: Python :: 3 :: Only
    Programming Language :: Python :: 3
    Programming Language :: Python :: 3.8
    Programming Language :: Python :: 3.9
    Programming Language :: Python :: 3.10
    Programming Language :: Python :: 3.11
    Topic :: System :: Monitoring

[files]
packages =
    ceilometer
data_files =
    etc/ceilometer = etc/ceilometer/*

[entry_points]
ceilometer.notification.pipeline =
    meter = ceilometer.pipeline.sample:SamplePipelineManager
    event = ceilometer.pipeline.event:EventPipelineManager

ceilometer.sample.endpoint =
    http.request = ceilometer.middleware:HTTPRequest
    http.response = ceilometer.middleware:HTTPResponse
    hardware.ipmi.temperature = ceilometer.ipmi.notifications.ironic:TemperatureSensorNotification
    hardware.ipmi.voltage = ceilometer.ipmi.notifications.ironic:VoltageSensorNotification
    hardware.ipmi.current = ceilometer.ipmi.notifications.ironic:CurrentSensorNotification
    hardware.ipmi.fan = ceilometer.ipmi.notifications.ironic:FanSensorNotification
    _sample = ceilometer.telemetry.notifications:TelemetryIpc
    meter = ceilometer.meter.notifications:ProcessMeterNotifications

ceilometer.discover.compute =
    local_instances = ceilometer.compute.discovery:InstanceDiscovery
    local_node = ceilometer.polling.discovery.localnode:LocalNodeDiscovery

ceilometer.discover.central =
    barbican = ceilometer.polling.discovery.non_openstack_credentials_discovery:NonOpenStackCredentialsDiscovery
    endpoint = ceilometer.polling.discovery.endpoint:EndpointDiscovery
    tenant = ceilometer.polling.discovery.tenant:TenantDiscovery
    vpn_services    = ceilometer.network.services.discovery:VPNServicesDiscovery
    ipsec_connections  = ceilometer.network.services.discovery:IPSecConnectionsDiscovery
    fw_services = ceilometer.network.services.discovery:FirewallDiscovery
    fw_policy = ceilometer.network.services.discovery:FirewallPolicyDiscovery
    fip_services = ceilometer.network.services.discovery:FloatingIPDiscovery
    images = ceilometer.image.discovery:ImagesDiscovery
    volumes = ceilometer.volume.discovery:VolumeDiscovery
    volume_snapshots = ceilometer.volume.discovery:VolumeSnapshotsDiscovery
    volume_backups = ceilometer.volume.discovery:VolumeBackupsDiscovery

ceilometer.discover.ipmi =
    local_node = ceilometer.polling.discovery.localnode:LocalNodeDiscovery

ceilometer.poll.compute =
    disk.device.read.requests = ceilometer.compute.pollsters.disk:PerDeviceReadRequestsPollster
    disk.device.write.requests = ceilometer.compute.pollsters.disk:PerDeviceWriteRequestsPollster
    disk.device.read.bytes = ceilometer.compute.pollsters.disk:PerDeviceReadBytesPollster
    disk.device.write.bytes = ceilometer.compute.pollsters.disk:PerDeviceWriteBytesPollster
    disk.device.read.latency = ceilometer.compute.pollsters.disk:PerDeviceDiskReadLatencyPollster
    disk.device.write.latency = ceilometer.compute.pollsters.disk:PerDeviceDiskWriteLatencyPollster
    cpu = ceilometer.compute.pollsters.instance_stats:CPUPollster
    cpu_util = ceilometer.compute.pollsters.instance_stats:CPUUtilPollster
    cpu_l3_cache = ceilometer.compute.pollsters.instance_stats:CPUL3CachePollster
    network.incoming.bytes = ceilometer.compute.pollsters.net:IncomingBytesPollster
    network.incoming.packets = ceilometer.compute.pollsters.net:IncomingPacketsPollster
    network.outgoing.bytes = ceilometer.compute.pollsters.net:OutgoingBytesPollster
    network.outgoing.packets = ceilometer.compute.pollsters.net:OutgoingPacketsPollster
    network.incoming.bytes.rate = ceilometer.compute.pollsters.net:IncomingBytesRatePollster
    network.outgoing.bytes.rate = ceilometer.compute.pollsters.net:OutgoingBytesRatePollster
    network.incoming.bytes.delta = ceilometer.compute.pollsters.net:IncomingBytesDeltaPollster
    network.outgoing.bytes.delta = ceilometer.compute.pollsters.net:OutgoingBytesDeltaPollster
    network.incoming.packets.drop = ceilometer.compute.pollsters.net:IncomingDropPollster
    network.outgoing.packets.drop = ceilometer.compute.pollsters.net:OutgoingDropPollster
    network.incoming.packets.error = ceilometer.compute.pollsters.net:IncomingErrorsPollster
    network.outgoing.packets.error = ceilometer.compute.pollsters.net:OutgoingErrorsPollster
    memory.usage = ceilometer.compute.pollsters.instance_stats:MemoryUsagePollster
    memory.resident = ceilometer.compute.pollsters.instance_stats:MemoryResidentPollster
    memory.swap.in = ceilometer.compute.pollsters.instance_stats:MemorySwapInPollster
    memory.swap.out = ceilometer.compute.pollsters.instance_stats:MemorySwapOutPollster
    memory.bandwidth.total = ceilometer.compute.pollsters.instance_stats:MemoryBandwidthTotalPollster
    memory.bandwidth.local = ceilometer.compute.pollsters.instance_stats:MemoryBandwidthLocalPollster
    disk.device.capacity = ceilometer.compute.pollsters.disk:PerDeviceCapacityPollster
    disk.device.allocation = ceilometer.compute.pollsters.disk:PerDeviceAllocationPollster
    disk.device.usage = ceilometer.compute.pollsters.disk:PerDevicePhysicalPollster
    perf.cpu.cycles = ceilometer.compute.pollsters.instance_stats:PerfCPUCyclesPollster
    perf.instructions = ceilometer.compute.pollsters.instance_stats:PerfInstructionsPollster
    perf.cache.references = ceilometer.compute.pollsters.instance_stats:PerfCacheReferencesPollster
    perf.cache.misses = ceilometer.compute.pollsters.instance_stats:PerfCacheMissesPollster

ceilometer.poll.ipmi =
    hardware.ipmi.node.power = ceilometer.ipmi.pollsters.node:PowerPollster
    hardware.ipmi.node.temperature = ceilometer.ipmi.pollsters.node:InletTemperaturePollster
    hardware.ipmi.node.outlet_temperature = ceilometer.ipmi.pollsters.node:OutletTemperaturePollster
    hardware.ipmi.node.airflow = ceilometer.ipmi.pollsters.node:AirflowPollster
    hardware.ipmi.node.cups = ceilometer.ipmi.pollsters.node:CUPSIndexPollster
    hardware.ipmi.node.cpu_util = ceilometer.ipmi.pollsters.node:CPUUtilPollster
    hardware.ipmi.node.mem_util = ceilometer.ipmi.pollsters.node:MemUtilPollster
    hardware.ipmi.node.io_util = ceilometer.ipmi.pollsters.node:IOUtilPollster
    hardware.ipmi.temperature = ceilometer.ipmi.pollsters.sensor:TemperatureSensorPollster
    hardware.ipmi.voltage = ceilometer.ipmi.pollsters.sensor:VoltageSensorPollster
    hardware.ipmi.current = ceilometer.ipmi.pollsters.sensor:CurrentSensorPollster
    hardware.ipmi.fan = ceilometer.ipmi.pollsters.sensor:FanSensorPollster
    hardware.ipmi.power = ceilometer.ipmi.pollsters.sensor:PowerSensorPollster

ceilometer.poll.central =
    ip.floating = ceilometer.network.floatingip:FloatingIPPollster
    image.size = ceilometer.image.glance:ImageSizePollster
    port = ceilometer.network.statistics.port_v2:PortPollster
    port.uptime = ceilometer.network.statistics.port_v2:PortPollsterUptime
    port.receive.packets = ceilometer.network.statistics.port_v2:PortPollsterReceivePackets
    port.transmit.packets = ceilometer.network.statistics.port_v2:PortPollsterTransmitPackets
    port.receive.bytes = ceilometer.network.statistics.port_v2:PortPollsterReceiveBytes
    port.transmit.bytes = ceilometer.network.statistics.port_v2:PortPollsterTransmitBytes
    port.receive.drops = ceilometer.network.statistics.port_v2:PortPollsterReceiveDrops
    port.receive.errors = ceilometer.network.statistics.port_v2:PortPollsterReceiveErrors
    radosgw.containers.objects = ceilometer.objectstore.rgw:ContainersObjectsPollster
    radosgw.containers.objects.size = ceilometer.objectstore.rgw:ContainersSizePollster
    radosgw.objects = ceilometer.objectstore.rgw:ObjectsPollster
    radosgw.objects.size = ceilometer.objectstore.rgw:ObjectsSizePollster
    radosgw.objects.containers = ceilometer.objectstore.rgw:ObjectsContainersPollster
    radosgw.usage = ceilometer.objectstore.rgw:UsagePollster
    storage.containers.objects = ceilometer.objectstore.swift:ContainersObjectsPollster
    storage.containers.objects.size = ceilometer.objectstore.swift:ContainersSizePollster
    storage.objects = ceilometer.objectstore.swift:ObjectsPollster
    storage.objects.size = ceilometer.objectstore.swift:ObjectsSizePollster
    storage.objects.containers = ceilometer.objectstore.swift:ObjectsContainersPollster
    switch.port = ceilometer.network.statistics.port:PortPollster
    switch.port.uptime = ceilometer.network.statistics.port:PortPollsterUptime
    switch.port.receive.packets = ceilometer.network.statistics.port:PortPollsterReceivePackets
    switch.port.transmit.packets = ceilometer.network.statistics.port:PortPollsterTransmitPackets
    switch.port.receive.bytes = ceilometer.network.statistics.port:PortPollsterReceiveBytes
    switch.port.transmit.bytes = ceilometer.network.statistics.port:PortPollsterTransmitBytes
    switch = ceilometer.network.statistics.switch:SWPollster
    switch.ports = ceilometer.network.statistics.switch:SwitchPollsterPorts
    network.services.vpn = ceilometer.network.services.vpnaas:VPNServicesPollster
    network.services.vpn.connections = ceilometer.network.services.vpnaas:IPSecConnectionsPollster
    network.services.firewall = ceilometer.network.services.fwaas:FirewallPollster
    network.services.firewall.policy = ceilometer.network.services.fwaas:FirewallPolicyPollster
    volume.size = ceilometer.volume.cinder:VolumeSizePollster
    volume.snapshot.size = ceilometer.volume.cinder:VolumeSnapshotSize
    volume.backup.size = ceilometer.volume.cinder:VolumeBackupSize

ceilometer.compute.virt =
    libvirt = ceilometer.compute.virt.libvirt.inspector:LibvirtInspector
    vsphere = ceilometer.compute.virt.vmware.inspector:VsphereInspector

ceilometer.sample.publisher =
    test = ceilometer.publisher.test:TestPublisher
    notifier = ceilometer.publisher.messaging:SampleNotifierPublisher
    udp = ceilometer.publisher.udp:UDPPublisher
    tcp = ceilometer.publisher.tcp:TCPPublisher
    file = ceilometer.publisher.file:FilePublisher
    http = ceilometer.publisher.http:HttpPublisher
    prometheus = ceilometer.publisher.prometheus:PrometheusPublisher
    https = ceilometer.publisher.http:HttpPublisher
    gnocchi = ceilometer.publisher.gnocchi:GnocchiPublisher
    zaqar = ceilometer.publisher.zaqar:ZaqarPublisher
    opentelemetryhttp = ceilometer.publisher.opentelemetry_http:OpentelemetryHttpPublisher

ceilometer.event.publisher =
    test = ceilometer.publisher.test:TestPublisher
    notifier = ceilometer.publisher.messaging:EventNotifierPublisher
    http = ceilometer.publisher.http:HttpPublisher
    https = ceilometer.publisher.http:HttpPublisher
    gnocchi = ceilometer.publisher.gnocchi:GnocchiPublisher
    zaqar = ceilometer.publisher.zaqar:ZaqarPublisher
    file = ceilometer.publisher.file:FilePublisher

ceilometer.event.trait_plugin =
    split = ceilometer.event.trait_plugins:SplitterTraitPlugin
    bitfield = ceilometer.event.trait_plugins:BitfieldTraitPlugin
    timedelta = ceilometer.event.trait_plugins:TimedeltaPlugin

console_scripts =
    ceilometer-polling = ceilometer.cmd.polling:main
    ceilometer-agent-notification = ceilometer.cmd.agent_notification:main
    ceilometer-send-sample = ceilometer.cmd.sample:send_sample
    ceilometer-upgrade = ceilometer.cmd.storage:upgrade
    ceilometer-rootwrap = oslo_rootwrap.cmd:main
    ceilometer-status = ceilometer.cmd.status:main

network.statistics.drivers =
    opencontrail = ceilometer.network.statistics.opencontrail.driver:OpencontrailDriver

oslo.config.opts =
    ceilometer = ceilometer.opts:list_opts
    ceilometer-auth = ceilometer.opts:list_keystoneauth_opts