remove cgo dependency
by hardcoding `USER_HZ` (aka. `_SC_CLK_TCK`) to 100, which it is for all platforms Go supports. See prometheus/node_exporter#52 for discussion around this too. Closes prometheus/node_exporter#52.pull/68/head
parent
b4f40ab13f
commit
2ee8470004
|
@ -11,11 +11,9 @@ import (
|
|||
"github.com/prometheus/client_golang/prometheus"
|
||||
)
|
||||
|
||||
// #include <unistd.h>
|
||||
import "C"
|
||||
|
||||
const (
|
||||
procStat = "/proc/stat"
|
||||
userHz = 100
|
||||
)
|
||||
|
||||
type statCollector struct {
|
||||
|
@ -112,7 +110,7 @@ func (c *statCollector) Update(ch chan<- prometheus.Metric) (err error) {
|
|||
return err
|
||||
}
|
||||
// Convert from ticks to seconds
|
||||
value /= float64(C.sysconf(C._SC_CLK_TCK))
|
||||
value /= userHz
|
||||
c.cpu.With(prometheus.Labels{"cpu": parts[0], "mode": cpuFields[i]}).Set(value)
|
||||
}
|
||||
case parts[0] == "intr":
|
||||
|
|
Loading…
Reference in New Issue