From 98e9d60fe00f8f6f8ffb62385f3ca36946b980f9 Mon Sep 17 00:00:00 2001 From: chenjinsong <523037378@qq.com> Date: Mon, 2 Aug 2021 19:51:53 +0800 Subject: [PATCH 1/2] =?UTF-8?q?NEZ-858=20feat:=20=E6=96=B0=E7=89=88explore?= =?UTF-8?q?-log?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nezha-fronted/package.json | 2 +- .../src/assets/css/common/tableCommon.scss | 100 +- .../src/components/charts/chart.scss | 1 - .../src/components/common/chartUnit.vue | 1 - .../src/components/common/language/cn.js | 7 + .../src/components/common/language/en.js | 8 + .../src/components/common/pickTime.vue | 6 +- .../page/dashboard/explore/explore.vue | 931 +---------- .../page/dashboard/explore/exploreItem.vue | 1400 +++++++++++++++++ .../page/dashboard/explore/logTab.vue | 377 +++++ .../page/dashboard/explore/promqlInput.vue | 70 +- .../page/dashboard/overview/chart.vue | 1 + .../page/dashboard/overview/chartConfig.vue | 78 +- .../src/components/page/dashboard/panel.vue | 2 +- nezha-fronted/src/router/index.js | 2 +- 15 files changed, 2010 insertions(+), 976 deletions(-) create mode 100644 nezha-fronted/src/components/page/dashboard/explore/exploreItem.vue create mode 100644 nezha-fronted/src/components/page/dashboard/explore/logTab.vue diff --git a/nezha-fronted/package.json b/nezha-fronted/package.json index 81214c7c9..9e32ff771 100644 --- a/nezha-fronted/package.json +++ b/nezha-fronted/package.json @@ -24,7 +24,7 @@ "@topology/sequence-diagram": "^0.3.0", "axios": "^0.19.0", "cytoscape": "^3.15.2", - "echarts": "^5.0.1", + "echarts": "^5.1.2", "element-ui": "^2.15.3", "file-saver": "^2.0.2", "leaflet": "^1.7.1", diff --git a/nezha-fronted/src/assets/css/common/tableCommon.scss b/nezha-fronted/src/assets/css/common/tableCommon.scss index 30a9333fd..041859def 100644 --- a/nezha-fronted/src/assets/css/common/tableCommon.scss +++ b/nezha-fronted/src/assets/css/common/tableCommon.scss @@ -54,63 +54,63 @@ .top-tool-left { display: flex; } - .top-tool-btn-group { - display: flex; - .top-tool-btn:not(:last-of-type):not(:first-of-type) { - border-left: none; - border-radius: 0; - } - .top-tool-btn:first-of-type:not(:last-of-type) { - border-radius: $--button-border-radius 0 0 $--button-border-radius; - } - .top-tool-btn:last-of-type:not(:first-of-type) { - border-radius: 0 $--button-border-radius $--button-border-radius 0; - border-left: none; - } + } + .top-tool-btn-group { + display: flex; + .top-tool-btn:not(:last-of-type):not(:first-of-type) { + border-left: none; + border-radius: 0; } - .top-tool-btn { - height: 32px; - width: 36px; - border: 1px solid $--primary-border-color; - outline: none; - border-radius: $--button-border-radius; - background-color: $--button-gray-background-color; - transition: background-color linear .1s; + .top-tool-btn:first-of-type:not(:last-of-type) { + border-radius: $--button-border-radius 0 0 $--button-border-radius; + } + .top-tool-btn:last-of-type:not(:first-of-type) { + border-radius: 0 $--button-border-radius $--button-border-radius 0; + border-left: none; + } + } + .top-tool-btn { + height: 32px; + width: 36px; + border: 1px solid $--primary-border-color; + outline: none; + border-radius: $--button-border-radius; + background-color: $--button-gray-background-color; + transition: background-color linear .1s; - i { - font-size: 14px; - color: $--button-gray-color; - } + i { + font-size: 14px; + color: $--button-gray-color; } - .top-tool-btn.top-tool-btn--text { - padding: 0 8px; - width: unset; - color: #666; + } + .top-tool-btn.top-tool-btn--text { + padding: 0 8px; + width: unset; + color: #666; + } + .top-tool-btn:hover:not(.nz-btn-disabled) { + background-color: $--button-gray-hover-background-color; + } + .top-tool-btn:focus:not(.nz-btn-disabled), .top-tool-btn.is-focus { + background-color: $--button-gray-hover-background-color; + border: 1px solid #FBCEA4 !important; + i { + color: $--button-gray-active-color; } - .top-tool-btn:hover:not(.nz-btn-disabled) { - background-color: $--button-gray-hover-background-color; - } - .top-tool-btn:focus:not(.nz-btn-disabled), .top-tool-btn.is-focus { - background-color: $--button-gray-hover-background-color; - border: 1px solid #FBCEA4 !important; - i { - color: $--button-gray-active-color; - } - } - .top-tool-btn--delete.top-tool-btn:focus:not(.nz-btn-disabled) { - background-color: $--button-gray-hover-background-color; - border-color: #FFC4B9; + } + .top-tool-btn--delete.top-tool-btn:focus:not(.nz-btn-disabled) { + background-color: $--button-gray-hover-background-color; + border-color: #FFC4B9; - i { - color: #F0745A; - } - } - .top-tool-btn--dropdown { - position: relative; - width: auto; - min-width: 36px; + i { + color: #F0745A; } } + .top-tool-btn--dropdown { + position: relative; + width: auto; + min-width: 36px; + } .top-tools--sub { .top-tool-left { height: 100%; diff --git a/nezha-fronted/src/components/charts/chart.scss b/nezha-fronted/src/components/charts/chart.scss index 25b5da6a8..c297e1979 100644 --- a/nezha-fronted/src/components/charts/chart.scss +++ b/nezha-fronted/src/components/charts/chart.scss @@ -706,7 +706,6 @@ } } .top-tool-btn-group { - margin-left: 10px; display: flex; .top-tool-btn:not(:last-of-type):not(:first-of-type) { border-left: none; diff --git a/nezha-fronted/src/components/common/chartUnit.vue b/nezha-fronted/src/components/common/chartUnit.vue index 5956aefaa..c93e53910 100644 --- a/nezha-fronted/src/components/common/chartUnit.vue +++ b/nezha-fronted/src/components/common/chartUnit.vue @@ -59,7 +59,6 @@ export default { .chart-unit{ width: 100px; - margin: 0 20px 0 0; } .chart-unit.el-cascader .el-input.is-focus .el-input__inner { border-color: #FBCEA4; diff --git a/nezha-fronted/src/components/common/language/cn.js b/nezha-fronted/src/components/common/language/cn.js index 2d5ab4e0f..7c96e3d5a 100644 --- a/nezha-fronted/src/components/common/language/cn.js +++ b/nezha-fronted/src/components/common/language/cn.js @@ -13,6 +13,7 @@ const cn = { oneDay: '1 天', twoDay: '2 天', week: '1 周', + time: '时间', folder: '文件夹', key: '键名', state: '状态', @@ -64,6 +65,7 @@ const cn = { other: '其他', about: '关于', query: '查询', + logLabels: '日志标签', account: '账号', back: '返回', unavailable: '不可用', @@ -114,6 +116,7 @@ const cn = { }, reset: '重置', submit: '保存', + limit: '限制', noData: '没有数据', tag: '标签', syncChart: '同步图表', @@ -519,6 +522,10 @@ const cn = { down: 'down', prometheus: 'prometheus' } + }, + explore: { + descending: '降序', + wrapLines: '换行' } }, validate: { diff --git a/nezha-fronted/src/components/common/language/en.js b/nezha-fronted/src/components/common/language/en.js index aedf07023..84b496b86 100644 --- a/nezha-fronted/src/components/common/language/en.js +++ b/nezha-fronted/src/components/common/language/en.js @@ -19,8 +19,10 @@ const en = { oneDay: '1 day', twoDay: '2 days', week: '1 week', + time: 'Time', folder: 'Folder', key: 'Key', + logs: 'Logs', state: 'State', projectName: 'Project name', startTime: 'Start time', @@ -69,6 +71,7 @@ const en = { about: 'About', // 关于 detail: 'Detail', // 详情 query: 'Query', // 查询 + logLabels: 'Log labels', account: 'Account', back: 'Back', // 返回 unavailable: 'Unavailable', @@ -118,6 +121,7 @@ const en = { }, reset: 'Reset', submit: 'Save', + limit: 'Limit', noData: 'No data', tag: 'Tag', placeHolder: 'Please enter', @@ -528,6 +532,10 @@ const en = { down: 'down', prometheus: 'prometheus' } + }, + explore: { + descending: 'Descending', + wrapLines: 'Wrap lines' } }, validate: { // 校验规则 diff --git a/nezha-fronted/src/components/common/pickTime.vue b/nezha-fronted/src/components/common/pickTime.vue index 7c39fdaec..7d113738e 100644 --- a/nezha-fronted/src/components/common/pickTime.vue +++ b/nezha-fronted/src/components/common/pickTime.vue @@ -1,9 +1,9 @@