From 216be8b79bd6ee967dfe4ef35c3c9438e977217a Mon Sep 17 00:00:00 2001 From: Gyuho Lee Date: Wed, 29 Aug 2018 14:49:01 -0700 Subject: [PATCH] etcdserver: add "etcd_server_id" Signed-off-by: Gyuho Lee --- etcdserver/metrics.go | 8 ++++++++ etcdserver/server.go | 3 +++ 2 files changed, 11 insertions(+) diff --git a/etcdserver/metrics.go b/etcdserver/metrics.go index baf9b6085..550f8ba7a 100644 --- a/etcdserver/metrics.go +++ b/etcdserver/metrics.go @@ -104,6 +104,13 @@ var ( Help: "Which Go version server is running with. 1 for 'server_go_version' label with current version.", }, []string{"server_go_version"}) + serverID = prometheus.NewGaugeVec(prometheus.GaugeOpts{ + Namespace: "etcd", + Subsystem: "server", + Name: "id", + Help: "Server or member ID in hexadecimal format. 1 for 'server_id' label with current ID.", + }, + []string{"server_id"}) ) func init() { @@ -120,6 +127,7 @@ func init() { prometheus.MustRegister(quotaBackendBytes) prometheus.MustRegister(currentVersion) prometheus.MustRegister(currentGoVersion) + prometheus.MustRegister(serverID) currentVersion.With(prometheus.Labels{ "server_version": version.Version, diff --git a/etcdserver/server.go b/etcdserver/server.go index 7167a76db..da942d49a 100644 --- a/etcdserver/server.go +++ b/etcdserver/server.go @@ -56,8 +56,10 @@ import ( "github.com/coreos/etcd/store" "github.com/coreos/etcd/version" "github.com/coreos/etcd/wal" + "github.com/coreos/go-semver/semver" "github.com/coreos/pkg/capnslog" + "github.com/prometheus/client_golang/prometheus" "golang.org/x/net/context" ) @@ -441,6 +443,7 @@ func NewServer(cfg *ServerConfig) (srv *EtcdServer, err error) { reqIDGen: idutil.NewGenerator(uint16(id), time.Now()), forceVersionC: make(chan struct{}), } + serverID.With(prometheus.Labels{"server_id": id.String()}).Set(1) srv.applyV2 = &applierV2store{store: srv.store, cluster: srv.cluster}