From e00c3f1823a4ff80daf8290e2dfec4474e7f9173 Mon Sep 17 00:00:00 2001 From: MHSanaei Date: Wed, 9 Aug 2023 00:37:05 +0330 Subject: add panel usage to main page --- web/service/server.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'web/service/server.go') diff --git a/web/service/server.go b/web/service/server.go index 6319cab7..a56be10d 100644 --- a/web/service/server.go +++ b/web/service/server.go @@ -77,6 +77,11 @@ type Status struct { IPv4 string `json:"ipv4"` IPv6 string `json:"ipv6"` } `json:"publicIP"` + AppStats struct { + Threads uint32 `json:"threads"` + Mem uint64 `json:"mem"` + Uptime uint64 `json:"uptime"` + } `json:"appStats"` } type Release struct { @@ -220,6 +225,16 @@ func (s *ServerService) GetStatus(lastStatus *Status) *Status { status.Xray.ErrorMsg = s.xrayService.GetXrayResult() } status.Xray.Version = s.xrayService.GetXrayVersion() + var rtm runtime.MemStats + runtime.ReadMemStats(&rtm) + + status.AppStats.Mem = rtm.Sys + status.AppStats.Threads = uint32(runtime.NumGoroutine()) + if p.IsRunning() { + status.AppStats.Uptime = p.GetUptime() + } else { + status.AppStats.Uptime = 0 + } return status } -- cgit v1.2.3