moira
1package redis
2
3import "github.com/garyburd/redigo/redis"
4
5// UpdateMetricsHeartbeat increments redis counter
6func (connector *DbConnector) UpdateMetricsHeartbeat() error {
7c := connector.pool.Get()
8defer c.Close()
9err := c.Send("INCR", selfStateMetricsHeartbeatKey)
10return err
11}
12
13// GetMetricsUpdatesCount return metrics count received by Moira-Filter
14func (connector *DbConnector) GetMetricsUpdatesCount() (int64, error) {
15c := connector.pool.Get()
16defer c.Close()
17ts, err := redis.Int64(c.Do("GET", selfStateMetricsHeartbeatKey))
18if err == redis.ErrNil {
19return 0, nil
20}
21return ts, err
22}
23
24// GetChecksUpdatesCount return checks count by Moira-Checker
25func (connector *DbConnector) GetChecksUpdatesCount() (int64, error) {
26c := connector.pool.Get()
27defer c.Close()
28ts, err := redis.Int64(c.Do("GET", selfStateChecksCounterKey))
29if err == redis.ErrNil {
30return 0, nil
31}
32return ts, err
33}
34
35var selfStateMetricsHeartbeatKey = "moira-selfstate:metrics-heartbeat"
36var selfStateChecksCounterKey = "moira-selfstate:checks-counter"
37