diff --git a/package.json b/package.json index afdb7ce..75a6acf 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cosmos-server", - "version": "0.12.0-unstable3", + "version": "0.12.0-unstable4", "description": "", "main": "test-server.js", "bugs": { diff --git a/src/metrics/system.go b/src/metrics/system.go index 43a74e1..89dbb05 100644 --- a/src/metrics/system.go +++ b/src/metrics/system.go @@ -2,7 +2,9 @@ package metrics import ( "strconv" + "strings" "time" + "os" "github.com/shirou/gopsutil/cpu" "github.com/shirou/gopsutil/mem" @@ -122,15 +124,23 @@ func GetSystemMetrics() { } for _, part := range parts { - u, err := disk.Usage(part.Mountpoint) - if err != nil { - utils.Error("Metrics - Error fetching Disk usage for " + part.Mountpoint + " : ", err) - } else { - PushSetMetric("system.disk." + part.Mountpoint, int(u.Used), DataDef{ - Max: u.Total, - Period: time.Second * 120, - Label: "Disk " + part.Mountpoint, - }) + if strings.HasPrefix(part.Mountpoint, "/dev") || strings.HasPrefix(part.Mountpoint, "/mnt") { + realMount := part.Mountpoint + + if os.Getenv("HOSTANME") != "" { + realMount = "/mnt/host" + part.Mountpoint + } + + u, err := disk.Usage(realMount) + if err != nil { + utils.Error("Metrics - Error fetching Disk usage for " + realMount + " : ", err) + } else { + PushSetMetric("system.disk." + part.Mountpoint, int(u.Used), DataDef{ + Max: u.Total, + Period: time.Second * 120, + Label: "Disk " + part.Mountpoint, + }) + } } - } + } } \ No newline at end of file