Python 3.8 is no longer part of the tested runtimes since 2024.2[1]
because its EOL is coming soon.
Also officially declare python 3.12 support because python 3.12 is now
part of tested runtimes and unit test job with Python 3.12 is now
voting.
[1] https://governance.openstack.org/tc/reference/runtimes/2024.2.html
Change-Id: I472c27133b59c18e08d60f112bb6a77c8bc9d4a8
Each sample is processed according to its type. So usage of
an unsupported type may cause some samples to be ignored unexpectedly.
Make sure that the Sample class is initialized with a supported value
to detect any internal bugs.
Change-Id: Iadcd9654d823b7c60d6f10d1f9b67877cbc9183a
This existing logic is quite redundant and most of the checks in if
block can be replaced by `if dict['key']:`.
Change-Id: I6c36c7263e8d305afa6e4859d902c13e512d0448
It was added as part of maintenance of lower-constraints[1], but is not
really used by our code directly.
[1] 7a994d0719864f04b886e8bae2b205de22166e88
Change-Id: I2f83ad8cc7433a918f248c432f3506ea3d0e2de2
This changes the code to follow the original code in sg-core.
The resource_name label value in sg-core is being overwritten
when there is a "display name" and "name". It shouldn't be
duplicated.
It also removes the index variable, which is there in the
original implementation mostly to do this overwrite. I
don't think it's needed in this Python implementation.
Related sg-core code: https://github.com/infrawatch/sg-core/blob/master/plugins/handler/ceilometer-metrics/main.go#L269
Change-Id: I72971d51fa37b43e348605af9f6bb52cfa651369
Allow generating GMR report upon file trigger in addition to a signal.
The feature has been available in oslo.reports since 1.11.0[1] but it
can't be used in ceilometer without proper initialization.
[1] d23e0a65b23dc77d0104075d2313de6ca22b5cae
Change-Id: Ib08a808cff3203aa90c91e3bc25c3d46a14f0ade
Notifications are not always sent over RabbitMQ solely and may be done
by different methods according to how the notification driver is
configured.
Change-Id: I31e12b9ab421f44ef51040f83ff99514c9dd7c9e
With this patch, ceilometer-polling is able to expose
metrics itself in Prometheus format so they can be
scraped directly from a Prometheus instance.
Change-Id: I68d1dc96a89e57cafa9dba207d92403a1e156fe6
This option can be configured via both arguments and configuration
files. Add it to the sample config file generated by
oslo-config-generator to make user aware that they can use config
files to customize this option
Change-Id: I85e84a949c75f5e009bc33999f95fc6073757fcd
The libvirt library is not used by ceilometer.compute.discovery
directly, so the module don't have to import it.
Change-Id: I5da145044925a36f85f16197691f61bd833b1409
Add file to the reno documentation build to show release notes for
stable/2024.2.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2024.2.
Sem-Ver: feature
Change-Id: Ia23342dee322e2da9373aa1c77e05c6d3655e35d
This patch adds possibility to start child service for heart beat reports
of polling agents. Such data can be leveraged in service health check
scripts for monitoring purposes.
Change-Id: I721a1ef997c5dfb59cdd0e759fcd7d511c24bbb0
When polling libvirt for instance data, we weren't getting
the instance metadata. In particular we weren't getting the
metering.server_group, which is useful for autoscaling.
The metadata need to be retreived by an API call to nova.
The code already called nova API to get flavor ID. I adjusted
the code to get the flavor ID and instance metadata by the same
call, so the number of API calls is unchanged.
Change-Id: I8034fca8a86263f38e396c4c1512546863a754db