aboutsummaryrefslogtreecommitdiff
path: root/weed/stats/memory_supported.go
blob: 55ad4c6bbdbfdc1e4af69a151be169cd2abbded7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//go:build linux
// +build linux

package stats

import (
	"syscall"

	"github.com/chrislusf/seaweedfs/weed/pb/volume_server_pb"
)

func fillInMemStatus(mem *volume_server_pb.MemStatus) {
	//system memory usage
	sysInfo := new(syscall.Sysinfo_t)
	err := syscall.Sysinfo(sysInfo)
	if err == nil {
		mem.All = uint64(sysInfo.Totalram) //* uint64(syscall.Getpagesize())
		mem.Free = uint64(sysInfo.Freeram) //* uint64(syscall.Getpagesize())
		mem.Used = mem.All - mem.Free
	}
}