Skip to content

Commit 204f1ce

Browse files
committed
ui: use *metrics apis only when metrics enabled for list
In UI for the list views it is regular API view by default and *Metrics API response may not be needed. *Metrics APIs will take more time to return response so this PR tries to improve the behaviour and enables calling regular API without metrics when metrics toggle is not enabled. Signed-off-by: Abhishek Kumar <[email protected]>
1 parent a09354d commit 204f1ce

File tree

4 files changed

+9
-6
lines changed

4 files changed

+9
-6
lines changed

ui/src/config/router.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,6 @@ function generateRouterMap (section) {
7575
icon: child.icon,
7676
docHelp: vueProps.$applyDocHelpMappings(child.docHelp),
7777
permission: child.permission,
78-
getApiToCall: child.getApiToCall,
7978
resourceType: child.resourceType,
8079
filters: child.filters,
8180
params: child.params ? child.params : {},

ui/src/config/section/compute.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,7 @@ export default {
2929
title: 'label.instances',
3030
icon: 'cloud-server-outlined',
3131
docHelp: 'adminguide/virtual_machines.html',
32-
permission: ['listVirtualMachines', 'listVirtualMachinesMetrics'],
33-
getApiToCall: () => store.getters.metrics ? 'listVirtualMachinesMetrics' : 'listVirtualMachines',
32+
permission: ['listVirtualMachinesMetrics'],
3433
resourceType: 'UserVm',
3534
params: () => {
3635
var params = { details: 'group,nics,secgrp,tmpl,servoff,diskoff,iso,volume,affgrp,backoff' }

ui/src/config/section/infra/clusters.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ export default {
2626
permission: ['listClustersMetrics'],
2727
searchFilters: ['name', 'zoneid', 'podid', 'hypervisor'],
2828
columns: () => {
29-
const fields = ['name', 'state', 'allocationstate', 'clustertype', 'hypervisortype', 'hosts']
30-
const metricsFields = ['cpuused', 'cpumaxdeviation', 'cpuallocated', 'cputotal', 'memoryused', 'memorymaxdeviation', 'memoryallocated', 'memorytotal', 'drsimbalance']
29+
const fields = ['name', 'allocationstate', 'clustertype', 'hypervisortype', 'hosts']
30+
const metricsFields = ['state', 'cpuused', 'cpumaxdeviation', 'cpuallocated', 'cputotal', 'memoryused', 'memorymaxdeviation', 'memoryallocated', 'memorytotal', 'drsimbalance']
3131
if (store.getters.metrics) {
3232
fields.push(...metricsFields)
3333
}

ui/src/views/AutogenView.vue

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -829,7 +829,12 @@ export default {
829829
}
830830
831831
if (this.$route && this.$route.meta && this.$route.meta.permission) {
832-
this.apiName = (this.$route.meta.getApiToCall && this.$route.meta.getApiToCall()) || this.$route.meta.permission[0]
832+
this.apiName = this.$route.meta.permission[0]
833+
if (!store.getters.metrics && !this.dataView &&
834+
this.apiName && this.apiName.endsWith('Metrics') &&
835+
store.getters.apis[this.apiName.replace(/Metrics$/, '')]) {
836+
this.apiName = this.apiName.replace(/Metrics$/, '')
837+
}
833838
if (this.$route.meta.columns) {
834839
const columns = this.$route.meta.columns
835840
if (columns && typeof columns === 'function') {

0 commit comments

Comments
 (0)