|
@@ -162,7 +162,7 @@ class RequestMetrics(object):
|
|
|
with _in_flight_requests_lock:
|
|
|
_in_flight_requests.add(self)
|
|
|
|
|
|
- def stop(self, time_sec, request):
|
|
|
+ def stop(self, time_sec, response_code, sent_bytes):
|
|
|
with _in_flight_requests_lock:
|
|
|
_in_flight_requests.discard(self)
|
|
|
|
|
@@ -179,35 +179,35 @@ class RequestMetrics(object):
|
|
|
)
|
|
|
return
|
|
|
|
|
|
- response_code = str(request.code)
|
|
|
+ response_code = str(response_code)
|
|
|
|
|
|
- outgoing_responses_counter.labels(request.method, response_code).inc()
|
|
|
+ outgoing_responses_counter.labels(self.method, response_code).inc()
|
|
|
|
|
|
- response_count.labels(request.method, self.name, tag).inc()
|
|
|
+ response_count.labels(self.method, self.name, tag).inc()
|
|
|
|
|
|
- response_timer.labels(request.method, self.name, tag, response_code).observe(
|
|
|
+ response_timer.labels(self.method, self.name, tag, response_code).observe(
|
|
|
time_sec - self.start
|
|
|
)
|
|
|
|
|
|
resource_usage = context.get_resource_usage()
|
|
|
|
|
|
- response_ru_utime.labels(request.method, self.name, tag).inc(
|
|
|
+ response_ru_utime.labels(self.method, self.name, tag).inc(
|
|
|
resource_usage.ru_utime,
|
|
|
)
|
|
|
- response_ru_stime.labels(request.method, self.name, tag).inc(
|
|
|
+ response_ru_stime.labels(self.method, self.name, tag).inc(
|
|
|
resource_usage.ru_stime,
|
|
|
)
|
|
|
- response_db_txn_count.labels(request.method, self.name, tag).inc(
|
|
|
+ response_db_txn_count.labels(self.method, self.name, tag).inc(
|
|
|
resource_usage.db_txn_count
|
|
|
)
|
|
|
- response_db_txn_duration.labels(request.method, self.name, tag).inc(
|
|
|
+ response_db_txn_duration.labels(self.method, self.name, tag).inc(
|
|
|
resource_usage.db_txn_duration_sec
|
|
|
)
|
|
|
- response_db_sched_duration.labels(request.method, self.name, tag).inc(
|
|
|
+ response_db_sched_duration.labels(self.method, self.name, tag).inc(
|
|
|
resource_usage.db_sched_duration_sec
|
|
|
)
|
|
|
|
|
|
- response_size.labels(request.method, self.name, tag).inc(request.sentLength)
|
|
|
+ response_size.labels(self.method, self.name, tag).inc(sent_bytes)
|
|
|
|
|
|
# We always call this at the end to ensure that we update the metrics
|
|
|
# regardless of whether a call to /metrics while the request was in
|