g_log << ", dnssec=" << sr.getValidationState();
}
g_log << " answer-is-variable=" << sr.wasVariable() << ", into-packetcache=" << intoPC;
+ g_log << " maxdepth=" << sr.d_maxdepth;
g_log << endl;
}
else {
"rcode", Logging::Loggable(res),
"validationState", Logging::Loggable(sr.getValidationState()),
"answer-is-variable", Logging::Loggable(sr.wasVariable()),
- "into-packetcache", Logging::Loggable(intoPC));
+ "into-packetcache", Logging::Loggable(intoPC),
+ "maxdepth", Logging::Loggable(sr.d_maxdepth));
}
}
LOG(prefix << qname << ": Wants " << (d_doDNSSEC ? "" : "NO ") << "DNSSEC processing, " << (d_requireAuthData ? "" : "NO ") << "auth data required by query for " << qtype << endl);
+ d_maxdepth = std::max(d_maxdepth, depth);
if (s_maxdepth > 0) {
auto bound = getAdjustedRecursionBound();
// Use a stricter bound if throttling
unsigned int d_timeouts;
unsigned int d_unreachables;
unsigned int d_totUsec;
+ unsigned int d_maxdepth{0};
// Initialized ony once, as opposed to d_now which gets updated after outgoing requests
const struct timeval d_fixednow;