aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2021-09-30 11:53:39 +0200
committerStefan Boberg <[email protected]>2021-09-30 11:53:39 +0200
commit6400d31d561615ceb4e363d6339c2a59a025ad53 (patch)
tree889c6c44fbf4d3e509f3f563566e9bb70f0fa011
parentcompactbinary: Quick fix for presentation of doubles in JSON conversion (diff)
downloadzen-6400d31d561615ceb4e363d6339c2a59a025ad53.tar.xz
zen-6400d31d561615ceb4e363d6339c2a59a025ad53.zip
structured cache: added request meter and stats reporting
-rw-r--r--zenserver/cache/structuredcache.cpp7
-rw-r--r--zenserver/cache/structuredcache.h1
2 files changed, 7 insertions, 1 deletions
diff --git a/zenserver/cache/structuredcache.cpp b/zenserver/cache/structuredcache.cpp
index eee3f8279..c3b60ea8d 100644
--- a/zenserver/cache/structuredcache.cpp
+++ b/zenserver/cache/structuredcache.cpp
@@ -194,6 +194,8 @@ HttpStructuredCacheService::HandleRequest(HttpServerRequest& Request)
{
CacheRef Ref;
+ m_HttpRequestMeter.Mark(1);
+
Stopwatch Timer;
auto _ = MakeGuard([&] { m_HttpRequests.Update(Timer.GetElapsedTicks()); });
@@ -843,7 +845,10 @@ void
HttpStructuredCacheService::HandleStatusRequest(zen::HttpServerRequest& Request)
{
CbObjectWriter Cbo;
- Cbo << "ok" << true << "http_requests" << m_HttpRequests.Count();
+ Cbo << "ok" << true;
+
+ EmitSnapshot("requests", m_HttpRequests, Cbo);
+ EmitSnapshot("request_rate", m_HttpRequestMeter, Cbo);
Request.WriteResponse(HttpResponseCode::OK, Cbo.Save());
}
diff --git a/zenserver/cache/structuredcache.h b/zenserver/cache/structuredcache.h
index 5dfff08ad..f68efa3fd 100644
--- a/zenserver/cache/structuredcache.h
+++ b/zenserver/cache/structuredcache.h
@@ -90,6 +90,7 @@ private:
uint64_t m_LastScrubTime = 0;
metrics::Histogram m_HttpRequests;
+ metrics::Meter m_HttpRequestMeter;
};
} // namespace zen