From b3ee996629f03640a47534cd8757a2abc2ddd0c4 Mon Sep 17 00:00:00 2001 From: Joe Betz Date: Fri, 1 Dec 2017 15:13:21 -0800 Subject: [PATCH] metrics: Add server_version metric --- etcdserver/metrics.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/etcdserver/metrics.go b/etcdserver/metrics.go index 6e95e531af6..a8e5a9da9d0 100644 --- a/etcdserver/metrics.go +++ b/etcdserver/metrics.go @@ -18,6 +18,7 @@ import ( "time" "github.com/coreos/etcd/pkg/runtime" + "github.com/coreos/etcd/version" "github.com/prometheus/client_golang/prometheus" ) @@ -64,6 +65,13 @@ var ( Name: "proposals_failed_total", Help: "The total number of failed proposals seen.", }) + currentVersion = prometheus.NewGaugeVec(prometheus.GaugeOpts{ + Namespace: "etcd", + Subsystem: "server", + Name: "version", + Help: "Which version is running. 1 for 'server_version' label with current version.", + }, + []string{"server_version"}) ) func init() { @@ -74,6 +82,11 @@ func init() { prometheus.MustRegister(proposalsApplied) prometheus.MustRegister(proposalsPending) prometheus.MustRegister(proposalsFailed) + prometheus.MustRegister(currentVersion) + + currentVersion.With(prometheus.Labels{ + "server_version": version.Version, + }).Set(1) } func monitorFileDescriptor(done <-chan struct{}) {