summaryrefslogtreecommitdiff
path: root/diskstats/diskstats.go
blob: 190e56c71974c60ffcaf4c9f4706c72796bdc53c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package diskstats

import (
	"fmt"
	"github.com/buetow/gstat/utils"
)

type Diskstats struct {
	debug string
}

func new() (Diskstats, error) {
	var raw string
	d := Diskstats{}

	if err := utils.Slurp(&raw, "/proc/diskstats"); err != nil {
		return d, err
	}

	return d, nil
}

func (self *Diskstats) String() string {
	str := "DISKSTATS=========================\n"

	if self.debug != "" {
		str += fmt.Sprintf("debug: %s\n", self.debug)
	}

	return str
}

func (self *Diskstats) Print() {
	fmt.Println(self)
}

func Gather(diskstats chan<- Diskstats) {
	if d, err := new(); err == nil {
		diskstats <- d
	}
}