diff --git a/collectors/ipmiMetric.go b/collectors/ipmiMetric.go index bff2506..d28a134 100644 --- a/collectors/ipmiMetric.go +++ b/collectors/ipmiMetric.go @@ -1,31 +1,31 @@ package collectors import ( + "encoding/json" "errors" lp "github.com/influxdata/line-protocol" "log" + "os" + "os/exec" "strconv" "strings" "time" - "os" - "os/exec" - "encoding/json" ) const IPMITOOL_PATH = `/usr/bin/ipmitool` const IPMISENSORS_PATH = `/usr/sbin/ipmi-sensors` type IpmiCollectorConfig struct { - ExcludeDevices []string `json:"exclude_devices"` - IpmitoolPath string `json:"ipmitool_path"` - IpmisensorsPath string `json:"ipmisensors_path"` + ExcludeDevices []string `json:"exclude_devices"` + IpmitoolPath string `json:"ipmitool_path"` + IpmisensorsPath string `json:"ipmisensors_path"` } type IpmiCollector struct { MetricCollector tags map[string]string matches map[string]string - config IpmiCollectorConfig + config IpmiCollectorConfig } func (m *IpmiCollector) Init(config []byte) error { @@ -40,13 +40,13 @@ func (m *IpmiCollector) Init(config []byte) error { _, err1 := os.Stat(m.config.IpmitoolPath) _, err2 := os.Stat(m.config.IpmisensorsPath) if err1 != nil { - m.config.IpmitoolPath = "" + m.config.IpmitoolPath = "" } if err2 != nil { - m.config.IpmisensorsPath = "" + m.config.IpmisensorsPath = "" } if err1 != nil && err2 != nil { - return errors.New("No IPMI reader found") + return errors.New("No IPMI reader found") } m.init = true return nil @@ -66,23 +66,23 @@ func ReadIpmiTool(cmd string, out *[]lp.MutableMetric) { for _, line := range ll { lv := strings.Split(line, "|") if len(lv) < 3 { - continue - } + continue + } v, err := strconv.ParseFloat(strings.Trim(lv[1], " "), 64) if err == nil { name := strings.ToLower(strings.Replace(strings.Trim(lv[0], " "), " ", "_", -1)) unit := strings.Trim(lv[2], " ") if unit == "Volts" { - unit = "V" + unit = "V" } else if unit == "degrees C" { - unit = "C" + unit = "C" } else if unit == "degrees F" { - unit = "F" + unit = "F" } else if unit == "Watts" { - unit = "W" + unit = "W" } - - y, err := lp.New(name, map[string]string{"unit": unit, "type" : "node"}, map[string]interface{}{"value": v}, time.Now()) + + y, err := lp.New(name, map[string]string{"unit": unit, "type": "node"}, map[string]interface{}{"value": v}, time.Now()) if err == nil { *out = append(*out, y) } @@ -105,26 +105,26 @@ func ReadIpmiSensors(cmd string, out *[]lp.MutableMetric) { for _, line := range ll { lv := strings.Split(line, ",") if len(lv) > 3 { - v, err := strconv.ParseFloat(lv[3], 64) - if err == nil { - name := strings.ToLower(strings.Replace(lv[1], " ", "_", -1)) - y, err := lp.New(name, map[string]string{"unit": lv[4], "type" : "node"}, map[string]interface{}{"value": v}, time.Now()) - if err == nil { - *out = append(*out, y) - } - } + v, err := strconv.ParseFloat(lv[3], 64) + if err == nil { + name := strings.ToLower(strings.Replace(lv[1], " ", "_", -1)) + y, err := lp.New(name, map[string]string{"unit": lv[4], "type": "node"}, map[string]interface{}{"value": v}, time.Now()) + if err == nil { + *out = append(*out, y) + } + } } } } func (m *IpmiCollector) Read(interval time.Duration, out *[]lp.MutableMetric) { - if len(m.config.IpmitoolPath) > 0 { - _, err := os.Stat(m.config.IpmitoolPath) - if err == nil { - ReadIpmiTool(m.config.IpmitoolPath, out) + if len(m.config.IpmitoolPath) > 0 { + _, err := os.Stat(m.config.IpmitoolPath) + if err == nil { + ReadIpmiTool(m.config.IpmitoolPath, out) } } else if len(m.config.IpmisensorsPath) > 0 { - _, err := os.Stat(m.config.IpmisensorsPath) + _, err := os.Stat(m.config.IpmisensorsPath) if err == nil { ReadIpmiSensors(m.config.IpmisensorsPath, out) } diff --git a/collectors/netstatMetric.go b/collectors/netstatMetric.go index 65c8807..659b89f 100644 --- a/collectors/netstatMetric.go +++ b/collectors/netstatMetric.go @@ -32,11 +32,11 @@ func (m *NetstatCollector) Init(config []byte) error { 10: "pkts_out", } if len(config) > 0 { - err := json.Unmarshal(config, &m.config) - if err != nil { - log.Print(err.Error()) - return err - } + err := json.Unmarshal(config, &m.config) + if err != nil { + log.Print(err.Error()) + return err + } } _, err := ioutil.ReadFile(string(NETSTATFILE)) if err == nil { diff --git a/collectors/tempMetric.go b/collectors/tempMetric.go index adf0e8c..3665025 100644 --- a/collectors/tempMetric.go +++ b/collectors/tempMetric.go @@ -1,6 +1,7 @@ package collectors import ( + "encoding/json" "fmt" lp "github.com/influxdata/line-protocol" "io/ioutil" @@ -9,15 +10,13 @@ import ( "strconv" "strings" "time" - "encoding/json" ) const HWMON_PATH = `/sys/class/hwmon` - type TempCollectorConfig struct { - ExcludeMetrics []string `json:"exclude_metrics"` - TagOverride map[string]map[string]string `json:"tag_override"` + ExcludeMetrics []string `json:"exclude_metrics"` + TagOverride map[string]map[string]string `json:"tag_override"` } type TempCollector struct { diff --git a/collectors/topprocsMetric.go b/collectors/topprocsMetric.go index fec0910..a1bf989 100644 --- a/collectors/topprocsMetric.go +++ b/collectors/topprocsMetric.go @@ -34,7 +34,7 @@ func (m *TopProcsCollector) Init(config []byte) error { return err } } else { - m.config.num_procs = int(DEFAULT_NUM_PROCS) + m.config.num_procs = int(DEFAULT_NUM_PROCS) } if m.config.num_procs <= 0 || m.config.num_procs > MAX_NUM_PROCS { return errors.New(fmt.Sprintf("num_procs option must be set in 'topprocs' config (range: 1-%d)", MAX_NUM_PROCS)) diff --git a/metric-collector.go b/metric-collector.go index 70a7607..f6c8f5c 100644 --- a/metric-collector.go +++ b/metric-collector.go @@ -31,7 +31,7 @@ var Collectors = map[string]collectors.MetricGetter{ "customcmd": &collectors.CustomCmdCollector{}, "diskstat": &collectors.DiskstatCollector{}, "tempstat": &collectors.TempCollector{}, - "ipmistat" : &collectors.IpmiCollector{}, + "ipmistat": &collectors.IpmiCollector{}, } var Sinks = map[string]sinks.SinkFuncs{ @@ -244,10 +244,10 @@ func main() { if err != nil { log.Print("SKIP ", col.Name(), " (", err.Error(), ")") } else if !col.Initialized() { - log.Print("SKIP ", col.Name(), " (Not initialized)") - } else { - log.Print("Start ", col.Name()) - tmp = append(tmp, c) + log.Print("SKIP ", col.Name(), " (Not initialized)") + } else { + log.Print("Start ", col.Name()) + tmp = append(tmp, c) } } config.Collectors = tmp