From: Remi Gacogne Date: Fri, 4 Mar 2016 17:40:00 +0000 (+0100) Subject: dnsdist: Add frontends to API X-Git-Tag: rec-4.0.0-alpha2~14^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F3510%2Fhead;p=thirdparty%2Fpdns.git dnsdist: Add frontends to API --- diff --git a/pdns/dnsdist-web.cc b/pdns/dnsdist-web.cc index 1305e75d70..e2e47806fe 100644 --- a/pdns/dnsdist-web.cc +++ b/pdns/dnsdist-web.cc @@ -195,6 +195,21 @@ static void connectionThread(int sock, ComboAddress remote, string password, str servers.push_back(server); } + Json::array frontends; + num=0; + for(const auto& front : g_frontends) { + if (front->udpFD == -1 && front->tcpFD == -1) + continue; + Json::object frontend{ + { "id", num++ }, + { "address", front->local.toStringWithPort() }, + { "udp", front->udpFD >= 0 }, + { "tcp", front->tcpFD >= 0 }, + { "queries", (double) front->queries.load() } + }; + frontends.push_back(frontend); + } + Json::array rules; auto localRules = g_rulactions.getCopy(); num=0; @@ -228,6 +243,7 @@ static void connectionThread(int sock, ComboAddress remote, string password, str { "daemon_type", "dnsdist" }, { "version", VERSION}, { "servers", servers}, + { "frontends", frontends }, { "rules", rules}, { "acl", acl}, { "local", localaddresses}