From: Lucas Rolff Date: Thu, 26 Jun 2025 20:36:03 +0000 (+0200) Subject: Add :getQueries() method to Server class X-Git-Tag: rec-5.3.0-alpha2~41^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=73e5b89b115aac8c12114aba6683afc76e7a414a;p=thirdparty%2Fpdns.git Add :getQueries() method to Server class This exposes the total number of queries a downstream server has handled similarly to how the :getDrops() method are available within Lua When doing custom logic within Lua it's sometimes useful to be able to know how many queries a given server has handled, so this simply exposes that metric within the Server class directly. --- diff --git a/pdns/dnsdistdist/dnsdist-lua-bindings.cc b/pdns/dnsdistdist/dnsdist-lua-bindings.cc index 776e776baa..a210eb10ab 100644 --- a/pdns/dnsdistdist/dnsdist-lua-bindings.cc +++ b/pdns/dnsdistdist/dnsdist-lua-bindings.cc @@ -121,6 +121,7 @@ void setupLuaBindings(LuaContext& luaCtx, bool client, bool configCheck) }); luaCtx.registerFunction("getOutstanding", [](const DownstreamState& state) { return state.outstanding.load(); }); luaCtx.registerFunction("getDrops", [](const DownstreamState& state) { return state.reuseds.load(); }); + luaCtx.registerFunction("getQueries", [](const DownstreamState& state) { return state.queries.load(); }); luaCtx.registerFunction("getLatency", [](const DownstreamState& state) { return state.getRelevantLatencyUsec(); }); luaCtx.registerFunction("isUp", &DownstreamState::isUp); luaCtx.registerFunction("setDown", &DownstreamState::setDown); diff --git a/pdns/dnsdistdist/docs/reference/config.rst b/pdns/dnsdistdist/docs/reference/config.rst index e9b8d4bda5..4dba6116ae 100644 --- a/pdns/dnsdistdist/docs/reference/config.rst +++ b/pdns/dnsdistdist/docs/reference/config.rst @@ -829,6 +829,14 @@ A server object returned by :func:`getServer` can be manipulated with these func :returns: The number of dropped queries + .. method:: Server:getQueries() -> int + + .. versionadded:: 2.0.x + + Get the number of total queries for this server. + + :returns: The number of dropped queries + .. method:: Server:getHealthCheckMode() -> str .. versionadded:: 2.0.0