This removes the monasca integration. Monasca was recently
declared as inactive project. In addition the monasca related
unit tests were very verbose and they were outputing a lot
of errors. Lately one of the unittests even started failing
randomly.
Change-Id: I468079b2a790245bd682c80d0116fb0da60d0e7c
Now cinder is quite commonly used thus enabling volume meters would
help users to gather metrics from it easily, without modifying
the default file.
Change-Id: Ibdeffd65053fb55f3925590f7c1f9afa6f4383af
These metrics are no longer supported since we removed
GenericHardwareDeclarativePollster by [1].
[1] a28cef7036
Closes-Bug: #2007108
Change-Id: I2437f311ae0f975570c7b01bfa0f045af7cfeab4
... because it is of no use since neutron-lbaas was retired and was
replaced by Octavia. This feature was officially deprecated during
Yoga cycle[1] so we are ready to remove it.
[1] 8917c73964
Change-Id: Ic145c23cc0b0372ef78f4a45ffb084bec24936c3
Since [1] was merged, ceilometer supports caching attributes of gnocchi
resource using the oslo.cache library. However the parameters to use
the feature are missing from ceilometer.conf auto-generated.
This change adds missing oslo.cache namespace so that parameters of
this library is properly included in the file generated by
the oslo-config-generator command.
[1] 2511cfb6e4
Change-Id: Ifa0c882f41e6a0cc56d7304e48e5479906fc1199
The oslo.reports library provides some options under the [oslo_reports]
section. This change ensures these parameters are rendered by
the oslo-config-generator command.
Closes-Bug: #1940733
Change-Id: Iba2180a4a4b939c0763b5867fc603f875c39d1ea
The Ceilosca (monasca-ceilometer) publisher has been around since
before the Mitaka release and has been used in production for years.
The MonascaPublisher acts as another Ceilometer publisher and sends
selected metrics on to the Monasca API for storage, aggregation,
alarming, etc. Once metrics are in Monasca, they may be retrieved
through the Monasca API or with the python-monascaclient. This
Ceilosca functionality is a key component for metering in several
distributions and is used in many customer installations.
With the removal of the Ceilometer v2 API (which allowed the
removal of the Ceilosca storage driver, shrinking the Ceilosca
code base) and continuing changes to Ceilometer, a tighter
integration with the ceilometer repo may be beneficial to keep
both Monasca and Telemetry in sync.
Change-Id: I2cbce160503e23dfbde375722a3bd100ec86494e
Story: 2001239
Task: 5769
disk.* are just aggregates of disk.device.*. We
basically build the same think twice.
It's up to the backend (ie: Gnocchi) to aggregate them
if someone want the aggregate.
Change-Id: I612b575004f65665f8630f19f56c2fb3637448fd
Enabling everything to be polled and transformed by default is quite heavy and
can lead to a massive amount of unused metrics. Limit the default to a few
metrics known to be actually useful to common deployers.
We keep all pollsters enabled on unit tests and devstack.
Change-Id: Ifb5aa684e575b7904726276b7205824f2dcaa7ce
Gnocchi by default uses the low archive policy. Aodh alarm examples
and heat template examples use 300 as granularity as well.
But ceilometer generates sample every 600 seconds making
alarming/autoscaling doesn't work out of the box.
People have to lower ceilometer polling or raise Gnocchi/Aodh/Heat
granularity to make thing works.
Change-Id: I3f234e208f3389d6e5952782aa9b310594bfaa5f
To optimise performance, We have to update ceilometer architecture.
The most important step is to deprecate collector. From now on, we
can configure multiple publishers in pipeline for pushing data to
internal or external system.
Highlight using multiple dispatchers.
Change pipeline publisher and disable ceilometer-collector by default.
Co-Authored-By: gordon chung <gord@live.ca>
Change-Id: I25a6e0b9221844adb4412f1829d9e290b6e198a3
add support for polling specific definition file.
this splits the existing polling specific options out of
pipeline.yaml as transformations only exists on notifcation agent
and polling interval/discovery only exists on polling agents.
backward compatibility is maintained so pipeline.yaml file from
previous releases can still be passed in as polling definition file.
Change-Id: I206566349f98d6b17336cd5ea36ceb1e304dd90c
In compute.instance.update event, Nova reports old vm state in
payload.old_state, add this field to traits.
Change-Id: Id8266fae47b6fd7119000c9da6d71f035a20477a
This remove pollsters option from configfile sample
due to a duplicate option registration. This will
be fixed later.
The exchange_control group in the config sample doesn't exit
in reality exchange are in DEFAULT group.
This removes usage of cfg.CONF everywhere left.
This adds all missing OPTS in sample file.
Change-Id: I48c11ee7e1aae65847958b98532b3bdb48a3ceb5
Currently the 'computer.instance.*' event traits map its 'instance_id' as
'instance_id'. But other events like volume, image, network and etc, they
all map their object_id as 'resource_id'. So we support both as the event
consumer can deal the events.traits with in a unified pattern.
Change-Id: I69935fcce228f1b4d490d3ac91251044102a8f11
For gnocchi_resource.yaml, make it have the same behavior like
we have for notification-meters defined in meters.yaml.
Make it fallback to some default gnocchi_resources.yaml file exactly
like we do for meters.yaml.
Closes-Bug: #1542184
Change-Id: I19814c5be02871419cca8035ced3d22a0feaacbc
The http_proxy_to_wsgi was recently added, however, in order to have
this configuration added by the config generator, we need to add it
to that relevant conf file.
Change-Id: Ie763367a75cde2deff8fcdfda47e08ce990bae00
This sets up the HTTPProxyToWSGI middleware in front of Ceilometer. The
purpose of thise middleware is to set up the request URL correctly in
case there is a proxy (For instance, a loadbalancer such as HAProxy)
in front of Ceilometer.
So, for instance, when TLS connections are being terminated in the
proxy, and one tries to get the versions from the / resource of
Ceilometer, one will notice that the protocol is incorrect; It will show
'http' instead of 'https'. So this middleware handles such cases.
Thus helping Keystone discovery work correctly.
The HTTPProxyToWSGI is off by default and needs to be enabled via a
configuration value.
Change-Id: I24f16dda49bd9e7930ca9f0d32bf0793463aff03
Closes-Bug: #1590608
The gnocchi event dispatcher have been broken by two major changes
because of no tests coverage (requests->gnocchiclient and panko
refactoring)
To fix that:
* the event dispatcher class derive the base event dispatcher class.
* Use correct gnocchi client method to search resources.
* Use correct gnocchi client method to update resources.
* Since record_event received a raw notification now and no more the event,
we change the parsing codetoo.
* And obviously add a test !
Change-Id: I94b7393d79e495c5101225b4097c7073978ca7d7
Co-Authored-By: Mehdi Abaakouk <sileht@redhat.com>
Closes-bug: 1627928
This change introduces a way to handle resources with the events
subsystem.
Also this need to be supported for type of resource.
To support it, etc/ceilometer/gnocchi_resources.yaml need to be
updated to add which event creates/updates/deletes the resource and
the mapping between event traits and gnocchi resource attributes.
This change adds the code to handle and the support for the 'instance'
and 'image' resource.
Only the delete event is support for now.
Related-bug: #1483634
Change-Id: Icd77137a74bccb5b2be078f206f153f0e9aa86c5
Added new resource types support of snmp related metrics: host,
host_disk, host_network_interface.
Change-Id: I220608e85629d89c44f778c82e0be67bb4ea6f3b
Depends-On: I0be08864ee10cefa252dc89885fda5fcc89a4e8a
Closes-Bug: #1518338
on sahara side we added new events related to current cluster
health. we want to collect statistic based on the cluster health,
like how many healthy clusters we have, and so on.
Health of the cluster will describe current state of cluster more
precisely.
Partially-implements blueprint: cluster-verification
Depends-On: Iac74a7bdec0f59a3720e17a682268faea36a45f3
Change-Id: Iea0f37cd2fe31e740a1ac5d02fd96c2f6b35495c
The default values needed for ceilometer's implementation of cors
middleware have been moved from paste.ini into the configuration
hooks provided by oslo.config. Furthermore, these values have been
added to ceilometer's default configuration parsing. This ensures
that if a value remains unset in ceilometer.conf, it will be set
to use sane defaults, and that an operator modifying the
configuration file will be presented with a default set of
necessary sane headers.
Closes-Bug: 1551836
Change-Id: Iaab90bfa1811bf6d56696648a000f02ee3306285
Based on the discussion result with Gordon:
In this change set, add the meter example file
'lbaas-v2-meter-definitions.yaml' in the directory
'etc/ceilometer/examples' to help the users to configure to
translate the LbaaS v2 events to examples when they need.
Co-Authored-By: Xia Linjuan <ljxiash@cn.ibm.com>
DocImpact: Need to update the doc about the configuration
Change-Id: Ied6778e26ba6d70ee1407279ce0025e8bf169f22
https://review.openstack.org/#/c/234823/ has broken heat
integration tests as the default policy no longer allows
to create_samples without admin privileges.
Change-Id: I28980ff4cd82950bc713da519e0e49b62fc77a22
Closes-Bug: #1551383
In this change set, add the following new event definitions to
receive the events of LBaaS v2.
a. loadbalancer
b. listener
c. healthmonitor
These events can be used for billing when the users use the LBaaS
service.
Co-Authored-By: Zi Lian Ji <jizilian@cn.ibm.com>
Change-Id: I6db28a934bac4a1d83cc1b61d879dc2b16989b3a
Implements: blueprint lbaas-v2-enablement