Skip to content

Commit

Permalink
etcdserver: add "etcd_server_go_version" metric
Browse files Browse the repository at this point in the history
Currently, one has to look at server logs manually,
to see what Go version was used to build etcd server.

Signed-off-by: Gyuho Lee <[email protected]>
  • Loading branch information
gyuho committed Jul 23, 2018
1 parent 0458c5d commit 643d791
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions etcdserver/metrics.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
package etcdserver

import (
goruntime "runtime"
"time"

"github.com/coreos/etcd/pkg/runtime"
Expand Down Expand Up @@ -104,6 +105,13 @@ var (
Help: "Which version is running. 1 for 'server_version' label with current version.",
},
[]string{"server_version"})
currentGoVersion = prometheus.NewGaugeVec(prometheus.GaugeOpts{
Namespace: "etcd",
Subsystem: "server",
Name: "go_version",
Help: "Which Go version server is running with. 1 for 'server_go_version' label with current version.",
},
[]string{"server_go_version"})
)

func init() {
Expand All @@ -120,10 +128,14 @@ func init() {
prometheus.MustRegister(leaseExpired)
prometheus.MustRegister(quotaBackendBytes)
prometheus.MustRegister(currentVersion)
prometheus.MustRegister(currentGoVersion)

currentVersion.With(prometheus.Labels{
"server_version": version.Version,
}).Set(1)
currentGoVersion.With(prometheus.Labels{
"server_go_version": goruntime.Version(),
}).Set(1)
}

func monitorFileDescriptor(lg *zap.Logger, done <-chan struct{}) {
Expand Down

0 comments on commit 643d791

Please sign in to comment.