From: Otto Moerbeek Date: Tue, 13 Sep 2022 07:51:33 +0000 (+0200) Subject: Docs and account for forwarding X-Git-Tag: rec-4.9.0-alpha0~20^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=45eb99690a27e5adb56c4ef883311f14044ab0bc;p=thirdparty%2Fpdns.git Docs and account for forwarding --- diff --git a/pdns/rec-snmp.cc b/pdns/rec-snmp.cc index c847aee742..114cf5ffc4 100644 --- a/pdns/rec-snmp.cc +++ b/pdns/rec-snmp.cc @@ -167,7 +167,6 @@ static const oid rcode13AnswersOID[] = {RECURSOR_STATS_OID, 129, 13}; static const oid rcode14AnswersOID[] = {RECURSOR_STATS_OID, 129, 14}; static const oid rcode15AnswersOID[] = {RECURSOR_STATS_OID, 129, 15}; - static std::unordered_map s_statsMap; /* We are never called for a GETNEXT if it's registered as a @@ -407,7 +406,7 @@ RecursorSNMPAgent::RecursorSNMPAgent(const std::string& name, const std::string& registerCounter64Stat("maintenance-usec", maintenanceUSecOID, OID_LENGTH(maintenanceUSecOID)); registerCounter64Stat("maintenance-calls", maintenanceCallsOID, OID_LENGTH(maintenanceCallsOID)); -#define RCODE(num) registerCounter64Stat("auth-" + RCode::to_short_s(num) + "-answers", rcode ##num ## AnswersOID, OID_LENGTH(rcode ##num ## AnswersOID)) +#define RCODE(num) registerCounter64Stat("auth-" + RCode::to_short_s(num) + "-answers", rcode##num##AnswersOID, OID_LENGTH(rcode##num##AnswersOID)) RCODE(0); RCODE(1); RCODE(2); diff --git a/pdns/recursordist/docs/metrics.rst b/pdns/recursordist/docs/metrics.rst index 25c0e06598..53309868b8 100644 --- a/pdns/recursordist/docs/metrics.rst +++ b/pdns/recursordist/docs/metrics.rst @@ -232,6 +232,12 @@ auth6-answers100-1000 ^^^^^^^^^^^^^^^^^^^^^ counts the number of queries answered by auth6s within 1 second (4.0) +auth-xxx-answers +^^^^^^^^^^^^^^^^ +where ``xxx`` is an rcode name (``noerror``, ``formerr``, ``servfail``, ``nxdomain``, ``notimp``, ``refused``, ``yxdomain``, ``yxrrset``, ``nxrrset``, ``notauth``, ``rcode10``, ``rcode11``, ``rcode2``, ``rcode13``, ``rcode14``, ``rcode15``). +Counts the rcodes returned by authoritative servers. + + auth-zone-queries ^^^^^^^^^^^^^^^^^ counts the number of queries to locally hosted authoritative zones (:ref:`setting-auth-zones`) since starting diff --git a/pdns/syncres.cc b/pdns/syncres.cc index d940c2afb1..54334fd4d1 100644 --- a/pdns/syncres.cc +++ b/pdns/syncres.cc @@ -1842,6 +1842,7 @@ int SyncRes::doResolveNoQNameMinimization(const DNSName &qname, const QType qtyp d_totUsec += lwr.d_usec; accountAuthLatency(lwr.d_usec, remoteIP.sin4.sin_family); + ++g_stats.authRCode[lwr.d_rcode]; if (fromCache) *fromCache = true; diff --git a/pdns/ws-recursor.cc b/pdns/ws-recursor.cc index 64b25b5fa0..74f61f4c07 100644 --- a/pdns/ws-recursor.cc +++ b/pdns/ws-recursor.cc @@ -1156,7 +1156,7 @@ const std::map MetricDefinitionStorage::d_metrics "Number of queries matching proxyMappings")}, // For multicounters, state the first - {"auth-noerror-answers", + {"auth-formerr-answers", MetricDefinition(PrometheusMetricType::multicounter, "Count of RCodes returned by authoritative servers")}, };