method map cleaned up because of metric labels

This commit is contained in:
Jakub Matys 2018-03-13 11:35:41 +01:00
parent d7229f8db0
commit b7f07a8ff5

View File

@ -134,52 +134,52 @@ type reqRange struct {
} }
var onMessageHandlers = map[string]func(*SocketIoServer, json.RawMessage) (interface{}, error){ var onMessageHandlers = map[string]func(*SocketIoServer, json.RawMessage) (interface{}, error){
"\"getAddressTxids\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "getAddressTxids": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
addr, rr, err := unmarshalGetAddressRequest(params) addr, rr, err := unmarshalGetAddressRequest(params)
if err == nil { if err == nil {
rv, err = s.getAddressTxids(addr, &rr) rv, err = s.getAddressTxids(addr, &rr)
} }
return return
}, },
"\"getAddressHistory\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "getAddressHistory": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
addr, rr, err := unmarshalGetAddressRequest(params) addr, rr, err := unmarshalGetAddressRequest(params)
if err == nil { if err == nil {
rv, err = s.getAddressHistory(addr, &rr) rv, err = s.getAddressHistory(addr, &rr)
} }
return return
}, },
"\"getBlockHeader\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "getBlockHeader": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
height, hash, err := unmarshalGetBlockHeader(params) height, hash, err := unmarshalGetBlockHeader(params)
if err == nil { if err == nil {
rv, err = s.getBlockHeader(height, hash) rv, err = s.getBlockHeader(height, hash)
} }
return return
}, },
"\"estimateSmartFee\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "estimateSmartFee": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
blocks, conservative, err := unmarshalEstimateSmartFee(params) blocks, conservative, err := unmarshalEstimateSmartFee(params)
if err == nil { if err == nil {
rv, err = s.estimateSmartFee(blocks, conservative) rv, err = s.estimateSmartFee(blocks, conservative)
} }
return return
}, },
"\"getInfo\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "getInfo": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
return s.getInfo() return s.getInfo()
}, },
"\"getDetailedTransaction\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "getDetailedTransaction": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
txid, err := unmarshalStringParameter(params) txid, err := unmarshalStringParameter(params)
if err == nil { if err == nil {
rv, err = s.getDetailedTransaction(txid) rv, err = s.getDetailedTransaction(txid)
} }
return return
}, },
"\"sendTransaction\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "sendTransaction": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
tx, err := unmarshalStringParameter(params) tx, err := unmarshalStringParameter(params)
if err == nil { if err == nil {
rv, err = s.sendTransaction(tx) rv, err = s.sendTransaction(tx)
} }
return return
}, },
"\"getMempoolEntry\"": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) { "getMempoolEntry": func(s *SocketIoServer, params json.RawMessage) (rv interface{}, err error) {
txid, err := unmarshalStringParameter(params) txid, err := unmarshalStringParameter(params)
if err == nil { if err == nil {
rv, err = s.getMempoolEntry(txid) rv, err = s.getMempoolEntry(txid)
@ -197,8 +197,8 @@ type resultError struct {
func (s *SocketIoServer) onMessage(c *gosocketio.Channel, req map[string]json.RawMessage) interface{} { func (s *SocketIoServer) onMessage(c *gosocketio.Channel, req map[string]json.RawMessage) interface{} {
var err error var err error
var rv interface{} var rv interface{}
method := string(req["method"])
t := time.Now() t := time.Now()
method := strings.Trim(string(req["method"]), "\"")
params := req["params"] params := req["params"]
defer s.metrics.RequestDuration.With(common.Labels{"transport": "socketio", "method": method}).Observe(float64(time.Since(t)) / 1e3) // in microseconds defer s.metrics.RequestDuration.With(common.Labels{"transport": "socketio", "method": method}).Observe(float64(time.Since(t)) / 1e3) // in microseconds
f, ok := onMessageHandlers[method] f, ok := onMessageHandlers[method]