aboutsummaryrefslogtreecommitdiff
path: root/weed/stats/memory_supported.go
blob: f7a577813d6ecb02357b3ef41dbf58017af1471a (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/seaweedfs/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
	}
}