@@ -7,52 +7,84 @@ public static class RedisStats
7
7
{
8
8
public static long TotalFailovers
9
9
{
10
- get { return Interlocked . CompareExchange ( ref RedisState . TotalFailovers , 0 , 0 ) ; }
10
+ get { return Interlocked . Read ( ref RedisState . TotalFailovers ) ; }
11
11
}
12
12
13
13
public static long TotalDeactivatedClients
14
14
{
15
- get { return Interlocked . CompareExchange ( ref RedisState . TotalDeactivatedClients , 0 , 0 ) ; }
15
+ get { return Interlocked . Read ( ref RedisState . TotalDeactivatedClients ) ; }
16
16
}
17
17
18
18
public static long TotalFailedSentinelWorkers
19
19
{
20
- get { return Interlocked . CompareExchange ( ref RedisState . TotalFailedSentinelWorkers , 0 , 0 ) ; }
20
+ get { return Interlocked . Read ( ref RedisState . TotalFailedSentinelWorkers ) ; }
21
21
}
22
22
23
23
public static long TotalForcedMasterFailovers
24
24
{
25
- get { return Interlocked . CompareExchange ( ref RedisState . TotalForcedMasterFailovers , 0 , 0 ) ; }
25
+ get { return Interlocked . Read ( ref RedisState . TotalForcedMasterFailovers ) ; }
26
26
}
27
27
28
28
public static long TotalInvalidMasters
29
29
{
30
- get { return Interlocked . CompareExchange ( ref RedisState . TotalInvalidMasters , 0 , 0 ) ; }
30
+ get { return Interlocked . Read ( ref RedisState . TotalInvalidMasters ) ; }
31
31
}
32
32
33
33
public static long TotalNoMastersFound
34
34
{
35
- get { return Interlocked . CompareExchange ( ref RedisState . TotalNoMastersFound , 0 , 0 ) ; }
35
+ get { return Interlocked . Read ( ref RedisState . TotalNoMastersFound ) ; }
36
36
}
37
37
38
38
public static long TotalClientsCreated
39
39
{
40
- get { return Interlocked . CompareExchange ( ref RedisState . TotalClientsCreated , 0 , 0 ) ; }
40
+ get { return Interlocked . Read ( ref RedisState . TotalClientsCreated ) ; }
41
41
}
42
42
43
43
public static long TotalClientsCreatedOutsidePool
44
44
{
45
- get { return Interlocked . CompareExchange ( ref RedisState . TotalClientsCreatedOutsidePool , 0 , 0 ) ; }
45
+ get { return Interlocked . Read ( ref RedisState . TotalClientsCreatedOutsidePool ) ; }
46
46
}
47
47
48
48
public static long TotalSubjectiveServersDown
49
49
{
50
- get { return Interlocked . CompareExchange ( ref RedisState . TotalSubjectiveServersDown , 0 , 0 ) ; }
50
+ get { return Interlocked . Read ( ref RedisState . TotalSubjectiveServersDown ) ; }
51
51
}
52
52
53
53
public static long TotalObjectiveServersDown
54
54
{
55
- get { return Interlocked . CompareExchange ( ref RedisState . TotalObjectiveServersDown , 0 , 0 ) ; }
55
+ get { return Interlocked . Read ( ref RedisState . TotalObjectiveServersDown ) ; }
56
+ }
57
+
58
+ public static long TotalRetryCount
59
+ {
60
+ get { return Interlocked . Read ( ref RedisState . TotalRetryCount ) ; }
61
+ }
62
+
63
+ public static long TotalRetrySuccess
64
+ {
65
+ get { return Interlocked . Read ( ref RedisState . TotalRetrySuccess ) ; }
66
+ }
67
+
68
+ public static long TotalRetryTimedout
69
+ {
70
+ get { return Interlocked . Read ( ref RedisState . TotalRetryTimedout ) ; }
71
+ }
72
+
73
+ public static void Reset ( )
74
+ {
75
+ Interlocked . Exchange ( ref RedisState . TotalFailovers , 0 ) ;
76
+ Interlocked . Exchange ( ref RedisState . TotalDeactivatedClients , 0 ) ;
77
+ Interlocked . Exchange ( ref RedisState . TotalFailedSentinelWorkers , 0 ) ;
78
+ Interlocked . Exchange ( ref RedisState . TotalForcedMasterFailovers , 0 ) ;
79
+ Interlocked . Exchange ( ref RedisState . TotalInvalidMasters , 0 ) ;
80
+ Interlocked . Exchange ( ref RedisState . TotalNoMastersFound , 0 ) ;
81
+ Interlocked . Exchange ( ref RedisState . TotalClientsCreated , 0 ) ;
82
+ Interlocked . Exchange ( ref RedisState . TotalClientsCreatedOutsidePool , 0 ) ;
83
+ Interlocked . Exchange ( ref RedisState . TotalSubjectiveServersDown , 0 ) ;
84
+ Interlocked . Exchange ( ref RedisState . TotalObjectiveServersDown , 0 ) ;
85
+ Interlocked . Exchange ( ref RedisState . TotalRetryCount , 0 ) ;
86
+ Interlocked . Exchange ( ref RedisState . TotalRetrySuccess , 0 ) ;
87
+ Interlocked . Exchange ( ref RedisState . TotalRetryTimedout , 0 ) ;
56
88
}
57
89
58
90
public static Dictionary < string , long > ToDictionary ( )
@@ -70,6 +102,9 @@ public static Dictionary<string, long> ToDictionary()
70
102
{ "TotalSubjectiveServersDown" , TotalSubjectiveServersDown } ,
71
103
{ "TotalObjectiveServersDown" , TotalObjectiveServersDown } ,
72
104
{ "TotalPendingDeactivatedClients" , RedisState . DeactivatedClients . Count } ,
105
+ { "TotalRetryCount" , TotalRetryCount } ,
106
+ { "TotalRetrySuccess" , TotalRetrySuccess } ,
107
+ { "TotalRetryTimedout" , TotalRetryTimedout } ,
73
108
} ;
74
109
}
75
110
}
0 commit comments