aboutsummaryrefslogtreecommitdiff
path: root/ResolverController.cpp
diff options
context:
space:
mode:
authorchenbruce <chenbruce@google.com>2021-08-18 22:24:56 +0800
committerchenbruce <chenbruce@google.com>2021-08-25 14:54:01 +0800
commit52cf009bf98d4575e67f96a732f1b715dc588d13 (patch)
treecfe26d359a638f4504c76ab541fc5c5a4081dd52 /ResolverController.cpp
parent9b72daa3b7f3f33fcc5bf25269a9221cf296e904 (diff)
Subsampling DNS event for mDNS
Currently, a device generates some mDNS queries when the user uses mDNS .local resolution. Using the query info by subsampling events based on how interesting they are. Because the number of mDNS query is much less than DNS query, the mDNS subsampling rate is higer than DNS query. - if return_code == 0,2,7 -> log 1 in 1 event - if return_code == default -> log 1 in 1 event Also allow to use experiment flag to update sub-sampling denom. Example for dumpsys dnsresolver: NetId: 100 DnsEvent subsampling map for MDNS: default:1 Bug: 197092658 Test: cd packages/modules/DnsResolver && atest m statsd_testdrive and run "statsd_testdrive 116" Change-Id: I76073aa9a1cea43bda2675334592ed22e96a238e
Diffstat (limited to 'ResolverController.cpp')
-rw-r--r--ResolverController.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/ResolverController.cpp b/ResolverController.cpp
index 2f143f5d..eaf9aa38 100644
--- a/ResolverController.cpp
+++ b/ResolverController.cpp
@@ -319,7 +319,9 @@ void ResolverController::dump(DumpWriter& dw, unsigned netId) {
dw.println("No DNS servers defined");
} else {
dw.println("DnsEvent subsampling map: " +
- android::base::Join(resolv_cache_dump_subsampling_map(netId), ' '));
+ android::base::Join(resolv_cache_dump_subsampling_map(netId, false), ' '));
+ dw.println("DnsEvent subsampling map for MDNS: " +
+ android::base::Join(resolv_cache_dump_subsampling_map(netId, true), ' '));
dw.println(
"DNS servers: # IP (total, successes, errors, timeouts, internal errors, "
"RTT avg, last sample)");