diff --git a/internal/web/actions/default/clusters/cluster/boards/index.go b/internal/web/actions/default/clusters/cluster/boards/index.go
index ba820170..268168b1 100644
--- a/internal/web/actions/default/clusters/cluster/boards/index.go
+++ b/internal/web/actions/default/clusters/cluster/boards/index.go
@@ -170,6 +170,7 @@ func (this *IndexAction) RunGet(params struct {
"periodUnit": chart.MetricChart.MetricItem.PeriodUnit,
"valueType": serverconfigs.FindMetricValueType(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
"valueTypeName": serverconfigs.FindMetricValueName(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
+ "keys": chart.MetricChart.MetricItem.Keys,
},
"stats": statMaps,
})
diff --git a/internal/web/actions/default/clusters/cluster/node/boards/index.go b/internal/web/actions/default/clusters/cluster/node/boards/index.go
index 34526e35..218a4fd0 100644
--- a/internal/web/actions/default/clusters/cluster/node/boards/index.go
+++ b/internal/web/actions/default/clusters/cluster/node/boards/index.go
@@ -192,6 +192,7 @@ func (this *IndexAction) RunGet(params struct {
"periodUnit": chart.MetricChart.MetricItem.PeriodUnit,
"valueType": serverconfigs.FindMetricValueType(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
"valueTypeName": serverconfigs.FindMetricValueName(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
+ "keys": chart.MetricChart.MetricItem.Keys,
},
"stats": statMaps,
})
diff --git a/internal/web/actions/default/dashboard/boards/index.go b/internal/web/actions/default/dashboard/boards/index.go
index cd07ebea..1b4742ca 100644
--- a/internal/web/actions/default/dashboard/boards/index.go
+++ b/internal/web/actions/default/dashboard/boards/index.go
@@ -237,6 +237,7 @@ func (this *IndexAction) RunGet(params struct{}) {
"periodUnit": chart.MetricChart.MetricItem.PeriodUnit,
"valueType": serverconfigs.FindMetricValueType(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
"valueTypeName": serverconfigs.FindMetricValueName(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
+ "keys": chart.MetricChart.MetricItem.Keys,
},
"stats": statMaps,
})
diff --git a/internal/web/actions/default/dashboard/index.go b/internal/web/actions/default/dashboard/index.go
index 2ae28237..5b434121 100644
--- a/internal/web/actions/default/dashboard/index.go
+++ b/internal/web/actions/default/dashboard/index.go
@@ -198,6 +198,7 @@ func (this *IndexAction) RunGet(params struct{}) {
"periodUnit": chart.MetricChart.MetricItem.PeriodUnit,
"valueType": serverconfigs.FindMetricValueType(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
"valueTypeName": serverconfigs.FindMetricValueName(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
+ "keys": chart.MetricChart.MetricItem.Keys,
},
"stats": statMaps,
})
diff --git a/internal/web/actions/default/servers/ipbox/index.go b/internal/web/actions/default/servers/ipbox/index.go
new file mode 100644
index 00000000..2a8fabf3
--- /dev/null
+++ b/internal/web/actions/default/servers/ipbox/index.go
@@ -0,0 +1,55 @@
+// Copyright 2021 Liuxiangchao iwind.liu@gmail.com. All rights reserved.
+
+package ipbox
+
+import (
+ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils"
+ "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb"
+ timeutil "github.com/iwind/TeaGo/utils/time"
+ "time"
+)
+
+type IndexAction struct {
+ actionutils.ParentAction
+}
+
+func (this *IndexAction) Init() {
+ this.Nav("", "", "")
+}
+
+func (this *IndexAction) RunGet(params struct {
+ Ip string
+}) {
+ this.Data["ip"] = params.Ip
+
+ accessLogsResp, err := this.RPC().HTTPAccessLogRPC().ListHTTPAccessLogs(this.AdminContext(), &pb.ListHTTPAccessLogsRequest{
+ Day: timeutil.Format("Ymd"),
+ Keyword: "ip:" + params.Ip,
+ Size: 10,
+ })
+ if err != nil {
+ this.ErrorPage(err)
+ return
+ }
+ var accessLogs = accessLogsResp.HttpAccessLogs
+ if len(accessLogs) == 0 {
+ // 查询昨天
+ accessLogsResp, err = this.RPC().HTTPAccessLogRPC().ListHTTPAccessLogs(this.AdminContext(), &pb.ListHTTPAccessLogsRequest{
+ Day: timeutil.Format("Ymd", time.Now().AddDate(0, 0, -1)),
+ Keyword: "ip:" + params.Ip,
+ Size: 10,
+ })
+ if err != nil {
+ this.ErrorPage(err)
+ return
+ }
+ accessLogs = accessLogsResp.HttpAccessLogs
+
+ if len(accessLogs) == 0 {
+ accessLogs = []*pb.HTTPAccessLog{}
+ }
+ }
+ this.Data["accessLogs"] = accessLogs
+
+ this.Show()
+}
diff --git a/internal/web/actions/default/servers/ipbox/init.go b/internal/web/actions/default/servers/ipbox/init.go
new file mode 100644
index 00000000..54844485
--- /dev/null
+++ b/internal/web/actions/default/servers/ipbox/init.go
@@ -0,0 +1,19 @@
+// Copyright 2021 Liuxiangchao iwind.liu@gmail.com. All rights reserved.
+
+package ipbox
+
+import (
+ "github.com/TeaOSLab/EdgeAdmin/internal/configloaders"
+ "github.com/TeaOSLab/EdgeAdmin/internal/web/helpers"
+ "github.com/iwind/TeaGo"
+)
+
+func init() {
+ TeaGo.BeforeStart(func(server *TeaGo.Server) {
+ server.
+ Helper(helpers.NewUserMustAuth(configloaders.AdminModuleCodeServer)).
+ Prefix("/servers/ipbox").
+ Get("", new(IndexAction)).
+ EndAll()
+ })
+}
\ No newline at end of file
diff --git a/internal/web/actions/default/servers/server/boards/index.go b/internal/web/actions/default/servers/server/boards/index.go
index 6bf67ddf..8afd8b92 100644
--- a/internal/web/actions/default/servers/server/boards/index.go
+++ b/internal/web/actions/default/servers/server/boards/index.go
@@ -144,6 +144,7 @@ func (this *IndexAction) RunGet(params struct {
"periodUnit": chart.MetricChart.MetricItem.PeriodUnit,
"valueType": serverconfigs.FindMetricValueType(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
"valueTypeName": serverconfigs.FindMetricValueName(chart.MetricChart.MetricItem.Category, chart.MetricChart.MetricItem.Value),
+ "keys": chart.MetricChart.MetricItem.Keys,
},
"stats": statMaps,
})
diff --git a/internal/web/import.go b/internal/web/import.go
index 86aad247..71bfd264 100644
--- a/internal/web/import.go
+++ b/internal/web/import.go
@@ -60,7 +60,6 @@ import (
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/components/groups"
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/components/log"
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/components/waf"
- _ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/iplists"
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/metrics"
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/metrics/charts"
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server"
@@ -112,6 +111,10 @@ import (
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/websocket"
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/stat"
+ // IP相关
+ _ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/ipbox"
+ _ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/iplists"
+
// 设置相关
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/settings"
_ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/settings/authority"
diff --git a/web/public/js/components/server/metric-charts.js b/web/public/js/components/server/metric-charts.js
index 69e35786..9cc50aad 100644
--- a/web/public/js/components/server/metric-charts.js
+++ b/web/public/js/components/server/metric-charts.js
@@ -14,16 +14,20 @@ Vue.component("metric-chart", {
return v.value
})
if (sum < stats[0].total) {
- stats.push({
- keys: ["其他"],
- value: stats[0].total - sum,
- total: stats[0].total,
- time: stats[0].time
- })
+ if (this.vChart.type == "pie") {
+ stats.push({
+ keys: ["其他"],
+ value: stats[0].total - sum,
+ total: stats[0].total,
+ time: stats[0].time
+ })
+ }
}
}
if (this.vChart.maxItems > 0) {
stats = stats.slice(0, this.vChart.maxItems)
+ } else {
+ stats = stats.slice(0, 10)
}
stats.$rsort(function (v1, v2) {
@@ -55,6 +59,9 @@ Vue.component("metric-chart", {
},
render: function (el) {
let chart = echarts.init(el)
+ window.addEventListener("resize", function () {
+ chart.resize()
+ })
switch (this.chart.type) {
case "pie":
this.renderPie(chart)
@@ -271,6 +278,15 @@ Vue.component("metric-chart", {
})
break
}
+ let bottom = 24
+ let rotate = 0
+ let result = teaweb.xRotation(chart, this.stats.map(function (v) {
+ return v.keys[0]
+ }))
+ if (result != null) {
+ bottom = result[0]
+ rotate = result[1]
+ }
let that = this
chart.setOption({
xAxis: {
@@ -278,7 +294,8 @@ Vue.component("metric-chart", {
return v.keys[0]
}),
axisLabel: {
- interval: 0
+ interval: 0,
+ rotate: rotate
}
},
tooltip: {
@@ -310,7 +327,7 @@ Vue.component("metric-chart", {
left: 40,
top: 10,
right: 20,
- bottom: 25
+ bottom: bottom
},
series: [
{
@@ -327,6 +344,19 @@ Vue.component("metric-chart", {
}
]
})
+
+ // IP相关操作
+ if (this.item.keys != null && this.item.keys.$contains("${remoteAddr}")) {
+ let that = this
+ chart.on("click", function (args) {
+ let index = that.item.keys.$indexesOf("${remoteAddr}")[0]
+ let value = that.stats[args.dataIndex].keys[index]
+ teaweb.popup("/servers/ipbox?ip=" + value, {
+ width: "50em",
+ height: "30em"
+ })
+ })
+ }
},
renderTable: function (chart) {
let table = `
diff --git a/web/public/js/utils.js b/web/public/js/utils.js
index bca7b3f7..95527608 100644
--- a/web/public/js/utils.js
+++ b/web/public/js/utils.js
@@ -410,16 +410,24 @@ window.teaweb = {
}
let click = options.click
+ let bottom = 24
+ let rotate = 0
let chartBox = document.getElementById(chartId)
if (chartBox == null) {
return
}
- let chart = echarts.init(chartBox)
+ let chart = this.initChart(chartBox)
+ let result = this.xRotation(chart, values.map(xFunc))
+ if (result != null) {
+ bottom = result[0]
+ rotate = result[1]
+ }
let option = {
xAxis: {
data: values.map(xFunc),
axisLabel: {
- interval: 0
+ interval: 0,
+ rotate: rotate
}
},
yAxis: {
@@ -440,7 +448,7 @@ window.teaweb = {
left: 40,
top: 10,
right: 20,
- bottom: 24
+ bottom: bottom
},
series: [
{
@@ -478,7 +486,7 @@ window.teaweb = {
if (chartBox == null) {
return
}
- let chart = echarts.init(chartBox)
+ let chart = this.initChart(chartBox)
let option = {
xAxis: {
data: values.map(xFunc),
@@ -522,6 +530,25 @@ window.teaweb = {
}
chart.setOption(option)
chart.resize()
+ },
+ xRotation: function (chart, names) {
+ let chartWidth = chart.getWidth()
+ let width = 0
+ names.forEach(function (name) {
+ width += name.length * 10
+ })
+ if (width <= chartWidth) {
+ return null
+ }
+
+ return [40, -20]
+ },
+ initChart: function (dom) {
+ let instance = echarts.init(dom)
+ window.addEventListener("resize", function () {
+ instance.resize()
+ })
+ return instance
}
}
@@ -537,4 +564,4 @@ String.prototype.quoteIP = function () {
return ip
}
return "[" + ip + "]"
-}
\ No newline at end of file
+}
diff --git a/web/views/@default/clusters/cluster/boards/index.js b/web/views/@default/clusters/cluster/boards/index.js
index b1d97963..b4beb0e8 100644
--- a/web/views/@default/clusters/cluster/boards/index.js
+++ b/web/views/@default/clusters/cluster/boards/index.js
@@ -65,7 +65,7 @@ Tea.context(function () {
return Math.max(v.bytes, v.cachedBytes)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -198,7 +198,7 @@ Tea.context(function () {
return Math.max(v.countRequests, v.countCachedRequests)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
diff --git a/web/views/@default/clusters/cluster/node/boards/index.js b/web/views/@default/clusters/cluster/node/boards/index.js
index 2774ca6b..ed9fd017 100644
--- a/web/views/@default/clusters/cluster/node/boards/index.js
+++ b/web/views/@default/clusters/cluster/node/boards/index.js
@@ -111,7 +111,7 @@ Tea.context(function () {
return Math.max(v.bytes, v.cachedBytes)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -247,7 +247,7 @@ Tea.context(function () {
return Math.max(v.countRequests, v.countCachedRequests)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
diff --git a/web/views/@default/dashboard/boards/dns.js b/web/views/@default/dashboard/boards/dns.js
index 02adeded..d94b8942 100644
--- a/web/views/@default/dashboard/boards/dns.js
+++ b/web/views/@default/dashboard/boards/dns.js
@@ -68,7 +68,7 @@ Tea.context(function () {
return Math.max(v.bytes, v.cachedBytes)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
diff --git a/web/views/@default/dashboard/boards/index.js b/web/views/@default/dashboard/boards/index.js
index 4616b9f0..eed64b4f 100644
--- a/web/views/@default/dashboard/boards/index.js
+++ b/web/views/@default/dashboard/boards/index.js
@@ -6,16 +6,6 @@ Tea.context(function () {
this.reloadHourlyRequestsChart()
this.reloadTopDomainsChart()
this.reloadTopNodesChart()
-
- let that = this
- window.addEventListener("resize", function () {
- if (that.trafficTab == "hourly") {
- that.resizeHourlyTrafficChart()
- }
- if (that.trafficTab == "daily") {
- that.resizeDailyTrafficChart()
- }
- })
})
this.selectTrafficTab = function (tab) {
@@ -61,25 +51,13 @@ Tea.context(function () {
})
}
- this.resizeHourlyTrafficChart = function () {
- let chartBox = document.getElementById("hourly-traffic-chart-box")
- let chart = echarts.init(chartBox)
- chart.resize()
- }
-
- this.resizeDailyTrafficChart = function () {
- let chartBox = document.getElementById("daily-traffic-chart-box")
- let chart = echarts.init(chartBox)
- chart.resize()
- }
-
this.reloadTrafficChart = function (chartId, stats, tooltipFunc) {
let axis = teaweb.bytesAxis(stats, function (v) {
return v.bytes
})
let chartBox = document.getElementById(chartId)
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let that = this
let option = {
xAxis: {
@@ -219,7 +197,7 @@ Tea.context(function () {
return Math.max(v.countRequests, v.countCachedRequests)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
diff --git a/web/views/@default/dashboard/boards/waf.js b/web/views/@default/dashboard/boards/waf.js
index bc58b94c..dedd5dc8 100644
--- a/web/views/@default/dashboard/boards/waf.js
+++ b/web/views/@default/dashboard/boards/waf.js
@@ -63,7 +63,7 @@ Tea.context(function () {
if (chartBox == null) {
return
}
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(xFunc)
diff --git a/web/views/@default/dashboard/index.js b/web/views/@default/dashboard/index.js
index 55458208..7f44b484 100644
--- a/web/views/@default/dashboard/index.js
+++ b/web/views/@default/dashboard/index.js
@@ -3,16 +3,6 @@ Tea.context(function () {
this.$delay(function () {
this.reloadHourlyTrafficChart()
-
- let that = this
- window.addEventListener("resize", function () {
- if (that.trafficTab == "hourly") {
- that.resizeHourlyTrafficChart()
- }
- if (that.trafficTab == "daily") {
- that.resizeDailyTrafficChart()
- }
- })
})
this.selectTrafficTab = function (tab) {
@@ -28,18 +18,12 @@ Tea.context(function () {
}
}
- this.resizeHourlyTrafficChart = function () {
- let chartBox = document.getElementById("hourly-traffic-chart-box")
- let chart = echarts.init(chartBox)
- chart.resize()
- }
-
this.reloadHourlyTrafficChart = function () {
let axis = teaweb.bytesAxis(this.hourlyTrafficStats, function (v) {
return v.bytes
})
let chartBox = document.getElementById("hourly-traffic-chart-box")
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let that = this
let option = {
xAxis: {
@@ -91,18 +75,13 @@ Tea.context(function () {
chart.resize()
}
- this.resizeDailyTrafficChart = function () {
- let chartBox = document.getElementById("daily-traffic-chart-box")
- let chart = echarts.init(chartBox)
- chart.resize()
- }
-
this.reloadDailyTrafficChart = function () {
let axis = teaweb.bytesAxis(this.dailyTrafficStats, function (v) {
return v.bytes
})
let chartBox = document.getElementById("daily-traffic-chart-box")
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
+
let that = this
let option = {
xAxis: {
diff --git a/web/views/@default/servers/ipbox/index.html b/web/views/@default/servers/ipbox/index.html
new file mode 100644
index 00000000..8e436681
--- /dev/null
+++ b/web/views/@default/servers/ipbox/index.html
@@ -0,0 +1,10 @@
+{$layout "layout_popup"}
+
+最近访问日志({{ip}})
+
+
+
\ No newline at end of file
diff --git a/web/views/@default/servers/server/boards/index.js b/web/views/@default/servers/server/boards/index.js
index 7726ef6f..8d64a725 100644
--- a/web/views/@default/servers/server/boards/index.js
+++ b/web/views/@default/servers/server/boards/index.js
@@ -73,7 +73,7 @@ Tea.context(function () {
return Math.max(v.bytes, v.cachedBytes)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -209,7 +209,7 @@ Tea.context(function () {
return Math.max(v.countRequests, v.countCachedRequests)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
diff --git a/web/views/@default/servers/server/stat/clients.js b/web/views/@default/servers/server/stat/clients.js
index 70b33b78..4575ded7 100644
--- a/web/views/@default/servers/server/stat/clients.js
+++ b/web/views/@default/servers/server/stat/clients.js
@@ -10,9 +10,6 @@ Tea.context(function () {
}, function (args) {
return that.systemStats[args.dataIndex].system.name + ": " + teaweb.formatNumber(that.systemStats[args.dataIndex].count)
}, systemAxis)
- window.addEventListener("resize", function () {
- that.resizeChart("system-chart")
- })
let browserAxis = teaweb.countAxis(this.browserStats, function (v) {
return v.count
@@ -22,11 +19,6 @@ Tea.context(function () {
}, function (args) {
return that.browserStats[args.dataIndex].browser.name + ": " + teaweb.formatNumber(that.browserStats[args.dataIndex].count)
}, browserAxis)
-
- window.addEventListener("resize", function () {
- that.resizeChart("system-chart")
- that.resizeChart("browser-chart")
- })
})
this.reloadChart = function (chartId, name, stats, xFunc, tooltipFunc, axis) {
@@ -34,7 +26,7 @@ Tea.context(function () {
if (chartBox == null) {
return
}
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(xFunc),
@@ -78,13 +70,4 @@ Tea.context(function () {
chart.setOption(option)
chart.resize()
}
-
- this.resizeChart = function (chartId) {
- let chartBox = document.getElementById(chartId)
- if (chartBox == null) {
- return
- }
- let chart = echarts.init(chartBox)
- chart.resize()
- }
})
diff --git a/web/views/@default/servers/server/stat/dailyRequests.js b/web/views/@default/servers/server/stat/dailyRequests.js
index 69ad8023..112a200f 100644
--- a/web/views/@default/servers/server/stat/dailyRequests.js
+++ b/web/views/@default/servers/server/stat/dailyRequests.js
@@ -28,10 +28,6 @@ Tea.context(function () {
}
return ""
})
- window.addEventListener("resize", function () {
- that.resizeChart("daily-requests-chart")
- that.resizeChart("daily-traffic-chart")
- })
})
this.reloadRequestsChart = function (chartId, name, stats, tooltipFunc) {
@@ -44,7 +40,7 @@ Tea.context(function () {
return Math.max(v.countRequests, v.countCachedRequests)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -116,7 +112,7 @@ Tea.context(function () {
return Math.max(v.bytes, v.cachedBytes)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -177,13 +173,4 @@ Tea.context(function () {
chart.setOption(option)
chart.resize()
}
-
- this.resizeChart = function (chartId) {
- let chartBox = document.getElementById(chartId)
- if (chartBox == null) {
- return
- }
- let chart = echarts.init(chartBox)
- chart.resize()
- }
})
diff --git a/web/views/@default/servers/server/stat/hourlyRequests.js b/web/views/@default/servers/server/stat/hourlyRequests.js
index 754db2e5..77c9b04b 100644
--- a/web/views/@default/servers/server/stat/hourlyRequests.js
+++ b/web/views/@default/servers/server/stat/hourlyRequests.js
@@ -28,10 +28,6 @@ Tea.context(function () {
}
return ""
})
- window.addEventListener("resize", function () {
- that.resizeChart("hourly-requests-chart")
- that.resizeChart("hourly-traffic-chart")
- })
})
this.reloadRequestsChart = function (chartId, name, stats, tooltipFunc) {
@@ -44,7 +40,7 @@ Tea.context(function () {
return Math.max(v.countRequests, v.countCachedRequests)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -116,7 +112,7 @@ Tea.context(function () {
return Math.max(v.bytes, v.cachedBytes)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -177,13 +173,4 @@ Tea.context(function () {
chart.setOption(option)
chart.resize()
}
-
- this.resizeChart = function (chartId) {
- let chartBox = document.getElementById(chartId)
- if (chartBox == null) {
- return
- }
- let chart = echarts.init(chartBox)
- chart.resize()
- }
})
diff --git a/web/views/@default/servers/server/stat/index.js b/web/views/@default/servers/server/stat/index.js
index b7d2de7b..cd6341d3 100644
--- a/web/views/@default/servers/server/stat/index.js
+++ b/web/views/@default/servers/server/stat/index.js
@@ -28,10 +28,6 @@ Tea.context(function () {
}
return ""
})
- window.addEventListener("resize", function () {
- that.resizeChart("minutely-requests-chart")
- that.resizeChart("minutely-traffic-chart")
- })
})
this.reloadRequestsChart = function (chartId, name, stats, tooltipFunc) {
@@ -44,7 +40,7 @@ Tea.context(function () {
return Math.max(v.countRequests, v.countCachedRequests)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -116,7 +112,7 @@ Tea.context(function () {
return Math.max(v.bytes, v.cachedBytes)
})
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(function (v) {
@@ -177,13 +173,4 @@ Tea.context(function () {
chart.setOption(option)
chart.resize()
}
-
- this.resizeChart = function (chartId) {
- let chartBox = document.getElementById(chartId)
- if (chartBox == null) {
- return
- }
- let chart = echarts.init(chartBox)
- chart.resize()
- }
})
diff --git a/web/views/@default/servers/server/stat/providers.js b/web/views/@default/servers/server/stat/providers.js
index 795cd62e..afbf1e28 100644
--- a/web/views/@default/servers/server/stat/providers.js
+++ b/web/views/@default/servers/server/stat/providers.js
@@ -10,9 +10,6 @@ Tea.context(function () {
}, function (args) {
return that.providerStats[args.dataIndex].provider.name + ": " + teaweb.formatNumber(that.providerStats[args.dataIndex].count)
}, axis)
- window.addEventListener("resize", function () {
- that.resizeChart("provider-chart")
- })
})
this.reloadChart = function (chartId, name, stats, xFunc, tooltipFunc, axis) {
@@ -20,7 +17,7 @@ Tea.context(function () {
if (chartBox == null) {
return
}
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(xFunc),
@@ -64,13 +61,4 @@ Tea.context(function () {
chart.setOption(option)
chart.resize()
}
-
- this.resizeChart = function (chartId) {
- let chartBox = document.getElementById(chartId)
- if (chartBox == null) {
- return
- }
- let chart = echarts.init(chartBox)
- chart.resize()
- }
})
diff --git a/web/views/@default/servers/server/stat/regions.js b/web/views/@default/servers/server/stat/regions.js
index 4edbdd32..cc9735be 100644
--- a/web/views/@default/servers/server/stat/regions.js
+++ b/web/views/@default/servers/server/stat/regions.js
@@ -31,12 +31,6 @@ Tea.context(function () {
}, function (args) {
return that.cityStats[args.dataIndex].country.name + ": " + that.cityStats[args.dataIndex].province.name + " " + that.cityStats[args.dataIndex].city.name + " " + teaweb.formatNumber(that.cityStats[args.dataIndex].count)
}, cityAxis)
-
- window.addEventListener("resize", function () {
- that.resizeChart("country-chart")
- that.resizeChart("province-chart")
- that.resizeChart("city-chart")
- })
})
this.reloadChart = function (chartId, name, stats, xFunc, tooltipFunc, axis) {
@@ -44,7 +38,7 @@ Tea.context(function () {
if (chartBox == null) {
return
}
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(xFunc),
@@ -88,13 +82,4 @@ Tea.context(function () {
chart.setOption(option)
chart.resize()
}
-
- this.resizeChart = function (chartId) {
- let chartBox = document.getElementById(chartId)
- if (chartBox == null) {
- return
- }
- let chart = echarts.init(chartBox)
- chart.resize()
- }
})
diff --git a/web/views/@default/servers/server/stat/waf.js b/web/views/@default/servers/server/stat/waf.js
index 0bcf3508..ccb181c1 100644
--- a/web/views/@default/servers/server/stat/waf.js
+++ b/web/views/@default/servers/server/stat/waf.js
@@ -39,11 +39,6 @@ Tea.context(function () {
}
return that.groupStats[args.dataIndex].group.name + ": " + teaweb.formatNumber(that.groupStats[args.dataIndex].count) + percent
}, groupAxis)
-
- window.addEventListener("resize", function () {
- that.resizeChart("daily-chart")
- that.resizeChart("group-chart")
- })
})
this.reloadLineChart = function (chartId, name, stats, xFunc, tooltipFunc, axis) {
@@ -52,7 +47,7 @@ Tea.context(function () {
return
}
let that = this
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(xFunc)
@@ -129,7 +124,7 @@ Tea.context(function () {
if (chartBox == null) {
return
}
- let chart = echarts.init(chartBox)
+ let chart = teaweb.initChart(chartBox)
let option = {
xAxis: {
data: stats.map(xFunc)
@@ -170,13 +165,4 @@ Tea.context(function () {
chart.setOption(option)
chart.resize()
}
-
- this.resizeChart = function (chartId) {
- let chartBox = document.getElementById(chartId)
- if (chartBox == null) {
- return
- }
- let chart = echarts.init(chartBox)
- chart.resize()
- }
})
\ No newline at end of file