From c85ff49925c629145e28a735c33a03518753d4f8 Mon Sep 17 00:00:00 2001 From: Fenny <25108519+Fenny@users.noreply.github.com> Date: Tue, 29 Sep 2020 02:31:32 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=B9=20update=20monitor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- middleware/monitor/index.go | 42 +++++++++++++++++------------------ middleware/monitor/index.html | 42 +++++++++++++++++------------------ middleware/monitor/monitor.go | 26 +++++++++------------- 3 files changed, 53 insertions(+), 57 deletions(-) diff --git a/middleware/monitor/index.go b/middleware/monitor/index.go index 525110ef..0978b13c 100644 --- a/middleware/monitor/index.go +++ b/middleware/monitor/index.go @@ -94,20 +94,20 @@ var index = []byte(`
Response Time
-

0ms

+

0ms

- +
Open Connections
-

0

+

0

- +
@@ -126,7 +126,7 @@ var index = []byte(` scales: { yAxes: [{ ticks: { - beginAtZero: false + beginAtZero: true } }], xAxes: [{ @@ -150,20 +150,20 @@ var index = []byte(` const cpuMetric = document.querySelector('#cpuMetric'); const ramMetric = document.querySelector('#ramMetric'); - const timeMetric = document.querySelector('#timeMetric'); - const reqMetric = document.querySelector('#reqMetric'); + const rtimeMetric = document.querySelector('#rtimeMetric'); + const connsMetric = document.querySelector('#connsMetric'); const cpuChartCtx = document.querySelector('#cpuChart').getContext('2d'); const ramChartCtx = document.querySelector('#ramChart').getContext('2d'); - const timeChartCtx = document.querySelector('#timeChart').getContext('2d'); - const reqChartCtx = document.querySelector('#reqChart').getContext('2d'); + const rtimeChartCtx = document.querySelector('#rtimeChart').getContext('2d'); + const connsChartCtx = document.querySelector('#connsChart').getContext('2d'); const cpuChart = createChart(cpuChartCtx); const ramChart = createChart(ramChartCtx); - const timeChart = createChart(timeChartCtx); - const reqChart = createChart(reqChartCtx); + const rtimeChart = createChart(rtimeChartCtx); + const connsChart = createChart(connsChartCtx); - const charts = [cpuChart, ramChart, timeChart, reqChart]; + const charts = [cpuChart, ramChart, rtimeChart, connsChart]; function createChart(ctx) { return new Chart(ctx, { @@ -191,21 +191,21 @@ var index = []byte(` function update({ cpu, ram, - time, - reqs + rtime, + conns }) { - cpu = cpu.toFixed(2); - ram = (ram / 1e6).toFixed(2); + cpu = cpu.toFixed(1); + ram = (ram / 1e6).toFixed(1); cpuMetric.innerHTML = cpu + '%'; ramMetric.innerHTML = ram + ' MB'; - timeMetric.innerHTML = time + 'ms'; - reqMetric.innerHTML = reqs; + rtimeMetric.innerHTML = rtime + 'ms'; + connsMetric.innerHTML = conns; cpuChart.data.datasets[0].data.push(cpu); - ramChart.data.datasets[0].data.push(Math.round(ram)); - timeChart.data.datasets[0].data.push(time); - reqChart.data.datasets[0].data.push(reqs); + ramChart.data.datasets[0].data.push(ram); + rtimeChart.data.datasets[0].data.push(rtime); + connsChart.data.datasets[0].data.push(conns); const timestamp = new Date().getTime(); diff --git a/middleware/monitor/index.html b/middleware/monitor/index.html index 9e1703d8..7ae54963 100644 --- a/middleware/monitor/index.html +++ b/middleware/monitor/index.html @@ -92,20 +92,20 @@
Response Time
-

0ms

+

0ms

- +
Open Connections
-

0

+

0

- +
@@ -124,7 +124,7 @@ scales: { yAxes: [{ ticks: { - beginAtZero: false + beginAtZero: true } }], xAxes: [{ @@ -148,20 +148,20 @@ const cpuMetric = document.querySelector('#cpuMetric'); const ramMetric = document.querySelector('#ramMetric'); - const timeMetric = document.querySelector('#timeMetric'); - const reqMetric = document.querySelector('#reqMetric'); + const rtimeMetric = document.querySelector('#rtimeMetric'); + const connsMetric = document.querySelector('#connsMetric'); const cpuChartCtx = document.querySelector('#cpuChart').getContext('2d'); const ramChartCtx = document.querySelector('#ramChart').getContext('2d'); - const timeChartCtx = document.querySelector('#timeChart').getContext('2d'); - const reqChartCtx = document.querySelector('#reqChart').getContext('2d'); + const rtimeChartCtx = document.querySelector('#rtimeChart').getContext('2d'); + const connsChartCtx = document.querySelector('#connsChart').getContext('2d'); const cpuChart = createChart(cpuChartCtx); const ramChart = createChart(ramChartCtx); - const timeChart = createChart(timeChartCtx); - const reqChart = createChart(reqChartCtx); + const rtimeChart = createChart(rtimeChartCtx); + const connsChart = createChart(connsChartCtx); - const charts = [cpuChart, ramChart, timeChart, reqChart]; + const charts = [cpuChart, ramChart, rtimeChart, connsChart]; function createChart(ctx) { return new Chart(ctx, { @@ -189,21 +189,21 @@ function update({ cpu, ram, - time, - reqs + rtime, + conns }) { - cpu = cpu.toFixed(2); - ram = (ram / 1e6).toFixed(2); + cpu = cpu.toFixed(1); + ram = (ram / 1e6).toFixed(1); cpuMetric.innerHTML = cpu + '%'; ramMetric.innerHTML = ram + ' MB'; - timeMetric.innerHTML = time + 'ms'; - reqMetric.innerHTML = reqs; + rtimeMetric.innerHTML = rtime + 'ms'; + connsMetric.innerHTML = conns; cpuChart.data.datasets[0].data.push(cpu); - ramChart.data.datasets[0].data.push(Math.round(ram)); - timeChart.data.datasets[0].data.push(time); - reqChart.data.datasets[0].data.push(reqs); + ramChart.data.datasets[0].data.push(ram); + rtimeChart.data.datasets[0].data.push(rtime); + connsChart.data.datasets[0].data.push(conns); const timestamp = new Date().getTime(); diff --git a/middleware/monitor/monitor.go b/middleware/monitor/monitor.go index 54a51d69..240eb9a9 100644 --- a/middleware/monitor/monitor.go +++ b/middleware/monitor/monitor.go @@ -10,22 +10,18 @@ import ( ) type stats struct { - CPU float64 `json:"cpu"` - RAM uint64 `json:"ram"` - Load float64 `json:"load"` - Time int64 `json:"time"` - Reqs uint32 `json:"reqs"` + Cpu float64 `json:"cpu"` + Ram uint64 `json:"ram"` + Rtime int64 `json:"rtime"` + Conns uint32 `json:"conns"` } var ( monitorCPU float64 monitorRAM uint64 -) - -var ( - mutex sync.RWMutex - once sync.Once - data = &stats{} + mutex sync.RWMutex + once sync.Once + data = &stats{} ) // New creates a new middleware handler @@ -50,10 +46,10 @@ func New() fiber.Handler { return func(c *fiber.Ctx) error { if c.Get(fiber.HeaderAccept) == fiber.MIMEApplicationJSON { mutex.Lock() - data.CPU = monitorCPU - data.RAM = monitorRAM - data.Time = (time.Now().UnixNano() - c.Context().Time().UnixNano()) / 1000000 - data.Reqs = c.App().Server().GetCurrentConcurrency() + data.Cpu = monitorCPU + data.Ram = monitorRAM + data.Rtime = (time.Now().UnixNano() - c.Context().Time().UnixNano()) / 1000000 + data.Conns = c.App().Server().GetCurrentConcurrency() mutex.Unlock() return c.Status(fiber.StatusOK).JSON(data) }