1
0
Fork 0

Count joins via metrics

master
Philip O'Toole 10 years ago
parent 0246fbbefb
commit 4620018c62

@ -41,6 +41,8 @@ type QueryResponse struct {
type ServerMetrics struct {
registry metrics.Registry
joinSuccess metrics.Counter
joinFail metrics.Counter
queryReceived metrics.Counter
querySuccess metrics.Counter
queryFail metrics.Counter
@ -92,6 +94,8 @@ func isTransaction(req *http.Request) (bool, error) {
func NewServerMetrics() *ServerMetrics {
m := &ServerMetrics{
registry: metrics.NewRegistry(),
joinSuccess: metrics.NewCounter(),
joinFail: metrics.NewCounter(),
queryReceived: metrics.NewCounter(),
querySuccess: metrics.NewCounter(),
queryFail: metrics.NewCounter(),
@ -101,6 +105,8 @@ func NewServerMetrics() *ServerMetrics {
executeFail: metrics.NewCounter(),
}
m.registry.Register("join.succes", m.joinSuccess)
m.registry.Register("join.fail", m.joinFail)
m.registry.Register("query.Received", m.queryReceived)
m.registry.Register("query.success", m.querySuccess)
m.registry.Register("query.fail", m.queryFail)
@ -240,12 +246,15 @@ func (s *Server) joinHandler(w http.ResponseWriter, req *http.Request) {
if err := json.NewDecoder(req.Body).Decode(&command); err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
s.metrics.joinFail.Inc(1)
return
}
if _, err := s.raftServer.Do(command); err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
s.metrics.joinFail.Inc(1)
return
}
s.metrics.joinSuccess.Inc(1)
}
func (s *Server) readHandler(w http.ResponseWriter, req *http.Request) {

Loading…
Cancel
Save