From de41ceddc49e84ba821599b538d29f2148266d39 Mon Sep 17 00:00:00 2001 From: Jay Date: Wed, 10 Oct 2018 00:35:28 +0800 Subject: [PATCH] add print mem usage --- main.go | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/main.go b/main.go index 1cb4fbb..897f5eb 100644 --- a/main.go +++ b/main.go @@ -4,11 +4,14 @@ import ( "encoding/gob" "errors" "flag" + "fmt" "log" "os" "path" + "runtime" "strconv" "strings" + "time" "git.trj.tw/golang/mtfosbot/module/apis/twitch" "git.trj.tw/golang/mtfosbot/module/cmd" @@ -78,9 +81,30 @@ func main() { log.Fatal(errors.New("log image root not exists")) } + go func() { + for { + PrintMemUsage() + time.Sleep(time.Second * 10) + } + }() + server.Run(strings.Join([]string{":", strconv.Itoa(config.GetConf().Port)}, "")) } +// PrintMemUsage - +func PrintMemUsage() { + var m runtime.MemStats + runtime.ReadMemStats(&m) + // For info on each, see: https://golang.org/pkg/runtime/#MemStats + fmt.Printf("Alloc = %v MiB", bToMb(m.Alloc)) + fmt.Printf("\tTotalAlloc = %v MiB", bToMb(m.TotalAlloc)) + fmt.Printf("\tSys = %v MiB", bToMb(m.Sys)) + fmt.Printf("\tNumGC = %v\n", m.NumGC) +} +func bToMb(b uint64) uint64 { + return b / 1024 / 1024 +} + func registerTypes() { gob.Register(model.Account{}) gob.Register(model.Commands{})