Commit dd7b421c authored by Trent Begin's avatar Trent Begin Committed by Commit Bot

connectivity-diagnostics: add new HTTP routines

This change adds additional network diagnostic routines to the
connectivity diagnostics application:
  - HTTP Firewall
  - HTTPS Firewall
  - HTTPS Latency

Bug: chromium:1142857
Change-Id: I67810a58203d8eb45a5f75c94c5d3179b9627530
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2530593Reviewed-by: default avatarSteven Bennetts <stevenjb@chromium.org>
Commit-Queue: Trent Begin <tbegin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#826955}
parent c6984632
......@@ -682,6 +682,15 @@ Try tapping the mic to ask me anything.
<message name="IDS_NETWORK_DIAGNOSTICS_DNS_RESOLUTION" desc="Label for Network diagnostics `DNS resolution` test. This test ensures that the Domain Name Server (DNS) can resolve network requests.">
DNS Resolution
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_HTTP_FIREWALL" desc="Label for Network diagnostics `HTTP Firewall` test. This test ensures that the device's firewall can resolve HTTP requests">
HTTP Firewall
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_HTTPS_FIREWALL" desc="Label for Network diagnostics `HTTPS Firewall` test. This test ensures that the device's firewall can resolve HTTPS requests">
HTTPS Firewall
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY" desc="Label for Network diagnostics `HTTPS Latency` test. This test ensures that the device's https requests have an acceptable amount of latency">
HTTPS Latency
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_PASSED" desc="Label shown when a Network diagnostics routine passed">
Passed
</message>
......@@ -760,6 +769,27 @@ Try tapping the mic to ask me anything.
<message name="IDS_NETWORK_DIAGNOSTICS_DNS_RESOLUTION_PROBLEM_FAILED_TO_RESOLVE_HOST" desc="Error message shown when the domain name server (DNS) failed to resolve a host">
Failed to resolve host
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_FIREWALL_PROBLEM_DNS_RESOLUTION_FAILURE_RATE" desc="Error message shown when the domain name server (DNS) has a high failure rate">
High DNS resolution failure rate
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_FIREWALL_PROBLEM_FIREWALL_DETECTED" desc="Error message shown when a firewall is detected">
Firewall detected
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_FIREWALL_PROBLEM_FIREWALL_SUSPECTED" desc="Error message shown when a firewall is suspected">
Firewall suspected
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_FAILED_DNS_RESOLUTIONS" desc="Error message shown when there are one or more failed DNS resolution">
Failed DNS resolutions
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_FAILED_HTTPS_REQUESTS" desc="Error message shown when there are one or more failed HTTPS requests">
Failed HTTP requests
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_HIGH_LATENCY" desc="Error message shown when HTTPS requests have a high latency">
High HTTPS latency
</message>
<message name="IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_VERY_HIGH_LATENCY" desc="Error message shown when HTTPS requests have a very high latency">
Very high HTTPS latency
</message>
</messages>
</release>
</grit>
e6006bfe98924b5f09c9f038d0a0c4e043fedfe1
\ No newline at end of file
d07c7300d1f98241c753b1b6921db8e10824912d
\ No newline at end of file
06fe6dc19344f7d438e71a7af3617d95e294ddf4
\ No newline at end of file
4c9f85c430c64140a7f398fbef90e5ac0cda43a6
\ No newline at end of file
e846c9932ab908f40293df0bffcda91748e014d2
\ No newline at end of file
511736743f0fa701dd5e9f666f6d3be7ee4a960e
\ No newline at end of file
......@@ -28,6 +28,9 @@ constexpr webui::LocalizedString kLocalizedStrings[] = {
IDS_NETWORK_DIAGNOSTICS_DNS_RESOLVER_PRESENT},
{"NetworkDiagnosticsDnsLatency", IDS_NETWORK_DIAGNOSTICS_DNS_LATENCY},
{"NetworkDiagnosticsDnsResolution", IDS_NETWORK_DIAGNOSTICS_DNS_RESOLUTION},
{"NetworkDiagnosticsHttpFirewall", IDS_NETWORK_DIAGNOSTICS_HTTP_FIREWALL},
{"NetworkDiagnosticsHttpsFirewall", IDS_NETWORK_DIAGNOSTICS_HTTPS_FIREWALL},
{"NetworkDiagnosticsHttpsLatency", IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY},
{"NetworkDiagnosticsPassed", IDS_NETWORK_DIAGNOSTICS_PASSED},
{"NetworkDiagnosticsFailed", IDS_NETWORK_DIAGNOSTICS_FAILED},
{"NetworkDiagnosticsNotRun", IDS_NETWORK_DIAGNOSTICS_NOT_RUN},
......@@ -71,6 +74,20 @@ constexpr webui::LocalizedString kLocalizedStrings[] = {
IDS_NETWORK_DIAGNOSTICS_DNS_LATENCY_PROBLEM_SIGNIFICANTLY_ABOVE_THRESHOLD},
{"DnsResolutionProblem_FailedResolve",
IDS_NETWORK_DIAGNOSTICS_DNS_RESOLUTION_PROBLEM_FAILED_TO_RESOLVE_HOST},
{"FirewallProblem_DnsResolutionFailureRate",
IDS_NETWORK_DIAGNOSTICS_FIREWALL_PROBLEM_DNS_RESOLUTION_FAILURE_RATE},
{"FirewallProblem_FirewallDetected",
IDS_NETWORK_DIAGNOSTICS_FIREWALL_PROBLEM_FIREWALL_DETECTED},
{"FirewallProblem_FirewallSuspected",
IDS_NETWORK_DIAGNOSTICS_FIREWALL_PROBLEM_FIREWALL_SUSPECTED},
{"HttpsLatencyProblem_FailedDnsResolution",
IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_FAILED_DNS_RESOLUTIONS},
{"HttpsLatencyProblem_FailedHttpsRequests",
IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_FAILED_HTTPS_REQUESTS},
{"HttpsLatencyProblem_HighLatency",
IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_HIGH_LATENCY},
{"HttpsLatencyProblem_VeryHighLatency",
IDS_NETWORK_DIAGNOSTICS_HTTPS_LATENCY_PROBLEM_VERY_HIGH_LATENCY},
};
struct WebUiResource {
......
......@@ -47,6 +47,9 @@ const RoutineType = {
DNS_RESOLVER: 4,
DNS_LATENCY: 5,
DNS_RESOLUTION: 6,
HTTP_FIREWALL: 7,
HTTPS_FIREWALL: 8,
HTTPS_LATENCY: 9,
};
/**
......@@ -97,6 +100,12 @@ Polymer({
'NetworkDiagnosticsDnsLatency', RoutineType.DNS_LATENCY);
routines[RoutineType.DNS_RESOLUTION] = createRoutine(
'NetworkDiagnosticsDnsResolution', RoutineType.DNS_RESOLUTION);
routines[RoutineType.HTTP_FIREWALL] = createRoutine(
'NetworkDiagnosticsHttpFirewall', RoutineType.HTTP_FIREWALL);
routines[RoutineType.HTTPS_FIREWALL] = createRoutine(
'NetworkDiagnosticsHttpsFirewall', RoutineType.HTTPS_FIREWALL);
routines[RoutineType.HTTPS_LATENCY] = createRoutine(
'NetworkDiagnosticsHttpsLatency', RoutineType.HTTPS_LATENCY);
return routines;
}
}
......@@ -199,6 +208,18 @@ Polymer({
this.networkDiagnostics_.dnsResolution().then(
result => this.evaluateRoutine_(type, result));
break;
case RoutineType.HTTP_FIREWALL:
this.networkDiagnostics_.httpFirewall().then(
result => this.evaluateRoutine_(type, result));
break;
case RoutineType.HTTPS_FIREWALL:
this.networkDiagnostics_.httpsFirewall().then(
result => this.evaluateRoutine_(type, result));
break;
case RoutineType.HTTPS_LATENCY:
this.networkDiagnostics_.httpsLatency().then(
result => this.evaluateRoutine_(type, result));
break;
}
},
......@@ -391,6 +412,46 @@ Polymer({
break;
}
break;
case RoutineType.HTTP_FIREWALL:
case RoutineType.HTTPS_FIREWALL:
switch (problem) {
case diagnosticsMojom.HttpFirewallProblem
.kDnsResolutionFailuresAboveThreshold:
case diagnosticsMojom.HttpsFirewallProblem.kFailedDnsResolutions:
problemStrings.push(
getString('FirewallProblem_DnsResolutionFailureRate'));
break;
case diagnosticsMojom.HttpFirewallProblem.kFirewallDetected:
case diagnosticsMojom.HttpsFirewallProblem.kFirewallDetected:
problemStrings.push(
getString('FirewallProblem_FirewallDetected'));
break;
case diagnosticsMojom.HttpFirewallProblem.kPotentialFirewall:
case diagnosticsMojom.HttpsFirewallProblem.kPotentialFirewall:
problemStrings.push(
getString('FirewallProblem_FirewallSuspected'));
break;
}
case RoutineType.HTTPS_LATENCY:
switch (problem) {
case diagnosticsMojom.HttpsLatencyProblem.kFailedDnsResolutions:
problemStrings.push(
getString('HttpsLatencyProblem_FailedDnsResolution'));
break;
case diagnosticsMojom.HttpsLatencyProblem.kFailedHttpsRequests:
problemStrings.push(
getString('HttpsLatencyProblem_FailedHttpsRequests'));
break;
case diagnosticsMojom.HttpsLatencyProblem.kHighLatency:
problemStrings.push(getString('HttpsLatencyProblem_HighLatency'));
break;
case diagnosticsMojom.HttpsLatencyProblem.kVeryHighLatency:
problemStrings.push(
getString('HttpsLatencyProblem_VeryHighLatency'));
break;
}
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment