Make RequestMetrics take a raw time rather than a clock

... which is going to make it easier to move around.
This commit is contained in:
Richard van der Hoff 2018-05-09 23:03:11 +01:00
parent 8460e48d06
commit 09b29f9c4a
2 changed files with 6 additions and 6 deletions

View File

@ -100,12 +100,12 @@ response_size = metrics.register_counter(
class RequestMetrics(object):
def start(self, clock, name):
self.start = clock.time_msec()
def start(self, time_msec, name):
self.start = time_msec
self.start_context = LoggingContext.current_context()
self.name = name
def stop(self, clock, request):
def stop(self, time_msec, request):
context = LoggingContext.current_context()
tag = ""
@ -122,7 +122,7 @@ class RequestMetrics(object):
response_count.inc(request.method, self.name, tag)
response_timer.inc_by(
clock.time_msec() - self.start, request.method,
time_msec - self.start, request.method,
self.name, tag
)

View File

@ -87,7 +87,7 @@ def wrap_request_handler(request_handler, include_metrics=False):
# JsonResource (or a subclass), and JsonResource._async_render
# will update it once it picks a servlet.
servlet_name = self.__class__.__name__
request_metrics.start(self.clock, name=servlet_name)
request_metrics.start(self.clock.time_msec(), name=servlet_name)
with request.processing():
try:
@ -138,7 +138,7 @@ def wrap_request_handler(request_handler, include_metrics=False):
finally:
try:
request_metrics.stop(
self.clock, request
self.clock.time_msec(), request
)
except Exception as e:
logger.warn("Failed to stop metrics: %r", e)