Hey,
[ Apologies for resending this series before receiving comments, but I
found two issues (namely on patch 3 and 4) and thus I am reposting it
as v3 having those fixed. ]
This series bring support for various statistics about domains
regarding CPU, Memory, Network Interfaces, Block and Jobs. Not all of
the statistics are implemented: qdisk support is missing in this series
and some of the memory statistics aren't available.
With this series we further implement 7 more functions of libvirt APIs.
It is organized as follows:
* Patch 1, 2: implements cpu/memory statistics.
* Patch 3: implements network statistics
* Patch 4: adds helper method virDiskNameParse as an extension
to virDiskNameToIndex (New)
* Patch 5: VBD block statistics. QDisk will follow up in a separate
series regarding QEMU monitor integration.
* Patch 6: implement fetching all domain statistics
* Patch 7, 8: implements Job information statistics.
Overall it looks big but 70% of the patch is due to #5 and #6 but doesn't
add necessarily more complexity to the driver I believe. Patch #7 and #8
are of special importance because GetJobInfo and GetJobStats are now used
in Openstack Kilo to monitor live-migration progress. These two patches
together with the p2p migration I sent earlier let us sucessfully
live-migrate with Openstack Kilo. Furthermore with this series we get to
support nova diagnostics.
Tested this series on 4.4.3 and 4.5 setups plus Openstack Kilo.
Individual patches contain the changelog and comments addressed since v1.
Thanks!
Joao Martins (8):
libxl: implement virDomainGetCPUStats
libxl: implement virDomainMemorystats
libxl: implement virDomainInterfaceStats
util: add virDiskNameParse to handle disk and partition idx
libxl: implement virDomainBlockStats
libxl: implement virConnectGetAllDomainStats
libxl: implement virDomainGetJobInfo
libxl: implement virDomainGetJobStats
configure.ac | 2 +-
src/libvirt_private.syms | 1 +
src/libxl/libxl_domain.c | 54 +++
src/libxl/libxl_domain.h | 6 +
src/libxl/libxl_driver.c | 960 +++++++++++++++++++++++++++++++++++++++++++++++
src/util/virutil.c | 41 +-
src/util/virutil.h | 1 +
tests/utiltest.c | 56 +++
8 files changed, 1116 insertions(+), 5 deletions(-)
--
2.1.4