aboutsummaryrefslogtreecommitdiff
path: root/collector/meminfo.go
diff options
context:
space:
mode:
authorBjoern Rabenstein <bjoern@soundcloud.com>2014-06-26 19:20:36 +0200
committerBjoern Rabenstein <bjoern@soundcloud.com>2014-06-26 19:20:36 +0200
commit0563ecd29d6920289cd44bf865455b487d92b8c6 (patch)
treebad82d86c1f18f181a67214a83c16c58c4165e9c /collector/meminfo.go
parente8ebcede5b669a283ff04f9c0d9af3ede7fe0f6e (diff)
downloadprometheus_node_collector-0563ecd29d6920289cd44bf865455b487d92b8c6.tar.bz2
prometheus_node_collector-0563ecd29d6920289cd44bf865455b487d92b8c6.tar.xz
prometheus_node_collector-0563ecd29d6920289cd44bf865455b487d92b8c6.zip
Migrated everything to new client_golang.
Diffstat (limited to 'collector/meminfo.go')
-rw-r--r--collector/meminfo.go27
1 files changed, 13 insertions, 14 deletions
diff --git a/collector/meminfo.go b/collector/meminfo.go
index 180cfd7..64d4ae0 100644
--- a/collector/meminfo.go
+++ b/collector/meminfo.go
@@ -16,7 +16,8 @@ import (
16) 16)
17 17
18const ( 18const (
19 procMemInfo = "/proc/meminfo" 19 procMemInfo = "/proc/meminfo"
20 memInfoSubsystem = "memory"
20) 21)
21 22
22var ( 23var (
@@ -24,8 +25,7 @@ var (
24) 25)
25 26
26type meminfoCollector struct { 27type meminfoCollector struct {
27 registry prometheus.Registry 28 config Config
28 config Config
29} 29}
30 30
31func init() { 31func init() {
@@ -34,10 +34,9 @@ func init() {
34 34
35// Takes a config struct and prometheus registry and returns a new Collector exposing 35// Takes a config struct and prometheus registry and returns a new Collector exposing
36// memory stats. 36// memory stats.
37func NewMeminfoCollector(config Config, registry prometheus.Registry) (Collector, error) { 37func NewMeminfoCollector(config Config) (Collector, error) {
38 c := meminfoCollector{ 38 c := meminfoCollector{
39 config: config, 39 config: config,
40 registry: registry,
41 } 40 }
42 return &c, nil 41 return &c, nil
43} 42}
@@ -50,16 +49,16 @@ func (c *meminfoCollector) Update() (updates int, err error) {
50 glog.V(1).Infof("Set node_mem: %#v", memInfo) 49 glog.V(1).Infof("Set node_mem: %#v", memInfo)
51 for k, v := range memInfo { 50 for k, v := range memInfo {
52 if _, ok := memInfoMetrics[k]; !ok { 51 if _, ok := memInfoMetrics[k]; !ok {
53 memInfoMetrics[k] = prometheus.NewGauge() 52 gauge := prometheus.NewGauge(prometheus.GaugeOpts{
54 c.registry.Register( 53 Namespace: Namespace,
55 "node_memory_"+k, 54 Subsystem: memInfoSubsystem,
56 k+" from /proc/meminfo", 55 Name: k,
57 prometheus.NilLabels, 56 Help: k + " from /proc/meminfo.",
58 memInfoMetrics[k], 57 })
59 ) 58 memInfoMetrics[k] = prometheus.MustRegisterOrGet(gauge).(prometheus.Gauge)
60 } 59 }
61 updates++ 60 updates++
62 memInfoMetrics[k].Set(nil, v) 61 memInfoMetrics[k].Set(v)
63 } 62 }
64 return updates, err 63 return updates, err
65} 64}