Record Metrics after client.run
Resource has released
#2283
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes a bug with the
Client
Metrics
code where we would decrement active requests and record total time before theResource
returned from theclient.run
was actuallyrelease
d. This means our metrics were not accurate.The fix here is to perform both of these actions after the
client.run
has.release
d. To do so, both therecordTotalTime
and incr/decr of the active requests have been turned intoResource
s of their own, that.release
after theclient.run
. This results in the behavior we expect. A test has been added to demonstrate the bug, and to show that it is now fixed.fixes #2282