add print mem usage

This commit is contained in:
Jay 2018-10-10 00:35:28 +08:00
parent bacfa52696
commit de41ceddc4

24
main.go
View File

@ -4,11 +4,14 @@ import (
"encoding/gob" "encoding/gob"
"errors" "errors"
"flag" "flag"
"fmt"
"log" "log"
"os" "os"
"path" "path"
"runtime"
"strconv" "strconv"
"strings" "strings"
"time"
"git.trj.tw/golang/mtfosbot/module/apis/twitch" "git.trj.tw/golang/mtfosbot/module/apis/twitch"
"git.trj.tw/golang/mtfosbot/module/cmd" "git.trj.tw/golang/mtfosbot/module/cmd"
@ -78,9 +81,30 @@ func main() {
log.Fatal(errors.New("log image root not exists")) 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)}, "")) 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() { func registerTypes() {
gob.Register(model.Account{}) gob.Register(model.Account{})
gob.Register(model.Commands{}) gob.Register(model.Commands{})