Add ClientQuota statistics channel counter

This counter indicates the number of the resolver's spilled
queries due to reaching the clients per query quota.

(cherry picked from commit 04648d7c2f)
This commit is contained in:
Aram Sargsyan 2023-05-29 15:19:49 +00:00 committed by Arаm Sаrgsyаn
parent 56ae462f21
commit cd47429365
3 changed files with 7 additions and 3 deletions

View file

@ -441,6 +441,8 @@ init_desc(void) {
SET_RESSTATDESC(zonequota, "spilled due to zone quota", "ZoneQuota");
SET_RESSTATDESC(serverquota, "spilled due to server quota",
"ServerQuota");
SET_RESSTATDESC(clientquota, "spilled due to clients per query quota",
"ClientQuota");
SET_RESSTATDESC(nextitem, "waited for next item", "NextItem");
SET_RESSTATDESC(priming, "priming queries", "Priming");

View file

@ -69,9 +69,10 @@ enum {
dns_resstatscounter_badcookie = 40,
dns_resstatscounter_zonequota = 41,
dns_resstatscounter_serverquota = 42,
dns_resstatscounter_nextitem = 43,
dns_resstatscounter_priming = 44,
dns_resstatscounter_max = 45,
dns_resstatscounter_clientquota = 43,
dns_resstatscounter_nextitem = 44,
dns_resstatscounter_priming = 45,
dns_resstatscounter_max = 46,
/*
* DNSSEC stats.

View file

@ -10918,6 +10918,7 @@ dns_resolver_createfetch(dns_resolver_t *res, const dns_name_t *name,
fctx->spilled = true;
}
if (fctx->spilled) {
inc_stats(res, dns_resstatscounter_clientquota);
result = DNS_R_DROP;
goto unlock;
}