seaweedfs/weed/stats/memory.go

21 lines
419 B
Go

package stats
import (
"runtime"
"github.com/seaweedfs/seaweedfs/weed/pb/volume_server_pb"
)
func MemStat() *volume_server_pb.MemStatus {
mem := &volume_server_pb.MemStatus{}
mem.Goroutines = int32(runtime.NumGoroutine())
memStat := new(runtime.MemStats)
runtime.ReadMemStats(memStat)
mem.Self = memStat.Alloc
mem.Heap = memStat.HeapAlloc
mem.Stack = memStat.StackInuse
fillInMemStatus(mem)
return mem
}