Skip to content

Commit b093e4a

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 d6181d5 commit b093e4a

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
@@ -28,8 +28,7 @@ export default {
2828
title: 'label.instances',
2929
icon: 'cloud-server-outlined',
3030
docHelp: 'adminguide/virtual_machines.html',
31-
permission: ['listVirtualMachines', 'listVirtualMachinesMetrics'],
32-
getApiToCall: () => store.getters.metrics ? 'listVirtualMachinesMetrics' : 'listVirtualMachines',
31+
permission: ['listVirtualMachinesMetrics'],
3332
resourceType: 'UserVm',
3433
params: () => {
3534
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)