mirror of https://github.com/tidwall/tile38.git
Added geofence delivery counter
This commit is contained in:
parent
5ae1a76450
commit
762607dc0a
|
@ -139,6 +139,7 @@ func (c *Server) cmdSetHook(msg *Message, chanCmd bool) (
|
||||||
Metas: metas,
|
Metas: metas,
|
||||||
channel: chanCmd,
|
channel: chanCmd,
|
||||||
cond: sync.NewCond(&sync.Mutex{}),
|
cond: sync.NewCond(&sync.Mutex{}),
|
||||||
|
counter: &c.statsTotalMsgsSent,
|
||||||
}
|
}
|
||||||
if expiresSet {
|
if expiresSet {
|
||||||
hook.expires =
|
hook.expires =
|
||||||
|
@ -460,6 +461,7 @@ type Hook struct {
|
||||||
query string
|
query string
|
||||||
epm *endpoint.Manager
|
epm *endpoint.Manager
|
||||||
expires time.Time
|
expires time.Time
|
||||||
|
counter *aint // counter that grows when a message was sent
|
||||||
}
|
}
|
||||||
|
|
||||||
// Expires returns when the hook expires. Required by the expire.Item interface.
|
// Expires returns when the hook expires. Required by the expire.Item interface.
|
||||||
|
@ -648,6 +650,7 @@ func (h *Hook) proc() (ok bool) {
|
||||||
}
|
}
|
||||||
log.Debugf("Endpoint send ok: %v: %v: %v", idx, endpoint, err)
|
log.Debugf("Endpoint send ok: %v: %v: %v", idx, endpoint, err)
|
||||||
sent = true
|
sent = true
|
||||||
|
h.counter.add(1)
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
if !sent {
|
if !sent {
|
||||||
|
|
|
@ -193,7 +193,9 @@ func (server *Server) goLive(
|
||||||
return nil // nil return is fine here
|
return nil // nil return is fine here
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
server.statsTotalMsgsSent.add(len(msgs))
|
||||||
lb.cond.L.Lock()
|
lb.cond.L.Lock()
|
||||||
|
|
||||||
}
|
}
|
||||||
lb.cond.Wait()
|
lb.cond.Wait()
|
||||||
lb.cond.L.Unlock()
|
lb.cond.L.Unlock()
|
||||||
|
|
|
@ -280,6 +280,7 @@ func (c *Server) liveSubscription(
|
||||||
write(b)
|
write(b)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
c.statsTotalMsgsSent.add(1)
|
||||||
}
|
}
|
||||||
|
|
||||||
m := [2]map[string]bool{
|
m := [2]map[string]bool{
|
||||||
|
|
|
@ -80,6 +80,7 @@ type Server struct {
|
||||||
followc aint // counter increases when follow property changes
|
followc aint // counter increases when follow property changes
|
||||||
statsTotalConns aint // counter for total connections
|
statsTotalConns aint // counter for total connections
|
||||||
statsTotalCommands aint // counter for total commands
|
statsTotalCommands aint // counter for total commands
|
||||||
|
statsTotalMsgsSent aint // counter for total sent webhook messages
|
||||||
statsExpired aint // item expiration counter
|
statsExpired aint // item expiration counter
|
||||||
lastShrinkDuration aint
|
lastShrinkDuration aint
|
||||||
stopServer abool
|
stopServer abool
|
||||||
|
|
|
@ -267,6 +267,8 @@ func (c *Server) extStats(m map[string]interface{}) {
|
||||||
m["tile38_total_connections_received"] = c.statsTotalConns.get()
|
m["tile38_total_connections_received"] = c.statsTotalConns.get()
|
||||||
// Number of commands processed by the server
|
// Number of commands processed by the server
|
||||||
m["tile38_total_commands_processed"] = c.statsTotalCommands.get()
|
m["tile38_total_commands_processed"] = c.statsTotalCommands.get()
|
||||||
|
// Number of webhook messages sent by server
|
||||||
|
m["tile38_total_messages_sent"] = c.statsTotalMsgsSent.get()
|
||||||
// Number of key expiration events
|
// Number of key expiration events
|
||||||
m["tile38_expired_keys"] = c.statsExpired.get()
|
m["tile38_expired_keys"] = c.statsExpired.get()
|
||||||
// Number of connected slaves
|
// Number of connected slaves
|
||||||
|
@ -350,6 +352,7 @@ func (c *Server) writeInfoPersistence(w *bytes.Buffer) {
|
||||||
func (c *Server) writeInfoStats(w *bytes.Buffer) {
|
func (c *Server) writeInfoStats(w *bytes.Buffer) {
|
||||||
fmt.Fprintf(w, "total_connections_received:%d\r\n", c.statsTotalConns.get()) // Total number of connections accepted by the server
|
fmt.Fprintf(w, "total_connections_received:%d\r\n", c.statsTotalConns.get()) // Total number of connections accepted by the server
|
||||||
fmt.Fprintf(w, "total_commands_processed:%d\r\n", c.statsTotalCommands.get()) // Total number of commands processed by the server
|
fmt.Fprintf(w, "total_commands_processed:%d\r\n", c.statsTotalCommands.get()) // Total number of commands processed by the server
|
||||||
|
fmt.Fprintf(w, "total_messages_sent:%d\r\n", c.statsTotalMsgsSent.get()) // Total number of commands processed by the server
|
||||||
fmt.Fprintf(w, "expired_keys:%d\r\n", c.statsExpired.get()) // Total number of key expiration events
|
fmt.Fprintf(w, "expired_keys:%d\r\n", c.statsExpired.get()) // Total number of key expiration events
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue