实现节点看板(仅对企业版开放)

This commit is contained in:
刘祥超
2021-07-06 20:06:20 +08:00
parent 3cf43b2cc1
commit e93aecabb4
34 changed files with 1313 additions and 296 deletions

View File

@@ -47,13 +47,13 @@
<div class="ui divider"></div>
<!-- 域名排行 -->
<h4>域名排行 <span>24小时</span></h4>
<h4>域名访问排行 <span>24小时</span></h4>
<div class="chart-box" id="top-domains-chart"></div>
<div class="ui divider"></div>
<!-- 节点排行 -->
<h4>节点排行 <span>24小时</span></h4>
<h4>节点访问排行 <span>24小时</span></h4>
<div class="chart-box" id="top-nodes-chart"></div>
<div class="ui divider"></div>
@@ -66,4 +66,10 @@
<div class="chart-box" id="cpu-chart" v-show="nodeStatusTab == 'cpu'"></div>
<div class="chart-box" id="memory-chart" v-show="nodeStatusTab == 'memory'"></div>
<div class="chart-box" id="load-chart" v-show="nodeStatusTab == 'load'"></div>
<div class="chart-box" id="load-chart" v-show="nodeStatusTab == 'load'"></div>
<!-- 指标 -->
<div class="ui divider" v-if="metricCharts.length > 0"></div>
<metric-board>
<metric-chart v-for="chart in metricCharts" :key="chart.id" :v-chart="chart.chart" :v-stats="chart.stats" :v-period="chart.item.period" :v-period-unit="chart.item.periodUnit" :v-value-type="chart.item.valueType"></metric-chart>
</metric-board>

View File

@@ -7,7 +7,7 @@ Tea.context(function () {
this.$delay(function () {
this.reloadHourlyTrafficChart()
this.reloadHourlyRequestsChart()
this.reloadTopNodeStatsChart()
this.reloadTopNodesChart()
this.reloadTopDomainsChart()
this.reloadCPUChart()
})
@@ -265,7 +265,7 @@ Tea.context(function () {
}
// 节点排行
this.reloadTopNodeStatsChart = function () {
this.reloadTopNodesChart = function () {
let that = this
let axis = teaweb.countAxis(this.topNodeStats, function (v) {
return v.countRequests
@@ -283,7 +283,10 @@ Tea.context(function () {
value: function (v) {
return v.countRequests / axis.divider;
},
axis: axis
axis: axis,
click: function (args, stats) {
window.location = "/clusters/cluster/node?nodeId=" + stats[args.dataIndex].nodeId + "&clusterId=" + that.clusterId
}
})
}
@@ -332,7 +335,7 @@ Tea.context(function () {
}
this.reloadCPUChart = function () {
let axis = {unit: "", divider: 1}
let axis = {unit: "%", divider: 1}
teaweb.renderLineChart({
id: "cpu-chart",
name: "CPU",
@@ -352,7 +355,7 @@ Tea.context(function () {
}
this.reloadMemoryChart = function () {
let axis = {unit: "", divider: 1}
let axis = {unit: "%", divider: 1}
teaweb.renderLineChart({
id: "memory-chart",
name: "内存",