]> granicus.if.org Git - pdns/commitdiff
dnsdist: Add HELP and TYPE for dnsdist_server_ stats
authorPieter Lexis <pieter.lexis@powerdns.com>
Mon, 22 Oct 2018 14:54:54 +0000 (16:54 +0200)
committerPieter Lexis <pieter.lexis@powerdns.com>
Mon, 22 Oct 2018 14:54:54 +0000 (16:54 +0200)
pdns/dnsdist-web.cc

index 810a4b9433205ce72fd7ce9541df6108051c783f..a50d68f5549d5ab6b792323aad22ec3ab37594a7 100644 (file)
@@ -433,6 +433,21 @@ static void connectionThread(int sock, ComboAddress remote, string password, str
 
         auto states = g_dstates.getLocal();
         const string statesbase = "dnsdist_server_";
+
+        output << "# HELP " << statesbase << "queries "     << "Amount of queries relayed to server"                               << "\n";
+        output << "# TYPE " << statesbase << "queries "     << "counter"                                                           << "\n";
+        output << "# HELP " << statesbase << "drops "       << "Amount of queries not answered by server"                          << "\n";
+        output << "# TYPE " << statesbase << "drops "       << "counter"                                                           << "\n";
+        output << "# HELP " << statesbase << "latency "     << "Server's latency when answering questions in miliseconds"          << "\n";
+        output << "# TYPE " << statesbase << "latency "     << "gauge"                                                             << "\n";
+        output << "# HELP " << statesbase << "senderrors "  << "Total number of OS snd errors while relaying queries"              << "\n";
+        output << "# TYPE " << statesbase << "senderrors "  << "counter"                                                           << "\n";
+        output << "# HELP " << statesbase << "outstanding " << "Current number of queries that are waiting for a backend response" << "\n";
+        output << "# TYPE " << statesbase << "outstanding " << "gauge"                                                             << "\n";
+        output << "# HELP " << statesbase << "order "       << "The order in which this server is picked"                          << "\n";
+        output << "# TYPE " << statesbase << "order "       << "gauge"                                                             << "\n";
+        output << "# HELP " << statesbase << "weight "      << "The weight within the order in which this server is picked"        << "\n";
+        output << "# TYPE " << statesbase << "weight "      << "gauge"                                                             << "\n";
         
         for (const auto& state : *states) {
           string serverName;