@@ -120,6 +120,7 @@ async fn task(
120120
121121 REQUEST . increment ( ) ;
122122 let start = Instant :: now ( ) ;
123+ let mut latency_histograms = vec ! [ & RESPONSE_LATENCY ] ;
123124 let result = match work_item {
124125 ClientWorkItemKind :: Request { request, .. } => match request {
125126 /*
@@ -132,9 +133,15 @@ async fn task(
132133 */
133134 ClientRequest :: Add ( r) => add ( & mut con, & config, r) . await ,
134135 ClientRequest :: Delete ( r) => delete ( & mut con, & config, r) . await ,
135- ClientRequest :: Get ( r) => get ( & mut con, & config, r) . await ,
136+ ClientRequest :: Get ( r) => {
137+ latency_histograms. push ( & KVGET_RESPONSE_LATENCY ) ;
138+ get ( & mut con, & config, r) . await
139+ }
136140 ClientRequest :: Replace ( r) => replace ( & mut con, & config, r) . await ,
137- ClientRequest :: Set ( r) => set ( & mut con, & config, r) . await ,
141+ ClientRequest :: Set ( r) => {
142+ latency_histograms. push ( & KVSET_RESPONSE_LATENCY ) ;
143+ set ( & mut con, & config, r) . await
144+ }
138145
139146 /*
140147 * HASHES (DICTIONARIES)
@@ -202,8 +209,9 @@ async fn task(
202209 Ok ( _) => {
203210 connection = Some ( con) ;
204211 RESPONSE_OK . increment ( ) ;
205-
206- let _ = RESPONSE_LATENCY . increment ( latency_ns) ;
212+ for hist in latency_histograms {
213+ let _ = hist. increment ( latency_ns) ;
214+ }
207215 }
208216 Err ( ResponseError :: Exception ) => {
209217 RESPONSE_EX . increment ( ) ;
0 commit comments