All of the inspector interface methods takes in instance being
inspected and duration of seconds over which metric needs to be
calculated. Though the duration parameter is not used, the
method signaures need to be updated to match ceilometer
changes [1].
[1] 90560e42fd1b589ebb03b8629cf591dee8e559a6
Change-Id: I3ad8da0dc9cd26e269bf18f26231063d122faf98
Update translations for the Queens release.
Note: this is being cherry-picked from stable/queens to master
instead of the other way around. The translations were actually done
based on queens, so that is where they were originally merged. In
hindsight, they should also be merged in master so that it has the
latest translations as well, so we should have followed the normal
process of merging in master first, but too late for that now.
Change-Id: I374eae9b0ef4bdd049d9b26b6bb27258c7907143
(cherry picked from commit a29ca2b75e)
Found some copyrights that were not updated the last time the
file was changed. Updating copyright dates to reflect the most
recent change.
Change-Id: I28adcc19b4f612095d54f41f52ac1f6ee18a0b81
Logs are not longer supposed to be translated. This removes log
translation markers from the code and removes the po files that held
log translations.
Change-Id: I8910f6c4f4a13623720d6339431af66014d15dba
Ceilometer added two new parameters to DiskStats [1], wr_total_times
and rd_total_times. We do not currently have those metrics, so 0 will
be passed in for both.
[1] https://github.com/openstack/ceilometer/commit/ed67c2bd3
Change-Id: I7c60ad99df736fa878b97177035d1565dac4beab
ceilometer has a new polling interface that inspects instance at once
rather than individual parts at a time.
Includes changes for vnic polling interface and disk polling interface.
Change-Id: Ieb68420eba002a36569db41c36ddf827bb9edfea
In the Ocata release, there is a new conf variable that is passed
into the collector. This is generally used by the libvirt collector
at the moment. It is not needed by the PowerVM collector, but the
__init__ signature needs to be updated to take it in. This change
brings the PowerVM collector in line with the base requirements from
the core ceilometer project.
Change-Id: Ib5620f6830949f50939d07ba07be900a5451df56
The InterfaceStats API has been updated to include a new set of metrics.
PowerVM does not support all of the new drop/error types. However, it
does have a total drop packets count. Since we poll the client side
VEA, those are likely dropped on transmit. Therefore the dropped
packets counter works against the client side NIC, and counts all drops
as transmit drops.
Change-Id: Id75757d886df4b859e86da8a498b75d36c267e39
Closes-Bug: #1632710
The package version file erroneously contained quotes here:
version_info = pbr.version.VersionInfo('__package__')
This caused docs builds using setuptools at or beyond 20.2 to fail with:
pkg_resources.RequirementParseError: Invalid requirement, parse error at
"'__packag'"
This change set remedies the line to refer to __package__ (a builtin
variable which resolves to the package name) rather than the literal
string '__package__':
version_info = pbr.version.VersionInfo(__package__)
...and updates the requirements file to use a setuptools version at or
beyond 16.0 to align with openstack's global requirements.
Change-Id: I9ba12bb256c5d3213eb07ddf13351178bf06114b
Closes-Bug: 1585027
Change-Id 'Ib3616fbc2713329a174793634e680f7208049c86'
inadvertantly changed the file permissions from 644 to 755.
This fixes that problem.
Change-Id: I2cae47af11108a68d1aeb7078c5da50ec02839df
We have seen scenarios where users have rebooted their systems and the
ceilometer-powervm process has started before the backing PowerVM REST
server. This generally indicates a packaging issue (where the
ceilometer-powervm package should depend on the others). However,
there is the ability in the PowerVM Session to make multiple attempts.
This change set takes advantage of the multiple attempts provided by the
pypowervm session. That means that if the REST server is booting, the
ceilometer-powervm will wait up to 10 minutes for the REST server to
finish starting. The REST server should start much faster than that,
and this is just an upper limit timeout.
Change-Id: If9569eccbdb9107e5892f03a91a035e1d5943e5e
Closes-Bug: 1570404
Since ceilometer-powervm is not in tree with ceilometer, it can't
use ceilometer's translation domain. This change introduces i18n.py
and the ceilometer-powervm domain.
Change-Id: If8825892d506a1e0344dce888b8357910e3b7da7
- Removed yasfb from requirements (no longer needed, not py3 compat)
- Changed iops calculation to be compatible with py3 division changes
Change-Id: Ic8a53562be401deaa391d21b5ff6f92ffa7d07d3
In the rare event that a VM is queried for CPU utilization before its
first boot, the entitled cycles may be 0. This resulted in a divide by
zero error. This change detects that scenario and removes the divide by
zero possibility.
Change-Id: If37422e7b501c60ad2b1cb610b8c7802e6543942
Closes-Bug: 1492831
In PowerVM, when a VM is migrated, the 'metrics come with it'. That
means that the metrics are cumulative and you can be assured that when
it is on a new host, its metrics are still valid.
This presents some complications. The metrics are pulled from the host.
To determine rates, we ask the host for the previous sample and the
current. Previously we had assumed that if the previous sample was
None, it must be a new VM so all the traffic from the current is 'new'.
With live migration taken into account, we can not do that. There may
be months of CPU, Network and Storage data in that VMs metrics. This
really skews the metrics in undesirable ways.
This change set will skip instances (for a given inspection cycle) that
are in the current sample but not the previous. This does lose a sample
cycle, but ensures that we maintain accurracy (which is more important).
Change-Id: Iba7f1287b3433acd8517947e01cbfa14fe93413c
This change set provides base support for the PowerVM compute inspector
to collect the storage devices.
Since PowerVM monitors storage metrics on the 'buses' (rather than a per
device) the metrics are reported based on the bus. This may be a
virtual SCSI bus or a virtual Fibre Channel bus.
Change-Id: I704c7e79e825b7d5f0f8924c28d502ccbfb9330d
- Add a version.py file to allow querying of the pbr version for the package
which is pulled from the git tags
- Use this when doing the sphinx docs generation
Change-Id: Ic892b131c9be2cc65a2b468c9cdb2ff23d1d8743
This change set implements the network stats for the PowerVM hypervisor.
It provides both rate based and absolute stats.
Partially Implements: bp/powervm-compute-inspector
Change-Id: I7c07691e61c8f5a6d5cb28185c90cdecb5b47bf6
Helpers are a utility within the pypowervm adapter that help with edge
scenarios that can occur when interacting with the API. This change set
adds two of the more common helpers to the ceilometer-powervm adapter
creation.
The first is the log helper. In the event of error scenarios, this
helper will log the error. The second is the helper for the vio busy.
In the case of a Virtual I/O Server being busy, this will retry the
requests after a short period of time.
Change-Id: I65634f394416714c452fbd9fdc48db87b9c8ed61
This change set implements (and adds unit tests) for the PowerVM CPU
stats. The stats included are the CPUStats and the CPUUtilStats.
Partially Implements: bp/powervm-compute-inspector
Change-Id: I050ad3af38171bd9fb990264a921b013e2791a93
Provides the initial structure for the inclusion of PowerVM as a plugin
based compute inspector. Also includes a fixture for upcoming unit
tests. Implementation of the inspector functions are to be included in
upcoming change sets.
Partially Implements: bp/powervm-compute-inspector
Change-Id: I613161f2fe368b926bd679685b9beeff27a52896
Added base framework for agents and tests
Added base docs infratstructure for Sphinx with links back to
readme and contributing files
Change-Id: I8ed56fb60e73456bc8c44fef4bd6089e1793a520
This change set supports bringing in the python powervm REST API
library for initial use within ceilometer-powervm.
This change also fixes pep8 issues, mainly around the copyright rules
that are needed (do not copyright empty files).
Also updates the tox file such that we run the new oslo concurrency
as ceilometer removed the integrated package.
Change-Id: I12739ca702e004cd048067ad25e9e07d1ef106e6
Initial work to enable the Ceilometer PowerVM project in git.
The work done here provides:
- .gitignore - Indicate which files not to track within Git.
- .gitreview - Input to the git-review command on how to send to
Gerrit.
- .testr.conf - Conf file input for the testr command (UT)
- CONTRIBUTING.rst - Information on how to contribute.
- HACKING.rst - Information on what needs to be done for updates.
- LICENSE - The license for the project
- README.rst - Information on what this project is. Currently this is
the blueprint.
- openstack-common.conf - Required openstack configuration for all
projects
- setup.cfg - Input to the setup.py on how to execute certain actions.
- setup.py - Used for build of the project.
- requirements.txt - Required packages (and levels) to run the code.
- test-requirements.txt - Required packages (and levels) in addition
to the requirements, that indicates what is
needed to run the UT.
- tox.ini - The input for the tox commands.
In addition, a base set of packages for the agent and unit tests were
loaded in.
Change-Id: I49f23751b8694f6e3595fe8b4f39822737e68f31