From ad3b8fa59f49a1b0dcc7585edbcc3ad362063655 Mon Sep 17 00:00:00 2001 From: badrAZ Date: Fri, 26 Mar 2021 14:39:35 +0100 Subject: [PATCH] feat(xo-server-usage-report): add VM IP addresses to the report (#5696) --- CHANGELOG.unreleased.md | 2 ++ packages/xo-server-usage-report/report.html.tpl | 2 ++ packages/xo-server-usage-report/src/index.js | 7 +++++++ 3 files changed, 11 insertions(+) diff --git a/CHANGELOG.unreleased.md b/CHANGELOG.unreleased.md index a13bf7d94..abeaa7e49 100644 --- a/CHANGELOG.unreleased.md +++ b/CHANGELOG.unreleased.md @@ -9,6 +9,7 @@ - [Backup] Run backup jobs on different system processes (PR [#5660](https://github.com/vatesfr/xen-orchestra/pull/5660)) - [VM] Display the full driver version in the general and advanced tab instead of `major.minor` [#5680](https://github.com/vatesfr/xen-orchestra/issues/5680) (PR [#5691](https://github.com/vatesfr/xen-orchestra/pull/5691)) +- [Usage report] Add VM IP addresses to the report (PR [#5696](https://github.com/vatesfr/xen-orchestra/pull/5696)) ### Bug fixes @@ -37,6 +38,7 @@ > > In case of conflict, the highest (lowest in previous list) `$version` wins. +- xo-server-usage-report minor - xo-server-backup-reports patch - @vates/disposable patch - xo-server-transport-email minor diff --git a/packages/xo-server-usage-report/report.html.tpl b/packages/xo-server-usage-report/report.html.tpl index 38dbb3372..381802155 100644 --- a/packages/xo-server-usage-report/report.html.tpl +++ b/packages/xo-server-usage-report/report.html.tpl @@ -520,6 +520,7 @@ UUID Name + IP addresses CPU RAM (GiB) Disk read (MiB) @@ -534,6 +535,7 @@ {{shortUUID this.uuid}} {{this.name}} + {{formatAddresses this.addresses}} {{normaliseValue this.cpu}} % {{normaliseEvolution this.evolution.cpu}} {{normaliseValue this.ram}} {{normaliseEvolution this.evolution.ram}} {{normaliseValue this.diskRead}} {{normaliseEvolution this.evolution.diskRead}} diff --git a/packages/xo-server-usage-report/src/index.js b/packages/xo-server-usage-report/src/index.js index af121a03b..244ddb5e6 100644 --- a/packages/xo-server-usage-report/src/index.js +++ b/packages/xo-server-usage-report/src/index.js @@ -136,6 +136,10 @@ Handlebars.registerHelper('math', function (lvalue, operator, rvalue, options) { Handlebars.registerHelper('shortUUID', shortUuid) +Handlebars.registerHelper('formatAddresses', addresses => + addresses.length === 0 ? 'No IP record' : addresses.join(', ') +) + Handlebars.registerHelper('normaliseValue', normaliseValue) Handlebars.registerHelper( @@ -285,6 +289,7 @@ async function getVmsStats({ runningVms, xo }) { return { uuid: vm.uuid, name: vm.name_label, + addresses: Object.values(vm.addresses), cpu: METRICS_MEAN.cpu(stats.cpus), ram: METRICS_MEAN.ram(stats), diskRead: METRICS_MEAN.disk(get(stats.xvds, 'r')), @@ -640,6 +645,7 @@ const CSV_CAST = { } const CSV_COLUMNS = { + addresses: { key: 'addresses', header: 'IP addresses' }, cpu: { key: 'cpu', header: 'CPU (%)' }, cpuEvolution: { key: 'evolution.cpu', header: 'CPU evolution (%)' }, diskRead: { key: 'diskRead', header: 'Disk read (MiB)' }, @@ -771,6 +777,7 @@ class UsageReportPlugin { columns: [ CSV_COLUMNS.uuid, CSV_COLUMNS.name, + CSV_COLUMNS.addresses, CSV_COLUMNS.cpu, CSV_COLUMNS.cpuEvolution, CSV_COLUMNS.ram,