Add counters for /v1/{commit,status,version}
This commit is contained in:
@@ -18,6 +18,14 @@ auto requests_counter_family = metric::create_counter(
|
||||
thread_local auto metrics_counter =
|
||||
requests_counter_family.create({{"path", "/metrics"}});
|
||||
|
||||
// API endpoint request counters
|
||||
thread_local auto commit_counter =
|
||||
requests_counter_family.create({{"path", "/v1/commit"}});
|
||||
thread_local auto status_counter =
|
||||
requests_counter_family.create({{"path", "/v1/status"}});
|
||||
thread_local auto version_counter =
|
||||
requests_counter_family.create({{"path", "/v1/version"}});
|
||||
|
||||
// Metric for banned request IDs memory usage
|
||||
auto banned_request_ids_memory_gauge =
|
||||
metric::create_gauge("weaseldb_banned_request_ids_memory_bytes",
|
||||
@@ -221,6 +229,7 @@ HttpRoute HttpHandler::parseRoute(std::string_view method,
|
||||
// Route handlers (basic implementations)
|
||||
void HttpHandler::handleGetVersion(Connection &conn,
|
||||
const HttpConnectionState &state) {
|
||||
version_counter.inc();
|
||||
send_json_response(
|
||||
conn, 200,
|
||||
format(conn.get_arena(), R"({"version":%ld,"leader":""})",
|
||||
@@ -230,6 +239,7 @@ void HttpHandler::handleGetVersion(Connection &conn,
|
||||
|
||||
void HttpHandler::handlePostCommit(Connection &conn,
|
||||
const HttpConnectionState &state) {
|
||||
commit_counter.inc();
|
||||
// Check if streaming parse was successful
|
||||
if (!state.commit_request || !state.parsing_commit) {
|
||||
const char *error = state.commit_parser
|
||||
@@ -298,6 +308,7 @@ void HttpHandler::handleGetSubscribe(Connection &conn,
|
||||
|
||||
void HttpHandler::handleGetStatus(Connection &conn,
|
||||
HttpConnectionState &state) {
|
||||
status_counter.inc();
|
||||
// Status requests are processed through the pipeline
|
||||
// Response will be generated in the sequence stage
|
||||
// This handler extracts request_id from query parameters and prepares for
|
||||
|
||||
Reference in New Issue
Block a user