bug 1472659 - add Telemetry::DNS_TRR_FIRST and Telemetry::DNS_TRR_DISABLED r?mcmanus
To help evaluate TRRfirst sucess/error rates.
MozReview-Commit-ID: Ljrbed6UDG2
--- a/netwerk/dns/nsHostResolver.cpp
+++ b/netwerk/dns/nsHostResolver.cpp
@@ -296,16 +296,26 @@ nsHostRecord::ResolveComplete()
if (mTRRUsed && mNativeUsed) {
// both were used, accumulate comparative success
AccumulateCategorical(mNativeSuccess && mTRRSuccess?
Telemetry::LABELS_DNS_TRR_COMPARE::BothWorked :
((mNativeSuccess ? Telemetry::LABELS_DNS_TRR_COMPARE::NativeWorked :
(mTRRSuccess ? Telemetry::LABELS_DNS_TRR_COMPARE::TRRWorked:
Telemetry::LABELS_DNS_TRR_COMPARE::BothFailed))));
+ } else if (mResolverMode == MODE_TRRFIRST) {
+ if(flags & nsIDNSService::RESOLVE_DISABLE_TRR) {
+ // TRR is disabled on request, which is a next-level back-off method.
+ Telemetry::Accumulate(Telemetry::DNS_TRR_DISABLED, mNativeSuccess);
+ } else {
+ AccumulateCategorical(mTRRSuccess?
+ Telemetry::LABELS_DNS_TRR_FIRST::TRRWorked :
+ ((mNativeSuccess ? Telemetry::LABELS_DNS_TRR_FIRST::NativeFallback :
+ Telemetry::LABELS_DNS_TRR_FIRST::BothFailed)));
+ }
}
switch(mResolverMode) {
case MODE_NATIVEONLY:
case MODE_TRROFF:
AccumulateCategorical(Telemetry::LABELS_DNS_LOOKUP_ALGORITHM::nativeOnly);
break;
case MODE_PARALLEL:
--- a/toolkit/components/telemetry/Histograms.json
+++ b/toolkit/components/telemetry/Histograms.json
@@ -3260,16 +3260,33 @@
"record_in_processes": ["main"],
"alert_emails": ["necko@mozilla.com", "dstenberg@mozilla.com"],
"expires_in_version": "never",
"kind": "categorical",
"labels": ["BothWorked", "NativeWorked", "TRRWorked", "BothFailed"],
"bug_numbers": [1460589],
"description": "DNS: success distribution when both native and TRR were used"
},
+ "DNS_TRR_FIRST": {
+ "record_in_processes": ["main"],
+ "alert_emails": ["necko@mozilla.com", "dstenberg@mozilla.com"],
+ "expires_in_version": "never",
+ "kind": "categorical",
+ "labels": ["TRRWorked", "NativeFallback", "BothFailed"],
+ "bug_numbers": [1472659],
+ "description": "TRR-first mode distribution. 0=Worked, 1=fell back to native, 2=both failed"
+ },
+ "DNS_TRR_DISABLED": {
+ "record_in_processes": ["main"],
+ "expires_in_version": "never",
+ "kind": "boolean",
+ "description": "Resolve success rate when in TRR-first and called TRR-disabled (fall-back mode)",
+ "bug_numbers": [1472659],
+ "alert_emails": ["necko@mozilla.com", "dstenberg@mozilla.com"]
+ },
"DNS_TRR_BLACKLISTED": {
"record_in_processes": ["main"],
"expires_in_version": "never",
"kind": "boolean",
"description": "DNS check for TRR was blocked by blacklist",
"bug_numbers": [1434852],
"alert_emails": ["necko@mozilla.com", "dstenberg@mozilla.com"]
},