From 576cc5cebc877be29628e30ce91d7f61c28c09e6 Mon Sep 17 00:00:00 2001 From: zhangyu Date: Wed, 30 Aug 2023 14:14:27 +0800 Subject: [PATCH] =?UTF-8?q?NEZ-3153=20fix=EF=BC=9AAgent=E4=B8=ADLoki=20sta?= =?UTF-8?q?tus=E6=9C=AA=E5=AE=8C=E5=85=A8=E5=B1=95=E7=A4=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E8=BF=94=E5=9B=9E=E7=9A=84key-value=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/bottomBox/tabs/lokiStatus.vue | 16 ++ .../common/table/settings/lokiStatusTable.vue | 234 +++++++++--------- 2 files changed, 139 insertions(+), 111 deletions(-) diff --git a/nezha-fronted/src/components/common/bottomBox/tabs/lokiStatus.vue b/nezha-fronted/src/components/common/bottomBox/tabs/lokiStatus.vue index 43f9d067f..9440977b3 100644 --- a/nezha-fronted/src/components/common/bottomBox/tabs/lokiStatus.vue +++ b/nezha-fronted/src/components/common/bottomBox/tabs/lokiStatus.vue @@ -17,6 +17,7 @@ :ringTableData='ringTableData' :configTableData='configTableData' :servicesTableData='servicesTableData' + :servicesTableTitle='servicesTableTitle' @configval='configval'> @@ -69,6 +70,7 @@ export default { configMode: 'defaults', configTableData: [], servicesTableData: [], + servicesTableTitle: [], ringTableData: [], readyTableData: '', loading: false @@ -114,12 +116,26 @@ export default { }) }, async getservicesTableData () { + this.servicesTableData = [] const response = await this.$get('agent/' + this.obj.id + '/loki/services') if (response.code === 200) { const serObj = {} + let arr = [] response.data.list.forEach(item => { serObj[item.service] = item.status + arr.push({ + label: item.service, + prop: item.service, + minWidth: 180 + }) + if (arr.length >= 6) { + this.servicesTableTitle.push(this.$lodash.cloneDeep(arr)) + arr = [] + } }) + if (arr.length) { + this.servicesTableTitle.push(arr) + } serObj.ready = this.readyTableData this.servicesTableData.push(serObj) } diff --git a/nezha-fronted/src/components/common/table/settings/lokiStatusTable.vue b/nezha-fronted/src/components/common/table/settings/lokiStatusTable.vue index ade0e1503..9ddf75329 100644 --- a/nezha-fronted/src/components/common/table/settings/lokiStatusTable.vue +++ b/nezha-fronted/src/components/common/table/settings/lokiStatusTable.vue @@ -2,54 +2,32 @@
{{$t('cortex.serviceStatus')}}
- - - - - - - - - - - - +
+ + + + + + +
{{$t('cortex.ringStatus')}}
@@ -171,70 +149,104 @@ export default { prop: 'ownership', minWidth: 180 }], - serviceTitle: [ - { - label: 'Ready', - prop: 'ready', - minWidth: 180 - }, - { - label: 'Querier', - prop: 'querier', - minWidth: 180 - }, - { - label: 'Member list KV', - prop: 'memberlist-kv', - minWidth: 180 - }, - { - label: 'Store', - prop: 'store', - minWidth: 180 - }, - { - label: 'Distributor', - prop: 'distributor', - minWidth: 180 - }, - { - label: 'Ingester', - prop: 'ingester', - minWidth: 180 - } + serviceTitleAll:[ + [ + { + label: 'Ready', + prop: 'ready', + minWidth: 180 + }, + { + label: 'Querier', + prop: 'querier', + minWidth: 180 + }, + { + label: 'Member list KV', + prop: 'memberlist-kv', + minWidth: 180 + }, + { + label: 'Store', + prop: 'store', + minWidth: 180 + }, + { + label: 'Distributor', + prop: 'distributor', + minWidth: 180 + }, + { + label: 'Ingester', + prop: 'ingester', + minWidth: 180 + } + ], + [ + { + label: 'Query frontend tripperware', + prop: 'query-frontend-tripperware', + minWidth: 180 + }, + { + label: 'Query frontend', + prop: 'query-frontend', + minWidth: 180 + }, + { + label: 'Ingester querier', + prop: 'ingester-querier', + minWidth: 180 + }, + { + label: 'Server', + prop: 'server', + minWidth: 180 + }, + { + label: 'Ring', + prop: 'ring', + minWidth: 180 + }, + { + label: 'Query scheduler', + prop: 'query-scheduler', + minWidth: 180 + } + ], + [ + { + label: 'Cache generation loader', + prop: 'cache-generation-loader', + minWidth: 180 + }, + { + label: 'Compactor', + prop: 'compactor', + minWidth: 180 + }, + { + label: 'Usage report', + prop: 'usage-report', + minWidth: 180 + }, + { + label: '', + prop: '', + minWidth: 180 + }, + { + label: '', + prop: '', + minWidth: 180 + }, + { + label: '', + prop: '', + minWidth: 180 + } + ], ], - serviceTitleSub: [ - { - label: 'Query frontend tripperware', - prop: 'query-frontend-tripperware', - minWidth: 180 - }, - { - label: 'Query frontend', - prop: 'query-frontend', - minWidth: 180 - }, - { - label: 'Ingester querier', - prop: 'ingester-querier', - minWidth: 180 - }, - { - label: 'Server', - prop: 'server', - minWidth: 180 - }, - { - label: 'Ring', - prop: 'ring', - minWidth: 180 - }, - { - label: 'Query scheduler', - prop: 'query-scheduler', - minWidth: 180 - } - ] } }, mounted () {