[release-announce] ironic-prometheus-exporter 1.1.0 (train)

no-reply at openstack.org no-reply at openstack.org
Wed Sep 25 12:50:52 UTC 2019


We contentedly announce the release of:

ironic-prometheus-exporter 1.1.0: Prometheus Exporter for Ironic
Hardware Sensor data

This release is part of the train stable release series.

The source is available from:

    https://opendev.org/openstack/ironic-prometheus-exporter

Download the package from:

    https://tarballs.openstack.org/ironic-prometheus-exporter/

Please report issues through:

    https://storyboard.openstack.org/#!/project/openstack/ironic-
prometheus-exporter

For more details, please see below.

1.1.0
^^^^^

New Features

* Adds support for handling Redfish-originated metrics alongside
  IPMI ones.

* Adds a Flask Application that can accept requests under
  */metrics*. The response to requests have *text/plain* type and the
  content is always the aggregation of all files stored in
  *[oslo_messaging_notifications]/location* in the *ironic.conf*. To
  run the application you can use any Web Server Gateway and set the
  application to *ironic_prometheus_exporter.app.wsgi:application*.

* Adds the initial support to parse ipmi metrics based on the
  following payloads: *Management*, *Temperature*, *System*,
  *Current*, *Version*, *Memory*, *Power*, *Watchdog2* and *Fan*. The
  metrics are generated in a format that is valid to be consumed by
  Prometheus by using the *prometheus client*.

* Adds support to add a description for each ipmi metric.

* Adds a metric called *baremetal_last_payload_timestamp_seconds*
  that can be used in Prometheus to query if a baremetal node stopped
  sending information for a period of time.

* Adds support to parse the ipmi metrics based on the *Voltage*
  payload.

* Adds two new *oslo_messaging_notifications* drivers:

  * *prometheus_exporter*: the sensor data of each baremetal node is
    transformed into Prometheus metrics when possible and stored in a
    file.

  * *file_exporter*: stores the raw sensor data of each baremetal
    node in a file. It can be used to see how is the format of the
    data for a specific driver before creating the parser for it.

  To use any of the driver it's necessary to update the *ironic.conf*
  with the following configurations:

     [conductor]
     send_sensor_data=true

     [oslo_messaging_notifications]
     driver= <driver>
     transport_url=fake://
     location= <absolute path for directory>

  The files created by the drivers will always contain the latest
  information about the node.

Changes in ironic-prometheus-exporter 0.1.0..1.1.0
--------------------------------------------------

0ded99e Add metrics descriptions
9959cf3 Add Redfish metrics support
46e50fb Move timestamp registry to a sharable 'header' module
5398f86 Support for metrics description
1190c4e Add copyright statements to files
fba86b8 Rearrange unit test samples
d4b1856 Release note for oslo.messaging.notify drivers
edef5f2 Release note for timestamp metric
ced2153 Release note for ipmi Voltage metrics
458bc25 Release note for Flask Application
573c2e6 Release note for initial ipmi support
b2e3916 Move metric creation logic from messaging module
24ce43f build universal wheels
880f8cb Release Notes support
de03769 Voltage Metrics
80e6fc9 Payload Timestamp Metric
2208c02 New labels support and simple fixes


Diffstat (except docs and test files)
-------------------------------------

.gitignore                                         |   3 +
.zuul.yaml                                         |   1 +
ironic_prometheus_exporter/app/exporter.py         |  12 +
ironic_prometheus_exporter/app/wsgi.py             |  12 +
ironic_prometheus_exporter/messaging.py            |  41 +-
ironic_prometheus_exporter/parsers/descriptions.py |  39 +
ironic_prometheus_exporter/parsers/header.py       |  36 +
ironic_prometheus_exporter/parsers/ipmi.py         | 214 +++--
.../parsers/metrics_information/header.json        |   4 +
.../parsers/metrics_information/ipmi.json          |  96 +++
.../parsers/metrics_information/redfish.json       |  54 ++
ironic_prometheus_exporter/parsers/redfish.py      | 260 ++++++
.../notification-ipmi-1.json}                      |   0
.../notification-ipmi-2.json}                      |  10 +-
releasenotes/notes/.placeholder                    |   0
.../notes/add-redfish-parser-af5b3b01a4e5d02d.yaml |   5 +
.../notes/flask_application-b827dd37aacdc4ee.yaml  |   9 +
.../ipmi-initial-support-7af5c694f2bb4cb0.yaml     |   8 +
.../ipmi-metric-description-d670149bcd984a51.yaml  |   4 +
.../notes/ipmi-timestamp-905054395c20f4b6.yaml     |   6 +
.../notes/ipmi-voltage-debd12bb6cf6c97d.yaml       |   4 +
....messaging.notify.drivers-81de6077d89ea1b2.yaml |  28 +
releasenotes/source/_static/.placeholder           |   0
releasenotes/source/_templates/.placeholder        |   0
releasenotes/source/conf.py                        | 293 +++++++
releasenotes/source/index.rst                      |   8 +
releasenotes/source/unreleased.rst                 |   5 +
setup.cfg                                          |   3 +
tox.ini                                            |  16 +
37 files changed, 2199 insertions(+), 265 deletions(-)







More information about the Release-announce mailing list