Add ClearMetrics Dbus method.

This commit is contained in:
Simon Kelley
2022-09-16 12:58:41 +01:00
parent 9403664616
commit a5cbe6d112
4 changed files with 34 additions and 3 deletions

View File

@@ -94,6 +94,8 @@ const char* introspection_xml_template =
" <method name=\"GetServerMetrics\">\n"
" <arg name=\"metrics\" direction=\"out\" type=\"a{ss}\"/>\n"
" </method>\n"
" <method name=\"ClearMetrics\">\n"
" </method>\n"
" </interface>\n"
"</node>\n";
@@ -708,13 +710,13 @@ static DBusMessage *dbus_get_server_metrics(DBusMessage* message)
add_dict_int(&dict_array, "failed_queries", serv->failed_queries);
add_dict_int(&dict_array, "nxdomain", serv->nxdomain_replies);
add_dict_int(&dict_array, "retries", serv->retrys);
add_dict_int(&dict_array, "latency", sigma_latency/count_latency;
add_dict_int(&dict_array, "latency", sigma_latency/count_latency);
dbus_message_iter_close_container(&server_array, &dict_array);
}
dbus_message_iter_close_container(&server_iter, &server_array);
return reply;
}
@@ -797,6 +799,10 @@ DBusHandlerResult message_handler(DBusConnection *connection,
{
reply = dbus_get_server_metrics(message);
}
else if (strcmp(method, "ClearMetrics") == 0)
{
clear_metrics();
}
else if (strcmp(method, "ClearCache") == 0)
clear_cache = 1;
else