From 67515502c07cd699d5863abf817722da2a88786e Mon Sep 17 00:00:00 2001 From: jianyi-gronk Date: Sun, 14 Jan 2024 12:38:45 +0800 Subject: [PATCH 1/8] feat: add service page --- ui-vue3/src/base/i18n/en.ts | 9 +- ui-vue3/src/base/i18n/zh.ts | 9 +- ui-vue3/src/router/defaultRoutes.ts | 48 +++++- ui-vue3/src/views/service/event.vue | 28 ++++ ui-vue3/src/views/service/index.vue | 8 +- ui-vue3/src/views/service/monitor.vue | 0 ui-vue3/src/views/service/serviceDebug.vue | 28 ++++ ui-vue3/src/views/service/serviceDetail.vue | 28 ++++ .../src/views/service/serviceDistribution.vue | 28 ++++ ui-vue3/src/views/service/serviceSearch.vue | 142 ++++++++++++++++++ ui-vue3/src/views/service/serviceTab.vue | 56 +++++++ ui-vue3/src/views/service/tracing.vue | 0 12 files changed, 376 insertions(+), 8 deletions(-) create mode 100644 ui-vue3/src/views/service/event.vue create mode 100644 ui-vue3/src/views/service/monitor.vue create mode 100644 ui-vue3/src/views/service/serviceDebug.vue create mode 100644 ui-vue3/src/views/service/serviceDetail.vue create mode 100644 ui-vue3/src/views/service/serviceDistribution.vue create mode 100644 ui-vue3/src/views/service/serviceSearch.vue create mode 100644 ui-vue3/src/views/service/serviceTab.vue create mode 100644 ui-vue3/src/views/service/tracing.vue diff --git a/ui-vue3/src/base/i18n/en.ts b/ui-vue3/src/base/i18n/en.ts index db547cb54..961603ff2 100644 --- a/ui-vue3/src/base/i18n/en.ts +++ b/ui-vue3/src/base/i18n/en.ts @@ -255,5 +255,12 @@ export default { trafficAccesslog: 'Accesslog', trafficHost: 'Host', homePage: 'Cluster Overview', - serviceManagement: 'Dev & Test' + serviceManagement: 'Dev & Test', + + serviceDetails: 'Service Details', + serviceDebug: 'Service Debug', + serviceDistribution: 'Service Distribution', + monitor: 'Monitor', + tracing: 'Tracing', + event: 'Event' } diff --git a/ui-vue3/src/base/i18n/zh.ts b/ui-vue3/src/base/i18n/zh.ts index aaea77290..0ff8ea0e4 100644 --- a/ui-vue3/src/base/i18n/zh.ts +++ b/ui-vue3/src/base/i18n/zh.ts @@ -253,5 +253,12 @@ export default { serviceManagement: '开发测试', groupInputPrompt: '请输入服务group(可选)', - versionInputPrompt: '请输入服务version(可选)' + versionInputPrompt: '请输入服务version(可选)', + + serviceDetails: '服务详情', + serviceDebug: '服务调试', + serviceDistribution: '服务分布', + monitor: '监控', + tracing: '链路追踪', + event: '事件' } diff --git a/ui-vue3/src/router/defaultRoutes.ts b/ui-vue3/src/router/defaultRoutes.ts index b827e6726..406c33eb4 100644 --- a/ui-vue3/src/router/defaultRoutes.ts +++ b/ui-vue3/src/router/defaultRoutes.ts @@ -45,11 +45,55 @@ export const routes: Readonly = [ }, { path: '/service', - name: 'serviceSearch', + name: 'service', component: () => import('../views/service/index.vue'), meta: { icon: 'material-symbols-light:screen-search-desktop-outline-rounded' - } + }, + children: [ + { + path: '/service', + name: 'serviceSearch', + component: () => import('../views/service/serviceSearch.vue') + }, + { + path: '/serviceTab', + name: 'serviceTab', + component: () => import('../views/service/serviceTab.vue'), + children: [ + { + path: '/serviceDetail', + name: 'serviceDetail', + component: () => import('../views/service/serviceDetail.vue') + }, + { + path: '/serviceDebug', + name: 'serviceDebug', + component: () => import('../views/service/serviceDebug.vue') + }, + { + path: '/serviceDistribution', + name: 'serviceDistribution', + component: () => import('../views/service/serviceDistribution.vue') + }, + { + path: '/monitor', + name: 'monitor', + component: () => import('../views/service/monitor.vue') + }, + { + path: '/tracing', + name: 'tracing', + component: () => import('../views/service/tracing.vue') + }, + { + path: '/event', + name: 'event', + component: () => import('../views/service/event.vue') + } + ] + } + ] }, { path: '/traffic', diff --git a/ui-vue3/src/views/service/event.vue b/ui-vue3/src/views/service/event.vue new file mode 100644 index 000000000..512a182d1 --- /dev/null +++ b/ui-vue3/src/views/service/event.vue @@ -0,0 +1,28 @@ + + + + + diff --git a/ui-vue3/src/views/service/index.vue b/ui-vue3/src/views/service/index.vue index 72b402ab0..621b4eb7c 100644 --- a/ui-vue3/src/views/service/index.vue +++ b/ui-vue3/src/views/service/index.vue @@ -16,14 +16,14 @@ --> diff --git a/ui-vue3/src/views/service/monitor.vue b/ui-vue3/src/views/service/monitor.vue new file mode 100644 index 000000000..e69de29bb diff --git a/ui-vue3/src/views/service/serviceDebug.vue b/ui-vue3/src/views/service/serviceDebug.vue new file mode 100644 index 000000000..512a182d1 --- /dev/null +++ b/ui-vue3/src/views/service/serviceDebug.vue @@ -0,0 +1,28 @@ + + + + + diff --git a/ui-vue3/src/views/service/serviceDetail.vue b/ui-vue3/src/views/service/serviceDetail.vue new file mode 100644 index 000000000..512a182d1 --- /dev/null +++ b/ui-vue3/src/views/service/serviceDetail.vue @@ -0,0 +1,28 @@ + + + + + diff --git a/ui-vue3/src/views/service/serviceDistribution.vue b/ui-vue3/src/views/service/serviceDistribution.vue new file mode 100644 index 000000000..512a182d1 --- /dev/null +++ b/ui-vue3/src/views/service/serviceDistribution.vue @@ -0,0 +1,28 @@ + + + + + diff --git a/ui-vue3/src/views/service/serviceSearch.vue b/ui-vue3/src/views/service/serviceSearch.vue new file mode 100644 index 000000000..6c05f21e1 --- /dev/null +++ b/ui-vue3/src/views/service/serviceSearch.vue @@ -0,0 +1,142 @@ + + + + + diff --git a/ui-vue3/src/views/service/serviceTab.vue b/ui-vue3/src/views/service/serviceTab.vue new file mode 100644 index 000000000..97e43bcfb --- /dev/null +++ b/ui-vue3/src/views/service/serviceTab.vue @@ -0,0 +1,56 @@ + + + + + diff --git a/ui-vue3/src/views/service/tracing.vue b/ui-vue3/src/views/service/tracing.vue new file mode 100644 index 000000000..e69de29bb From 4707ff6d7a4addcfd3ccd20ee8e5cd4c4f012a33 Mon Sep 17 00:00:00 2001 From: jianyi-gronk Date: Tue, 16 Jan 2024 01:09:01 +0800 Subject: [PATCH 2/8] Implement service related UI --- ui-vue3/src/base/i18n/en.ts | 11 +- ui-vue3/src/base/i18n/zh.ts | 11 +- ui-vue3/src/router/defaultRoutes.ts | 63 ++++++- .../src/views/resources/services/index.vue | 26 ++- .../src/views/resources/services/search.vue | 166 ++++++++++++++++++ .../views/resources/services/tabs/debug.vue | 108 ++++++++++++ .../views/resources/services/tabs/detail.vue | 59 +++++++ .../resources/services/tabs/distribution.vue | 98 +++++++++++ .../services/tabs}/event.vue | 10 +- .../services/tabs/monitor.vue} | 9 +- .../services/tabs/tracing.vue} | 10 +- ui-vue3/src/views/service/monitor.vue | 0 ui-vue3/src/views/service/serviceDebug.vue | 28 --- ui-vue3/src/views/service/serviceDetail.vue | 28 --- ui-vue3/src/views/service/serviceSearch.vue | 142 --------------- ui-vue3/src/views/service/serviceTab.vue | 56 ------ ui-vue3/src/views/service/tracing.vue | 0 17 files changed, 536 insertions(+), 289 deletions(-) create mode 100644 ui-vue3/src/views/resources/services/search.vue create mode 100644 ui-vue3/src/views/resources/services/tabs/debug.vue create mode 100644 ui-vue3/src/views/resources/services/tabs/detail.vue create mode 100644 ui-vue3/src/views/resources/services/tabs/distribution.vue rename ui-vue3/src/views/{service => resources/services/tabs}/event.vue (81%) rename ui-vue3/src/views/{service/index.vue => resources/services/tabs/monitor.vue} (85%) rename ui-vue3/src/views/{service/serviceDistribution.vue => resources/services/tabs/tracing.vue} (81%) delete mode 100644 ui-vue3/src/views/service/monitor.vue delete mode 100644 ui-vue3/src/views/service/serviceDebug.vue delete mode 100644 ui-vue3/src/views/service/serviceDetail.vue delete mode 100644 ui-vue3/src/views/service/serviceSearch.vue delete mode 100644 ui-vue3/src/views/service/serviceTab.vue delete mode 100644 ui-vue3/src/views/service/tracing.vue diff --git a/ui-vue3/src/base/i18n/en.ts b/ui-vue3/src/base/i18n/en.ts index dd9406a45..2e73699d3 100644 --- a/ui-vue3/src/base/i18n/en.ts +++ b/ui-vue3/src/base/i18n/en.ts @@ -264,12 +264,15 @@ const words: I18nType = { applications: 'Applications', instances: 'Instances', - serviceDetails: 'Service Details', - serviceDebug: 'Service Debug', - serviceDistribution: 'Service Distribution', + details: 'Details', + debug: 'Debug', + distribution: 'Distribution', monitor: 'Monitor', tracing: 'Tracing', - event: 'Event' + event: 'Event', + + provideService: 'Provide Service', + dependentService: 'Dependent Service' } export default words diff --git a/ui-vue3/src/base/i18n/zh.ts b/ui-vue3/src/base/i18n/zh.ts index fa66cb69b..c2ffffe5c 100644 --- a/ui-vue3/src/base/i18n/zh.ts +++ b/ui-vue3/src/base/i18n/zh.ts @@ -262,12 +262,15 @@ const words: I18nType = { applications: '应用', instances: '实例', - serviceDetails: '服务详情', - serviceDebug: '服务调试', - serviceDistribution: '服务分布', + details: '详情', + debug: '调试', + distribution: '分布', monitor: '监控', tracing: '链路追踪', - event: '事件' + event: '事件', + + provideService: '提供服务', + dependentService: '依赖服务' } export default words diff --git a/ui-vue3/src/router/defaultRoutes.ts b/ui-vue3/src/router/defaultRoutes.ts index a36f9e526..1b08a4a7a 100644 --- a/ui-vue3/src/router/defaultRoutes.ts +++ b/ui-vue3/src/router/defaultRoutes.ts @@ -96,8 +96,69 @@ export const routes: Readonly = [ { path: '/services', name: 'services', + redirect: 'search', component: () => import('../views/resources/services/index.vue'), - meta: {} + meta: { + tab_parent: true + }, + children: [ + { + path: '/search', + name: 'search', + component: () => import('../views/resources/services/search.vue'), + meta: { + hidden: true + } + }, + { + path: '/detail/:serviceName', + name: 'detail', + component: () => import('../views/resources/services/tabs/detail.vue'), + meta: { + tab: true + } + }, + { + path: '/debug/:serviceName', + name: 'debug', + component: () => import('../views/resources/services/tabs/debug.vue'), + meta: { + tab: true + } + }, + { + path: '/distribution/:serviceName', + name: 'distribution', + component: () => import('../views/resources/services/tabs/distribution.vue'), + meta: { + tab: true + } + }, + { + path: '/monitor/:serviceName', + name: 'monitor', + component: () => import('../views/resources/services/tabs/monitor.vue'), + meta: { + tab: true + } + }, + { + path: '/tracing/:serviceName', + name: 'tracing', + component: () => import('../views/resources/services/tabs/tracing.vue'), + meta: { + tab: true + } + }, + { + path: '/event/:serviceName', + name: 'event', + component: () => import('../views/resources/services/tabs/event.vue'), + meta: { + tab: true + } + } + ] } ] }, diff --git a/ui-vue3/src/views/resources/services/index.vue b/ui-vue3/src/views/resources/services/index.vue index d7a299942..ddab54a61 100644 --- a/ui-vue3/src/views/resources/services/index.vue +++ b/ui-vue3/src/views/resources/services/index.vue @@ -15,8 +15,28 @@ ~ limitations under the License. --> - - + + diff --git a/ui-vue3/src/views/resources/services/search.vue b/ui-vue3/src/views/resources/services/search.vue new file mode 100644 index 000000000..ddffcc549 --- /dev/null +++ b/ui-vue3/src/views/resources/services/search.vue @@ -0,0 +1,166 @@ + + + + + diff --git a/ui-vue3/src/views/resources/services/tabs/debug.vue b/ui-vue3/src/views/resources/services/tabs/debug.vue new file mode 100644 index 000000000..d4f45dd85 --- /dev/null +++ b/ui-vue3/src/views/resources/services/tabs/debug.vue @@ -0,0 +1,108 @@ + + + + + diff --git a/ui-vue3/src/views/resources/services/tabs/detail.vue b/ui-vue3/src/views/resources/services/tabs/detail.vue new file mode 100644 index 000000000..757070588 --- /dev/null +++ b/ui-vue3/src/views/resources/services/tabs/detail.vue @@ -0,0 +1,59 @@ + + + + + diff --git a/ui-vue3/src/views/resources/services/tabs/distribution.vue b/ui-vue3/src/views/resources/services/tabs/distribution.vue new file mode 100644 index 000000000..58fe634cb --- /dev/null +++ b/ui-vue3/src/views/resources/services/tabs/distribution.vue @@ -0,0 +1,98 @@ + + + + + diff --git a/ui-vue3/src/views/service/event.vue b/ui-vue3/src/views/resources/services/tabs/event.vue similarity index 81% rename from ui-vue3/src/views/service/event.vue rename to ui-vue3/src/views/resources/services/tabs/event.vue index 512a182d1..d9a86c051 100644 --- a/ui-vue3/src/views/service/event.vue +++ b/ui-vue3/src/views/resources/services/tabs/event.vue @@ -15,14 +15,8 @@ ~ limitations under the License. --> - + diff --git a/ui-vue3/src/views/service/index.vue b/ui-vue3/src/views/resources/services/tabs/monitor.vue similarity index 85% rename from ui-vue3/src/views/service/index.vue rename to ui-vue3/src/views/resources/services/tabs/monitor.vue index abdbfc115..baa40c4ab 100644 --- a/ui-vue3/src/views/service/index.vue +++ b/ui-vue3/src/views/resources/services/tabs/monitor.vue @@ -15,13 +15,8 @@ ~ limitations under the License. --> - + diff --git a/ui-vue3/src/views/service/serviceDistribution.vue b/ui-vue3/src/views/resources/services/tabs/tracing.vue similarity index 81% rename from ui-vue3/src/views/service/serviceDistribution.vue rename to ui-vue3/src/views/resources/services/tabs/tracing.vue index 512a182d1..ca3bc5119 100644 --- a/ui-vue3/src/views/service/serviceDistribution.vue +++ b/ui-vue3/src/views/resources/services/tabs/tracing.vue @@ -15,14 +15,8 @@ ~ limitations under the License. --> - + diff --git a/ui-vue3/src/views/service/monitor.vue b/ui-vue3/src/views/service/monitor.vue deleted file mode 100644 index e69de29bb..000000000 diff --git a/ui-vue3/src/views/service/serviceDebug.vue b/ui-vue3/src/views/service/serviceDebug.vue deleted file mode 100644 index 512a182d1..000000000 --- a/ui-vue3/src/views/service/serviceDebug.vue +++ /dev/null @@ -1,28 +0,0 @@ - - - - - diff --git a/ui-vue3/src/views/service/serviceDetail.vue b/ui-vue3/src/views/service/serviceDetail.vue deleted file mode 100644 index 512a182d1..000000000 --- a/ui-vue3/src/views/service/serviceDetail.vue +++ /dev/null @@ -1,28 +0,0 @@ - - - - - diff --git a/ui-vue3/src/views/service/serviceSearch.vue b/ui-vue3/src/views/service/serviceSearch.vue deleted file mode 100644 index 6c05f21e1..000000000 --- a/ui-vue3/src/views/service/serviceSearch.vue +++ /dev/null @@ -1,142 +0,0 @@ - - - - - diff --git a/ui-vue3/src/views/service/serviceTab.vue b/ui-vue3/src/views/service/serviceTab.vue deleted file mode 100644 index 97e43bcfb..000000000 --- a/ui-vue3/src/views/service/serviceTab.vue +++ /dev/null @@ -1,56 +0,0 @@ - - - - - diff --git a/ui-vue3/src/views/service/tracing.vue b/ui-vue3/src/views/service/tracing.vue deleted file mode 100644 index e69de29bb..000000000 From 5190f94cd5f8abff176f0e2bbb71d4cc37b41836 Mon Sep 17 00:00:00 2001 From: jianyi-gronk Date: Fri, 19 Jan 2024 23:35:54 +0800 Subject: [PATCH 3/8] update style version from 0.0.7 to 0.0.8 --- .../src/views/resources/services/index.vue | 13 +- .../src/views/resources/services/search.vue | 16 +- .../views/resources/services/tabs/debug.vue | 149 ++++++++++++++---- .../views/resources/services/tabs/detail.vue | 41 +++-- .../resources/services/tabs/distribution.vue | 101 ++++++++---- 5 files changed, 225 insertions(+), 95 deletions(-) diff --git a/ui-vue3/src/views/resources/services/index.vue b/ui-vue3/src/views/resources/services/index.vue index ddab54a61..2764e2a15 100644 --- a/ui-vue3/src/views/resources/services/index.vue +++ b/ui-vue3/src/views/resources/services/index.vue @@ -16,7 +16,12 @@ --> @@ -26,11 +31,11 @@ import LayoutTab from '@/layout/tab/layout_tab.vue' import { Icon } from '@iconify/vue' import { useRoute, useRouter } from 'vue-router' -const route = useRoute(); -const router = useRouter(); +const route = useRoute() +const router = useRouter() const backSearch = () => { - router.push({ name: 'search' }); + router.push({ name: 'search' }) } diff --git a/ui-vue3/src/views/resources/services/tabs/debug.vue b/ui-vue3/src/views/resources/services/tabs/debug.vue index d4f45dd85..d2f557622 100644 --- a/ui-vue3/src/views/resources/services/tabs/debug.vue +++ b/ui-vue3/src/views/resources/services/tabs/debug.vue @@ -16,52 +16,70 @@ --> - @@ -42,7 +39,6 @@