Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
pentaLiker
DolphinScheduler
提交
a4730342
DolphinScheduler
项目概览
pentaLiker
/
DolphinScheduler
与 Fork 源项目一致
Fork自
apache / DolphinScheduler
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
DolphinScheduler
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a4730342
编写于
4月 23, 2019
作者:
G
gongzijian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
监控中心
上级
ddea262a
变更
26
隐藏空白更改
内联
并排
Showing
26 changed file
with
669 addition
and
106 deletion
+669
-106
escheduler-ui/.env
escheduler-ui/.env
+1
-1
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/_source/gaugeOption.js
...f/home/pages/monitor/pages/servers/_source/gaugeOption.js
+121
-0
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/_source/list.vue
...js/conf/home/pages/monitor/pages/servers/_source/list.vue
+20
-17
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
...i/src/js/conf/home/pages/monitor/pages/servers/master.vue
+134
-9
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/mysql.vue
...ui/src/js/conf/home/pages/monitor/pages/servers/mysql.vue
+68
-25
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/servers.scss
...src/js/conf/home/pages/monitor/pages/servers/servers.scss
+44
-0
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
...i/src/js/conf/home/pages/monitor/pages/servers/worker.vue
+140
-16
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/zookeeper.vue
...rc/js/conf/home/pages/monitor/pages/servers/zookeeper.vue
+6
-10
escheduler-ui/src/js/conf/home/pages/projects/pages/index/_source/projectChart.vue
.../home/pages/projects/pages/index/_source/projectChart.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/security/pages/queue/_source/list.vue
.../js/conf/home/pages/security/pages/queue/_source/list.vue
+1
-2
escheduler-ui/src/js/conf/home/pages/security/pages/queue/index.vue
...-ui/src/js/conf/home/pages/security/pages/queue/index.vue
+9
-1
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/_source/list.vue
.../conf/home/pages/security/pages/tenement/_source/list.vue
+1
-2
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/index.vue
.../src/js/conf/home/pages/security/pages/tenement/index.vue
+9
-1
escheduler-ui/src/js/conf/home/pages/security/pages/token/index.vue
...-ui/src/js/conf/home/pages/security/pages/token/index.vue
+39
-0
escheduler-ui/src/js/conf/home/pages/security/pages/users/_source/list.vue
.../js/conf/home/pages/security/pages/users/_source/list.vue
+1
-2
escheduler-ui/src/js/conf/home/pages/security/pages/users/index.vue
...-ui/src/js/conf/home/pages/security/pages/users/index.vue
+9
-1
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue
.../home/pages/security/pages/warningGroups/_source/list.vue
+1
-2
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/index.vue
...js/conf/home/pages/security/pages/warningGroups/index.vue
+9
-1
escheduler-ui/src/js/conf/home/pages/security/pages/workerGroups/_source/list.vue
...f/home/pages/security/pages/workerGroups/_source/list.vue
+1
-2
escheduler-ui/src/js/conf/home/pages/security/pages/workerGroups/index.vue
.../js/conf/home/pages/security/pages/workerGroups/index.vue
+8
-1
escheduler-ui/src/js/conf/home/pages/user/pages/token/_source/createToken.vue
.../conf/home/pages/user/pages/token/_source/createToken.vue
+15
-6
escheduler-ui/src/js/conf/home/pages/user/pages/token/_source/list.vue
.../src/js/conf/home/pages/user/pages/token/_source/list.vue
+1
-2
escheduler-ui/src/js/conf/home/pages/user/pages/token/index.vue
...uler-ui/src/js/conf/home/pages/user/pages/token/index.vue
+9
-1
escheduler-ui/src/js/conf/home/router/index.js
escheduler-ui/src/js/conf/home/router/index.js
+8
-0
escheduler-ui/src/js/conf/home/store/security/actions.js
escheduler-ui/src/js/conf/home/store/security/actions.js
+1
-1
escheduler-ui/src/js/module/components/secondaryMenu/_source/menu.js
...ui/src/js/module/components/secondaryMenu/_source/menu.js
+11
-1
未找到文件。
escheduler-ui/.env
浏览文件 @
a4730342
# 后端接口地址
API_BASE = http://192.168.220.
154
:12345
API_BASE = http://192.168.220.
247
:12345
# 本地开发如需ip访问项目把"#"号去掉
#DEV_HOST = 192.168.xx.xx
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/_source/gaugeOption.js
0 → 100644
浏览文件 @
a4730342
export
default
{
series
:
[
{
type
:
'
gauge
'
,
center
:
[
'
50%
'
,
'
45%
'
],
// 仪表位置
radius
:
'
80%
'
,
// 仪表大小
startAngle
:
200
,
// 开始角度
endAngle
:
-
20
,
// 结束角度
axisLine
:
{
show
:
false
,
lineStyle
:
{
// 属性lineStyle控制线条样式
color
:
[
[
0.5
,
new
echarts
.
graphic
.
LinearGradient
(
0
,
0
,
1
,
0
,
[{
// eslint-disable-line
offset
:
1
,
color
:
'
#E75F25
'
// 50% 处的颜色
},
{
offset
:
0.8
,
color
:
'
#D9452C
'
// 40% 处的颜色
}],
false
)
],
// 100% 处的颜色
[
0.7
,
new
echarts
.
graphic
.
LinearGradient
(
0
,
0
,
1
,
0
,
[{
// eslint-disable-line
offset
:
1
,
color
:
'
#FFC539
'
// 70% 处的颜色
},
{
offset
:
0.8
,
color
:
'
#FE951E
'
// 66% 处的颜色
},
{
offset
:
0
,
color
:
'
#E75F25
'
// 50% 处的颜色
}],
false
)
],
[
0.9
,
new
echarts
.
graphic
.
LinearGradient
(
0
,
0
,
0
,
1
,
[{
// eslint-disable-line
offset
:
1
,
color
:
'
#C7DD6B
'
// 90% 处的颜色
},
{
offset
:
0.8
,
color
:
'
#FEEC49
'
// 86% 处的颜色
},
{
offset
:
0
,
color
:
'
#FFC539
'
// 70% 处的颜色
}],
false
)
],
[
1
,
new
echarts
.
graphic
.
LinearGradient
(
0
,
0
,
0
,
1
,
[
{
// eslint-disable-line
offset
:
0.2
,
color
:
'
#1CAD52
'
// 92% 处的颜色
},
{
offset
:
0
,
color
:
'
#C7DD6B
'
// 90% 处的颜色
}],
false
)
]
],
width
:
10
}
},
splitLine
:
{
show
:
false
},
axisTick
:
{
show
:
false
},
axisLabel
:
{
show
:
false
},
pointer
:
{
// 指针样式
length
:
'
45%
'
},
detail
:
{
show
:
false
}
},
{
type
:
'
gauge
'
,
center
:
[
'
50%
'
,
'
45%
'
],
// 默认全局居中
radius
:
'
70%
'
,
startAngle
:
200
,
endAngle
:
-
20
,
axisLine
:
{
show
:
true
,
lineStyle
:
{
// 属性lineStyle控制线条样式
color
:
[
// 表盘颜色
[
0.5
,
'
#DA462C
'
],
// 0-50%处的颜色
[
0.7
,
'
#FF9618
'
],
// 51%-70%处的颜色
[
0.9
,
'
#FFED44
'
],
// 70%-90%处的颜色
[
1
,
'
#20AE51
'
]
// 90%-100%处的颜色
],
width
:
30
// 表盘宽度
}
},
splitLine
:
{
// 分割线样式(及10、20等长线样式)
length
:
30
,
lineStyle
:
{
// 属性lineStyle控制线条样式
width
:
2
}
},
axisTick
:
{
// 刻度线样式(及短线样式)
length
:
20
},
axisLabel
:
{
// 文字样式(及“10”、“20”等文字样式)
color
:
'
black
'
,
distance
:
5
// 文字离表盘的距离
},
detail
:
{
formatter
:
'
{score|{value}%}
'
,
offsetCenter
:
[
0
,
'
50%
'
],
backgroundColor
:
'
#2D8BF0
'
,
height
:
30
,
rich
:
{
score
:
{
color
:
'
white
'
,
fontFamily
:
'
微软雅黑
'
,
fontSize
:
32
}
}
},
data
:
[{
value
:
70
,
label
:
{
textStyle
:
{
fontSize
:
12
}
}
}]
}
]
}
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/_source/list.vue
浏览文件 @
a4730342
...
...
@@ -7,25 +7,28 @@
<span>
{{
$t
(
'
#
'
)
}}
</span>
</th>
<th>
<span>
{{
$t
(
'
IP
'
)
}}
</span>
<span>
node
</span>
</th>
<th>
<span>
{{
$t
(
'
Process Pid
'
)
}}
</span>
<span>
ip
</span>
</th>
<th>
<span>
{{
$t
(
'
zk registration directory
'
)
}}
</span>
<span>
模式
</span>
</th>
<th>
<span>
{{
$t
(
'
cpuUsage
'
)
}}
</span>
<span>
连接数
</span>
</th>
<th>
<span>
{{
$t
(
'
memoryUsage
'
)
}}
</span>
<span>
watch数
</span>
</th>
<th>
<span>
{{
$t
(
'
Create Time
'
)
}}
</span>
<span>
数据量
</span>
</th>
<th>
<span>
{{
$t
(
'
Last heartbeat time
'
)
}}
</span>
<span>
Sent/Received
</span>
</th>
<th>
<span>
节点自检状态
</span>
</th>
</tr>
<tr
v-for=
"(item, $index) in list"
:key=
"$index"
>
...
...
@@ -34,22 +37,25 @@
</td>
<td>
<span>
<a
href=
"javascript:"
class=
"links"
>
{{
item
.
host
}}
</a>
<a
href=
"javascript:"
class=
"links"
>
task1
</a>
</span>
</td>
<td><span>
{{
item
.
port
}}
</span></td>
<td><span>
192.11.1.1
</span></td>
<td>
<span>
{{
item
.
zkDirectory
}}
</span>
<span>
2222
</span>
</td>
<td>
<span>
{{
_rtResInfo
(
JSON
.
parse
(
item
.
resInfo
)[
'
cpuUsage
'
])
}}
</span>
<span>
3333
</span>
</td>
<td>
<span>
{{
_rtResInfo
(
JSON
.
parse
(
item
.
resInfo
)[
'
memoryUsage
'
])
}}
</span>
<span>
4444
</span>
</td>
<td><span>
{{
item
.
createTime
|
formatDate
}}
</span></td>
<td><span>
5555
</span></td>
<td>
<span>
{{
item
.
lastHeartbeatTime
|
formatDate
}}
</span>
<span>
6666
</span>
</td>
<td>
<span>
7777
</span>
</td>
</tr>
</table>
...
...
@@ -70,9 +76,6 @@
list
:
Array
},
methods
:
{
_rtResInfo
(
val
)
{
return
(
val
*
100
).
toFixed
(
2
)
+
'
%
'
}
}
}
</
script
>
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
浏览文件 @
a4730342
<
template
>
<m-list-construction
:title=
"
$t('Service-Master')
"
>
<m-list-construction
:title=
"
'Master管理'
"
>
<template
slot=
"content"
>
<div
class=
"servers-wrapper"
>
<div
class=
"row"
>
<div
class=
"col-md-4"
>
.col-md-8
</div>
<div
class=
"col-md-4"
>
.col-md-4
</div>
<div
class=
"col-md-4"
>
.col-md-4
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
Cpu详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a1"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a2"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #0098e1;"
>
12
</b>
</div>
<div
class=
"text-1"
>
cpu
</div>
</div>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
Cpu详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a3"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a4"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #7a56b8;"
>
72
</b>
</div>
<div
class=
"text-1"
>
cpu
</div>
</div>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
Cpu详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a5"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a6"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #e84d80;"
>
44
</b>
</div>
<div
class=
"text-1"
>
cpu
</div>
</div>
</div>
</div>
</div>
</
template
>
...
...
@@ -16,6 +134,7 @@
import
mList
from
'
./_source/list
'
import
mSpin
from
'
@/module/components/spin/spin
'
import
mNoData
from
'
@/module/components/noData/noData
'
import
gaugeOption
from
'
./_source/gaugeOption
'
import
mListConstruction
from
'
@/module/components/listConstruction/listConstruction
'
export
default
{
...
...
@@ -36,14 +155,20 @@
},
watch
:
{},
created
()
{
this
.
isLoading
=
true
this
.
getProcessMasterList
().
then
(
res
=>
{
this
.
masterList
=
res
.
data
this
.
isLoading
=
false
})
},
mounted
()
{
let
b
=
{}
let
a
=
[
'
a1
'
,
'
a2
'
,
'
a3
'
,
'
a4
'
,
'
a5
'
,
'
a6
'
]
a
.
forEach
((
v
,
i
)
=>
{
b
[
v
]
=
echarts
.
init
(
document
.
getElementById
(
v
))
// eslint-disable-line
b
[
v
].
setOption
(
gaugeOption
,
true
)
})
},
components
:
{
mList
,
mListConstruction
,
mSpin
,
mNoData
}
}
</
script
>
<
style
lang=
"scss"
rel=
"stylesheet/scss"
>
@import
"./servers"
;
</
style
>
\ No newline at end of file
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/mysql.vue
浏览文件 @
a4730342
<
template
>
<div
class=
"mysql-model"
>
mysql
</div>
<m-list-construction
:title=
"'Mysql管理'"
>
<template
slot=
"content"
>
<div
class=
"servers-wrapper"
>
<div
class=
"row"
>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
正常与否
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #0098e1;"
>
78
</b>
</div>
<div
class=
"text-1"
>
正常与否
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
最大连接数
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #ffcf3d;"
>
55
</b>
</div>
<div
class=
"text-1"
>
最大连接数
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
当前活跃连接
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #f07d7d;"
>
32
</b>
</div>
<div
class=
"text-1"
>
当前活跃连接
</div>
</div>
</div>
</div>
</div>
</
template
>
</m-list-construction>
</template>
<
script
>
import
{
mapActions
}
from
'
vuex
'
import
mList
from
'
./_source/list
'
import
mSpin
from
'
@/module/components/spin/spin
'
import
mNoData
from
'
@/module/components/noData/noData
'
import
mListConstruction
from
'
@/module/components/listConstruction/listConstruction
'
export
default
{
name
:
'
mysql
'
,
name
:
'
servers-
mysql
'
,
data
()
{
return
{}
return
{
pageSize
:
10
,
pageNo
:
1
,
totalPage
:
null
,
searchVal
:
''
,
isLoading
:
false
,
masterList
:
[]
}
},
props
:
{},
methods
:
{},
watch
:
{},
beforeCreate
()
{
methods
:
{
...
mapActions
(
'
security
'
,
[
'
getProcessMasterList
'
])
},
watch
:
{},
created
()
{
},
beforeMount
()
{
},
mounted
()
{
},
beforeUpdate
()
{
},
updated
()
{
},
beforeDestroy
()
{
},
destroyed
()
{
},
computed
:
{},
components
:
{}
components
:
{
mList
,
mListConstruction
,
mSpin
,
mNoData
}
}
</
script
>
<
style
lang=
"scss"
rel=
"stylesheet/scss"
>
.mysql-model
{
}
</
style
>
@import
"./servers"
;
</
style
>
\ No newline at end of file
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/servers.scss
0 → 100644
浏览文件 @
a4730342
.servers-wrapper
{
padding
:
16px
;
>
.row
{
margin-bottom
:
20px
;
}
.gridb-model
{
width
:
100%
;
height
:
360px
;
overflow
:
hidden
;
border
:
1px
solid
#E8E8E8
;
margin
:
0
auto
;
>
.title
{
height
:
36px
;
line-height
:
36px
;
background
:
#F9F9F9
;
border-bottom
:
1px
solid
#E8E8E8
;
span
{
padding-left
:
8px
;
}
}
.gauge-echart
{
width
:
350px
;
margin
:
auto
;
margin-bottom
:
-80px
;
}
.text-1
{
width
:
100%
;
margin
:
0
auto
;
font-size
:
32px
;
text-align
:
center
;
}
.value-p
{
height
:
254px
;
line-height
:
254px
;
text-align
:
center
;
>
b
{
font-size
:
140px
;
color
:
#333
;
}
}
}
}
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
浏览文件 @
a4730342
<
template
>
<m-list-construction
:title=
"
$t('Service-Worker')
"
>
<m-list-construction
:title=
"
'Worker管理'
"
>
<template
slot=
"content"
>
<template
v-if=
"workerList.length"
>
<m-list
:list=
"workerList"
></m-list>
</
template
>
<
template
v-if=
"!workerList.length"
>
<m-no-data></m-no-data>
</
template
>
<m-spin
:is-spin=
"isLoading"
></m-spin>
<div
class=
"servers-wrapper"
>
<div
class=
"row"
>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
Cpu详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a1"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a2"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #0098e1;"
>
83
</b>
</div>
<div
class=
"text-1"
>
cpu
</div>
</div>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
Cpu详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a3"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a4"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #7281c2;"
>
18
</b>
</div>
<div
class=
"text-1"
>
cpu
</div>
</div>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
Cpu详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a5"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"gauge-echart"
>
<div
id=
"a6"
style=
"height: 380px;"
></div>
</div>
<div
class=
"text-1"
style=
"margin-top: -126px"
>
cpu
</div>
</div>
</div>
<div
class=
"col-md-4"
>
<div
class=
"gridb-model"
>
<div
class=
"title"
>
<span>
内存详细信息
</span>
</div>
<div
class=
"value-p"
>
<b
style=
"color: #f2ac6f;"
>
15
</b>
</div>
<div
class=
"text-1"
>
cpu
</div>
</div>
</div>
</div>
</div>
</
template
>
</m-list-construction>
</template>
...
...
@@ -16,10 +134,11 @@
import
mList
from
'
./_source/list
'
import
mSpin
from
'
@/module/components/spin/spin
'
import
mNoData
from
'
@/module/components/noData/noData
'
import
gaugeOption
from
'
./_source/gaugeOption
'
import
mListConstruction
from
'
@/module/components/listConstruction/listConstruction
'
export
default
{
name
:
'
worker-index
'
,
name
:
'
servers-worker
'
,
data
()
{
return
{
pageSize
:
10
,
...
...
@@ -27,23 +146,28 @@
totalPage
:
null
,
searchVal
:
''
,
isLoading
:
false
,
work
erList
:
[]
mast
erList
:
[]
}
},
props
:
{},
methods
:
{
...
mapActions
(
'
security
'
,
[
'
getProcess
Work
erList
'
])
...
mapActions
(
'
security
'
,
[
'
getProcess
Mast
erList
'
])
},
watch
:
{},
created
()
{
this
.
isLoading
=
true
this
.
getProcessWorkerList
().
then
(
res
=>
{
this
.
workerList
=
res
.
data
this
.
isLoading
=
false
})
},
mounted
()
{
let
b
=
{}
let
a
=
[
'
a1
'
,
'
a2
'
,
'
a3
'
,
'
a4
'
,
'
a5
'
,
'
a6
'
]
a
.
forEach
((
v
,
i
)
=>
{
b
[
v
]
=
echarts
.
init
(
document
.
getElementById
(
v
))
// eslint-disable-line
b
[
v
].
setOption
(
gaugeOption
,
true
)
})
},
components
:
{
mList
,
mListConstruction
,
mSpin
,
mNoData
}
}
</
script
>
<
style
lang=
"scss"
rel=
"stylesheet/scss"
>
@import
"./servers"
;
</
style
>
\ No newline at end of file
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/zookeeper.vue
浏览文件 @
a4730342
<
template
>
<m-list-construction
:title=
"
$t('Service-Master')
"
>
<m-list-construction
:title=
"
'Zookeeper管理'
"
>
<template
slot=
"content"
>
<template
v-if=
"
mast
erList.length"
>
<m-list
:list=
"
mast
erList"
></m-list>
<template
v-if=
"
zookeep
erList.length"
>
<m-list
:list=
"
zookeep
erList"
></m-list>
</
template
>
<
template
v-if=
"!
mast
erList.length"
>
<
template
v-if=
"!
zookeep
erList.length"
>
<m-no-data></m-no-data>
</
template
>
<m-spin
:is-spin=
"isLoading"
></m-spin>
...
...
@@ -27,7 +27,7 @@
totalPage
:
null
,
searchVal
:
''
,
isLoading
:
false
,
mast
erList
:
[]
zookeep
erList
:
[]
}
},
props
:
{},
...
...
@@ -36,11 +36,7 @@
},
watch
:
{},
created
()
{
this
.
isLoading
=
true
this
.
getProcessMasterList
().
then
(
res
=>
{
this
.
masterList
=
res
.
data
this
.
isLoading
=
false
})
this
.
zookeeperList
=
[{
id
:
1
},
{
id
:
1
},
{
id
:
1
},
{
id
:
1
}]
},
mounted
()
{
},
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/index/_source/projectChart.vue
浏览文件 @
a4730342
...
...
@@ -93,10 +93,10 @@
import
dayjs
from
'
dayjs
'
import
{
mapActions
}
from
'
vuex
'
import
{
pie
,
bar
}
from
'
./chartConfig
'
import
{
stateType
}
from
'
@/conf/home/pages/projects/pages/_source/instanceConditions/common
'
import
Chart
from
'
~/@analysys/ana-charts
'
import
mNoData
from
'
@/module/components/noData/noData
'
import
mSpin
from
'
@/module/components/spin/spin
'
import
mNoData
from
'
@/module/components/noData/noData
'
import
{
stateType
}
from
'
@/conf/home/pages/projects/pages/_source/instanceConditions/common
'
export
default
{
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/queue/_source/list.vue
浏览文件 @
a4730342
...
...
@@ -80,7 +80,6 @@
<
script
>
import
{
mapActions
}
from
'
vuex
'
import
'
@/module/filter/formatDate
'
import
{
findComponentDownward
}
from
'
@/module/util/
'
export
default
{
name
:
'
tenement-list
'
,
...
...
@@ -112,7 +111,7 @@
})
},
_edit
(
item
)
{
findComponentDownward
(
this
.
$root
,
'
queue-index
'
).
_create
(
item
)
this
.
$emit
(
'
on-edit
'
,
item
)
}
},
watch
:
{
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/queue/index.vue
浏览文件 @
a4730342
...
...
@@ -9,7 +9,12 @@
</template>
<
template
slot=
"content"
>
<template
v-if=
"queueList.length"
>
<m-list
:queue-list=
"queueList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
></m-list>
<m-list
@
on-edit=
"_onEdit"
:queue-list=
"queueList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
>
</m-list>
<div
class=
"page-box"
>
<x-page
:current=
"parseInt(searchParams.pageNo)"
:total=
"total"
:page-size=
"searchParams.pageSize"
show-elevator
@
on-change=
"_page"
></x-page>
</div>
...
...
@@ -60,6 +65,9 @@
_page
(
val
)
{
this
.
searchParams
.
pageNo
=
val
},
_onEdit
(
item
)
{
this
.
_create
(
item
)
},
_create
(
item
)
{
let
self
=
this
let
modal
=
this
.
$modal
.
dialog
({
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/_source/list.vue
浏览文件 @
a4730342
...
...
@@ -86,7 +86,6 @@
<
script
>
import
{
mapActions
}
from
'
vuex
'
import
'
@/module/filter/formatDate
'
import
{
findComponentDownward
}
from
'
@/module/util/
'
export
default
{
name
:
'
tenement-list
'
,
...
...
@@ -118,7 +117,7 @@
})
},
_edit
(
item
)
{
findComponentDownward
(
this
.
$root
,
'
tenement-index
'
).
_create
(
item
)
this
.
$emit
(
'
on-edit
'
,
item
)
}
},
watch
:
{
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/index.vue
浏览文件 @
a4730342
...
...
@@ -9,7 +9,12 @@
</template>
<
template
slot=
"content"
>
<template
v-if=
"tenementList.length"
>
<m-list
:tenement-list=
"tenementList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
></m-list>
<m-list
@
on-edit=
"_onEdit"
:tenement-list=
"tenementList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
>
</m-list>
<div
class=
"page-box"
>
<x-page
:current=
"parseInt(searchParams.pageNo)"
:total=
"total"
:page-size=
"searchParams.pageSize"
show-elevator
@
on-change=
"_page"
></x-page>
</div>
...
...
@@ -60,6 +65,9 @@
_page
(
val
)
{
this
.
searchParams
.
pageNo
=
val
},
_onEdit
(
item
)
{
this
.
_create
(
item
)
},
_create
(
item
)
{
let
self
=
this
let
modal
=
this
.
$modal
.
dialog
({
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/token/index.vue
0 → 100644
浏览文件 @
a4730342
<
template
>
<m-token></m-token>
</
template
>
<
script
>
import
mToken
from
'
@/conf/home/pages/user/pages/token
'
export
default
{
name
:
'
token-index
'
,
data
()
{
return
{}
},
props
:
{},
methods
:
{},
watch
:
{},
beforeCreate
()
{
},
created
()
{
},
beforeMount
()
{
},
mounted
()
{
},
beforeUpdate
()
{
},
updated
()
{
},
beforeDestroy
()
{
},
destroyed
()
{
},
computed
:
{},
components
:
{
mToken
}
}
</
script
>
<
style
lang=
"scss"
rel=
"stylesheet/scss"
>
.index-model
{
}
</
style
>
escheduler-ui/src/js/conf/home/pages/security/pages/users/_source/list.vue
浏览文件 @
a4730342
...
...
@@ -99,7 +99,6 @@
import
i18n
from
'
@/module/i18n
'
import
{
mapActions
}
from
'
vuex
'
import
'
@/module/filter/formatDate
'
import
{
findComponentDownward
}
from
'
@/module/util/
'
import
mTransfer
from
'
@/module/components/transfer/transfer
'
export
default
{
...
...
@@ -132,7 +131,7 @@
})
},
_edit
(
item
)
{
findComponentDownward
(
this
.
$root
,
'
users-index
'
).
_create
(
item
)
this
.
$emit
(
'
on-edit
'
,
item
)
},
_authProject
(
item
,
i
)
{
this
.
$refs
[
`poptip-auth-
${
i
}
`
][
0
].
doClose
()
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/users/index.vue
浏览文件 @
a4730342
...
...
@@ -9,7 +9,12 @@
</template>
<
template
slot=
"content"
>
<template
v-if=
"userList.length"
>
<m-list
:user-list=
"userList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
></m-list>
<m-list
@
on-edit=
"_onEdit"
:user-list=
"userList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
>
</m-list>
<div
class=
"page-box"
>
<x-page
:current=
"parseInt(searchParams.pageNo)"
:total=
"total"
:page-size=
"searchParams.pageSize"
show-elevator
@
on-change=
"_page"
></x-page>
</div>
...
...
@@ -60,6 +65,9 @@
_page
(
val
)
{
this
.
searchParams
.
pageNo
=
val
},
_onEdit
(
item
)
{
this
.
_create
(
item
)
},
_create
(
item
)
{
let
self
=
this
let
modal
=
this
.
$modal
.
dialog
({
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue
浏览文件 @
a4730342
...
...
@@ -72,7 +72,6 @@
import
i18n
from
'
@/module/i18n
'
import
{
mapActions
}
from
'
vuex
'
import
'
@/module/filter/formatDate
'
import
{
findComponentDownward
}
from
'
@/module/util/
'
import
mTransfer
from
'
@/module/components/transfer/transfer
'
export
default
{
...
...
@@ -105,7 +104,7 @@
}
)
}
,
_edit
(
item
)
{
findComponentDownward
(
this
.
$root
,
'
warning-groups-index
'
).
_create
(
item
)
this
.
$emit
(
'
on-edit
'
,
item
)
}
,
_mangeUser
(
item
,
i
)
{
this
.
getAuthList
({
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/index.vue
浏览文件 @
a4730342
...
...
@@ -9,7 +9,12 @@
</template>
<
template
slot=
"content"
>
<template
v-if=
"alertgroupList.length"
>
<m-list
:alertgroup-list=
"alertgroupList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
></m-list>
<m-list
@
on-edit=
"_onEdit"
:alertgroup-list=
"alertgroupList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
>
</m-list>
<div
class=
"page-box"
>
<x-page
:current=
"parseInt(searchParams.pageNo)"
:total=
"total"
:page-size=
"searchParams.pageSize"
show-elevator
@
on-change=
"_page"
></x-page>
</div>
...
...
@@ -60,6 +65,9 @@
_page
(
val
)
{
this
.
searchParams
.
pageNo
=
val
},
_onEdit
(
item
)
{
this
.
_create
(
item
)
},
_create
(
item
)
{
let
self
=
this
let
modal
=
this
.
$modal
.
dialog
({
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/workerGroups/_source/list.vue
浏览文件 @
a4730342
...
...
@@ -66,7 +66,6 @@
// import i18n from '@/module/i18n'
import
{
mapActions
}
from
'
vuex
'
import
'
@/module/filter/formatDate
'
import
{
findComponentDownward
}
from
'
@/module/util/
'
export
default
{
name
:
'
user-list
'
,
...
...
@@ -98,7 +97,7 @@
})
},
_edit
(
item
)
{
findComponentDownward
(
this
.
$root
,
'
worker-groups-index
'
).
_create
(
item
)
this
.
$emit
(
'
on-edit
'
,
item
)
}
},
watch
:
{
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/workerGroups/index.vue
浏览文件 @
a4730342
...
...
@@ -9,7 +9,11 @@
</template>
<
template
slot=
"content"
>
<template
v-if=
"workerGroupList.length"
>
<m-list
:worker-group-list=
"workerGroupList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
></m-list>
<m-list
@
on-edit=
"_onEdit"
:worker-group-list=
"workerGroupList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
>
</m-list>
<div
class=
"page-box"
>
<x-page
:current=
"parseInt(searchParams.pageNo)"
:total=
"total"
:page-size=
"searchParams.pageSize"
show-elevator
@
on-change=
"_page"
></x-page>
</div>
...
...
@@ -60,6 +64,9 @@
_page
(
val
)
{
this
.
searchParams
.
pageNo
=
val
},
_onEdit
(
item
)
{
this
.
_create
(
item
)
},
_create
(
item
)
{
let
self
=
this
let
modal
=
this
.
$modal
.
dialog
({
...
...
escheduler-ui/src/js/conf/home/pages/user/pages/token/_source/createToken.vue
浏览文件 @
a4730342
...
...
@@ -18,7 +18,7 @@
</x-datepicker>
</
template
>
</m-list-box-f>
<m-list-box-f>
<m-list-box-f
v-if=
"auth"
>
<
template
slot=
"name"
><b>
*
</b>
用户
</
template
>
<
template
slot=
"content"
>
<x-select
v-model=
"userId"
@
on-change=
"_onChange"
>
...
...
@@ -53,6 +53,7 @@
import
dayjs
from
'
dayjs
'
// import i18n from '@/module/i18n'
import
store
from
'
@/conf/home/store
'
import
Permissions
from
'
@/module/permissions
'
import
mPopup
from
'
@/module/components/popup/popup
'
import
mListBoxF
from
'
@/module/components/listBoxF/listBoxF
'
...
...
@@ -66,7 +67,8 @@
disabledDate
:
date
=>
(
date
.
getTime
()
-
new
Date
(
new
Date
().
getTime
()
-
24
*
60
*
60
*
1000
))
<
0
,
token
:
''
,
userIdList
:
[],
tokenLoading
:
false
tokenLoading
:
false
,
auth
:
!
Permissions
.
getAuth
()
}
},
props
:
{
...
...
@@ -128,16 +130,23 @@
},
watch
:
{},
created
()
{
this
.
store
.
dispatch
(
`security/getUsersList`
).
then
(
res
=>
{
this
.
userIdList
=
_
.
map
(
res
,
v
=>
_
.
pick
(
v
,
[
'
id
'
,
'
userName
'
]))
const
d
=
(
userId
)
=>
{
if
(
this
.
item
)
{
this
.
expireTime
=
this
.
item
.
expireTime
this
.
userId
=
this
.
item
.
userId
this
.
token
=
this
.
item
.
token
}
else
{
this
.
userId
=
this
.
userIdList
[
0
].
i
d
this
.
userId
=
userI
d
}
})
}
if
(
this
.
auth
)
{
this
.
store
.
dispatch
(
`security/getUsersList`
).
then
(
res
=>
{
this
.
userIdList
=
_
.
map
(
res
,
v
=>
_
.
pick
(
v
,
[
'
id
'
,
'
userName
'
]))
d
(
this
.
userIdList
[
0
].
id
)
})
}
else
{
d
(
this
.
store
.
state
.
user
.
userInfo
.
id
)
}
},
mounted
()
{
},
...
...
escheduler-ui/src/js/conf/home/pages/user/pages/token/_source/list.vue
浏览文件 @
a4730342
...
...
@@ -72,7 +72,6 @@
<
script
>
import
{
mapActions
}
from
'
vuex
'
import
'
@/module/filter/formatDate
'
import
{
findComponentDownward
}
from
'
@/module/util/
'
export
default
{
name
:
'
token-list
'
,
...
...
@@ -104,7 +103,7 @@
})
},
_edit
(
item
)
{
findComponentDownward
(
this
.
$root
,
'
token-index
'
).
_create
(
item
)
this
.
$emit
(
'
on-edit
'
,
item
)
}
},
watch
:
{
...
...
escheduler-ui/src/js/conf/home/pages/user/pages/token/index.vue
浏览文件 @
a4730342
...
...
@@ -9,7 +9,12 @@
</template>
<
template
slot=
"content"
>
<template
v-if=
"tokenList.length"
>
<m-list
:token-list=
"tokenList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
></m-list>
<m-list
@
on-edit=
"_onEdit"
:token-list=
"tokenList"
:page-no=
"searchParams.pageNo"
:page-size=
"searchParams.pageSize"
>
</m-list>
<div
class=
"page-box"
>
<x-page
:current=
"parseInt(searchParams.pageNo)"
:total=
"total"
:page-size=
"searchParams.pageSize"
show-elevator
@
on-change=
"_page"
></x-page>
</div>
...
...
@@ -61,6 +66,9 @@
_page
(
val
)
{
this
.
searchParams
.
pageNo
=
val
},
_onEdit
(
item
)
{
this
.
_create
(
item
)
},
_create
(
item
)
{
let
self
=
this
let
modal
=
this
.
$modal
.
dialog
({
...
...
escheduler-ui/src/js/conf/home/router/index.js
浏览文件 @
a4730342
...
...
@@ -325,6 +325,14 @@ const router = new Router({
meta
:
{
title
:
`workerGroups`
}
},
{
path
:
'
/security/token
'
,
name
:
'
token-manage
'
,
component
:
resolve
=>
require
([
'
../pages/security/pages/token/index
'
],
resolve
),
meta
:
{
title
:
`token`
}
}
]
},
...
...
escheduler-ui/src/js/conf/home/store/security/actions.js
浏览文件 @
a4730342
...
...
@@ -435,7 +435,7 @@ export default {
let
list
=
res
.
data
list
.
unshift
({
id
:
-
1
,
name
:
'
All
'
name
:
'
Default
'
})
state
.
workerGroupsListAll
=
list
resolve
(
list
)
...
...
escheduler-ui/src/js/module/components/secondaryMenu/_source/menu.js
浏览文件 @
a4730342
...
...
@@ -17,6 +17,7 @@
import
i18n
from
'
@/module/i18n
'
import
config
from
'
~/external/config
'
import
Permissions
from
'
@/module/permissions
'
let
menu
=
{
projects
:
[
...
...
@@ -116,6 +117,15 @@ let menu = {
disabled
:
true
,
icon
:
'
fa-address-book
'
,
children
:
[]
},
{
name
:
`令牌管理`
,
id
:
2
,
path
:
'
token-manage
'
,
isOpen
:
true
,
icon
:
'
fa-file-text
'
,
children
:
[],
disabled
:
true
}
],
resource
:
[
...
...
@@ -177,7 +187,7 @@ let menu = {
isOpen
:
true
,
icon
:
'
fa-file-text
'
,
children
:
[],
disabled
:
true
disabled
:
Permissions
.
getAuth
()
}
],
monitor
:
[
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录