-
Notifications
You must be signed in to change notification settings - Fork 138
/
stats.go
50 lines (44 loc) · 1.3 KB
/
stats.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package types
// Stats provides zipper-related statistics
type Stats struct {
Timeouts int64
FindRequests int64
FindErrors int64
FindTimeouts int64
RenderRequests int64
RenderErrors int64
RenderTimeouts int64
InfoRequests int64
InfoErrors int64
InfoTimeouts int64
SearchRequests int64
SearchCacheHits int64
SearchCacheMisses int64
ZipperRequests int64
TotalMetricsCount int64
MemoryUsage int64
CacheMisses int64
CacheHits int64
Servers []string
FailedServers []string
}
func (s *Stats) Merge(stats *Stats) {
s.Timeouts += stats.Timeouts
s.FindRequests += stats.FindRequests
s.FindTimeouts += stats.FindTimeouts
s.FindErrors += stats.FindErrors
s.RenderRequests += stats.RenderRequests
s.RenderTimeouts += stats.RenderTimeouts
s.RenderErrors += stats.RenderErrors
s.InfoRequests += stats.InfoRequests
s.InfoTimeouts += stats.InfoTimeouts
s.InfoErrors += stats.InfoErrors
s.SearchRequests += stats.SearchRequests
s.SearchCacheHits += stats.SearchCacheHits
s.SearchCacheMisses += stats.SearchCacheMisses
s.MemoryUsage += stats.MemoryUsage
s.CacheMisses += stats.CacheMisses
s.CacheHits += stats.CacheHits
s.Servers = append(s.Servers, stats.Servers...)
s.FailedServers = append(s.FailedServers, stats.FailedServers...)
}