mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-20 08:45:46 +00:00
4106c61ff1
This patch attempts to record the reason why we fall back to DNS. I considered using categorical probes for this, but they have a max limit of 20 categories, so we have to use a linear probe. I chose 50 buckets to allow us to add more failure reasons in the future. The recorded values are defined in nsHostRecord::TRRSkippedReason. nsHostRecord::RecordReason is called whenever we encounter a condition that will cause us to skip TRR in nsHostResolver. For failures that occur inside TRR.cpp, each TRR object holds its own reason that is recorded in a similar way. When all TRR requests are complete we report the one that failed (or if both failed we report the one for the A request). Due to the fact that we might also follow CNAME requests, and the final TRR request might not be the one that was issued at first, TRR requests must pass back the reason as an argument to CompleteLookup. Finally, this patch records the reason in two probes: TRR_SKIP_REASON_TRR_FIRST - only reported in TRR-first mode TRR_SKIP_REASON_DNS_WORKED - only reported in TRR-first mode when the fallback DNS request succeeded. This allows us to filter for complete network failures. Differential Revision: https://phabricator.services.mozilla.com/D82168 |
||
---|---|---|
.. | ||
actors | ||
components | ||
content | ||
crashreporter | ||
docs | ||
library | ||
locales | ||
modules | ||
mozapps | ||
pluginproblem | ||
profile | ||
system | ||
themes | ||
xre | ||
.eslintrc.js | ||
l10n-registry.manifest | ||
moz.build | ||
moz.configure | ||
toolkit.mozbuild |