Skip to content

Commit 5050452

Browse files
author
Shlomi Noach
authored
Merge pull request #60 from github/raft-is-healthy
adding raft.is_healthy metric
2 parents efc92f6 + a0ba36b commit 5050452

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

go/group/raft.go

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,13 +92,24 @@ func Monitor() {
9292
}
9393
leaderExpVar.(*expvar.String).Set(leaderHint)
9494

95-
if IsLeader() {
95+
state := GetState()
96+
if state == raft.Leader {
9697
leaderHint = fmt.Sprintf("%s (this host)", leaderHint)
9798
metrics.GetOrRegisterGauge("raft.is_leader", nil).Update(1)
9899
} else {
99100
metrics.GetOrRegisterGauge("raft.is_leader", nil).Update(0)
100101
}
101-
log.Debugf("raft leader is %s; state: %s", leaderHint, GetState().String())
102+
switch state {
103+
case raft.Leader, raft.Follower:
104+
{
105+
metrics.GetOrRegisterGauge("raft.is_healthy", nil).Update(1)
106+
}
107+
default:
108+
{
109+
metrics.GetOrRegisterGauge("raft.is_healthy", nil).Update(0)
110+
}
111+
}
112+
log.Debugf("raft leader is %s; state: %s", leaderHint, state.String())
102113
}
103114
}
104115
}

0 commit comments

Comments
 (0)