meminfo_numa: fix crash on CentOS 6 kernel

It turns out, on some kernels (notably - CentOS6) there is an empty line
inserted at the beginning of /sys/devices/system/node/node*/meminfo
files.  The leads to node_exporter crash on such kernels.

Fix this by checking for empty string first.

Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
This commit is contained in:
Pavel Borzenkov 2016-02-06 15:32:25 +03:00
parent 3a96e6881b
commit 5a085dcaf5
3 changed files with 6 additions and 1 deletions

View file

@ -1,3 +1,4 @@
Node 0 MemTotal: 134182340 kB
Node 0 MemFree: 53030372 kB
Node 0 MemUsed: 81151968 kB

View file

@ -1,3 +1,4 @@
Node 1 MemTotal: 134217728 kB
Node 1 MemFree: 39634788 kB
Node 1 MemUsed: 94582940 kB

View file

@ -106,7 +106,10 @@ func parseMemInfoNuma(r io.Reader) (map[meminfoKey]float64, error) {
)
for scanner.Scan() {
line := scanner.Text()
line := strings.TrimSpace(scanner.Text())
if line == "" {
continue
}
parts := strings.Fields(string(line))
fv, err := strconv.ParseFloat(parts[3], 64)