Skip to content
Snippets Groups Projects
Commit bd0fa9e2 authored by Mark Haines's avatar Mark Haines
Browse files

Merge pull request #421 from matrix-org/markjh/resource_metrics

Add metrics to track the cpu on the main thread consumed by each type…
parents 3c85a317 99e1d677
No related branches found
No related tags found
No related merge requests found
...@@ -53,6 +53,14 @@ response_timer = metrics.register_distribution( ...@@ -53,6 +53,14 @@ response_timer = metrics.register_distribution(
labels=["method", "servlet"] labels=["method", "servlet"]
) )
response_ru_utime = metrics.register_distribution(
"response_ru_utime", labels=["method", "servlet"]
)
response_ru_stime = metrics.register_distribution(
"response_ru_stime", labels=["method", "servlet"]
)
_next_request_id = 0 _next_request_id = 0
...@@ -221,6 +229,15 @@ class JsonResource(HttpServer, resource.Resource): ...@@ -221,6 +229,15 @@ class JsonResource(HttpServer, resource.Resource):
self.clock.time_msec() - start, request.method, servlet_classname self.clock.time_msec() - start, request.method, servlet_classname
) )
try:
context = LoggingContext.current_context()
ru_utime, ru_stime = context.get_resource_usage()
response_ru_utime.inc_by(ru_utime, request.method, servlet_classname)
response_ru_stime.inc_by(ru_stime, request.method, servlet_classname)
except:
pass
return return
# Huh. No one wanted to handle that? Fiiiiiine. Send 400. # Huh. No one wanted to handle that? Fiiiiiine. Send 400.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment