diff options
author | mab <mab@google.com> | 2016-03-17 16:44:21 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-17 23:45:42 +0000 |
commit | 740b02b74735910ec8e185d6375d4eda3f15e0ba (patch) | |
tree | 122f98c24dd0722f25eb626268cc36ca3925a1d9 /tools/metrics | |
parent | bb61b52a6c356161d5c403db7809a21d79b0b5bc (diff) | |
download | chromium_src-740b02b74735910ec8e185d6375d4eda3f15e0ba.zip chromium_src-740b02b74735910ec8e185d6375d4eda3f15e0ba.tar.gz chromium_src-740b02b74735910ec8e185d6375d4eda3f15e0ba.tar.bz2 |
Use network time for bad clock interstitial.
This change supplements the existing build-time heuristic (which
renders the bad-clock interstitial only when the system clock is outside
the range (build-2d,build+365d)) with a comparison of the system clock
to network time, fetched from |NetworkTimeTracker|.
Network time has priority: if the network time says the clock is
accurate, the bad-clock intersitial will not be used.
The |CLOCK_FUTURE| and |CLOCK_PAST| metrics are recorded only when the
interstitial is shown, however the decision was made. The new
histograms |interstitial.ssl.clockstate.build_time| and
|interstitial.ssl.clockstate.network| provide data about the state of
the system clock whenever a |CERT_DATE_INVALID| error is encountered.
This should help us to assess the effects of the change.
Future work will focus on providing better network time in more cases.
BUG=589700
Review URL: https://codereview.chromium.org/1772143002
Cr-Commit-Position: refs/heads/master@{#381837}
Diffstat (limited to 'tools/metrics')
-rw-r--r-- | tools/metrics/histograms/histograms.xml | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index 07ddba1..2cf6056 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml @@ -18021,6 +18021,22 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries. </summary> </histogram> +<histogram name="interstitial.ssl.clockstate.build_time" enum="ClockStates"> + <owner>mab@chromium.org</owner> + <summary> + State of the system clock, as inferred from the build timestamp, when an SSL + CERT_INVALID_DATE error is seen. + </summary> +</histogram> + +<histogram name="interstitial.ssl.clockstate.network" enum="ClockStates"> + <owner>mab@chromium.org</owner> + <summary> + State of the system clock, relative to network time, when an SSL + CERT_INVALID_DATE error is seen. + </summary> +</histogram> + <histogram name="interstitial.ssl.connection_type" enum="ResourcePrefetchPredictorNetworkType"> <owner>felt@chromium.org</owner> @@ -61325,6 +61341,14 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries. <int value="2" label="Read Text"/> </enum> +<enum name="ClockStates" type="int"> + <int value="0" + label="CLOCK_STATE_UNKNOWN: accuracy of system clock is unknown"/> + <int value="1" label="CLOCK_STATE_OK: system clock is roughly accurate"/> + <int value="2" label="CLOCK_STATE_PAST: system clock is in the past"/> + <int value="3" label="CLOCK_STATE_FUTURE: system clock is in the future"/> +</enum> + <enum name="CloudImportUserAction" type="int"> <int value="0" label="IMPORT_INITIATED"/> </enum> @@ -81913,8 +81937,16 @@ To add a new entry, add it with any value and run test to compute valid value. </enum> <enum name="SSLErrorCauses" type="int"> - <int value="0" label="CLOCK_PAST: System clock set early"/> - <int value="1" label="CLOCK_FUTURE: System clock set late"/> + <int value="0" label="CLOCK_PAST: System clock set early"> + This cause is recorded if the SSL error is CERT_DATE_INVALID and Chrome had + reason to believe that the system clock was behind. Methods of detecting + clock inaccuracy have changed over time. + </int> + <int value="1" label="CLOCK_FUTURE: System clock set late"> + This cause is recorded if the SSL error is CERT_DATE_INVALID and Chrome had + reason to believe that the system clock was behind. Methods of detecting + clock inaccuracy have changed over time. + </int> <int value="2" label="WWW_SUBDOMAIN_MATCH: Difference between the URL and the DNS is www"> |