New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 769145 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 769144

Blocking:
issue 769136



Sign in to add a comment

Modify ReportingService so it schedules a retry over HTTP on failure

Project Member Reported by carlosil@chromium.org, Sep 27 2017

Issue description

If a fetch was unsuccessful, OnURLFetchComplete should check if it was unable to reach the server and it was using an HTTPS URL to reach it, if so, it should encrypt the report, then try sending it over an HTTP connection.
 
Blockedon: 769144
Blocking: 769136
Status: Started (was: Assigned)
Summary: Modify ReportingService so it schedules a retry over HTTP on failure (was: Modify NetMetricsLogUploader::OnURLFetchComplete so it retries over HTTP on failure)
New approach is to do this in ReportingService. OnURLFetchComplete should pass a boolean to OnUploadComplete specifying whether the current attempt was over HTTP or HTTPS, if the latter, ReportingService should schedule a retry over HTTP for the next attempt.
Project Member

Comment 5 by bugdroid1@chromium.org, Nov 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc

commit 75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc
Author: Carlos IL <carlosil@chromium.org>
Date: Tue Nov 07 01:43:02 2017

UMA now retries over HTTP on upload failures.

The UMA client now retries uploads over an HTTP connection if HTTPS
fails. Logs uploaded over HTTP are encrypted first, along with their 
hash and ReportingInfo headers using the encrypted messages component.
Currently this only happens if chrome is started with the
--retry-uma-over-http flag. Tests were also added that validate HTTP
uploads are encrypted and HTTPS ones are not.
In a future CL the UMA.LogUpload.ResponseOrErrorCode histogram will be
split so requests made over HTTP have a separate histogram from those
done over HTTPS.

Bug:  769145 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Id0671c49f6bd979343d7e88e04938f567005375e
Reviewed-on: https://chromium-review.googlesource.com/727264
Reviewed-by: Steven Holte <holte@chromium.org>
Reviewed-by: Adrienne Porter Felt <felt@chromium.org>
Reviewed-by: Bo <boliu@chromium.org>
Reviewed-by: Olivier Robin <olivierrobin@chromium.org>
Commit-Queue: Carlos IL <carlosil@chromium.org>
Cr-Commit-Position: refs/heads/master@{#514342}
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/android_webview/browser/aw_metrics_log_uploader.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/android_webview/browser/aw_metrics_service_client.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/android_webview/browser/aw_metrics_service_client.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/chrome/browser/metrics/chrome_metrics_service_client.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/chrome/browser/metrics/chrome_metrics_service_client.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/chromecast/browser/metrics/cast_metrics_service_client.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/chromecast/browser/metrics/cast_metrics_service_client.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/BUILD.gn
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/metrics_log_uploader.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/metrics_reporting_service.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/metrics_reporting_service.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/metrics_service_client.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/metrics_service_client.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/net/DEPS
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/net/net_metrics_log_uploader.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/net/net_metrics_log_uploader.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/net/net_metrics_log_uploader_unittest.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/reporting_service.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/reporting_service.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/reporting_service_unittest.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/test_metrics_log_uploader.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/test_metrics_service_client.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/test_metrics_service_client.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/url_constants.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/metrics/url_constants.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/ukm/ukm_reporting_service.cc
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/components/ukm/ukm_reporting_service.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/ios/chrome/browser/metrics/ios_chrome_metrics_service_client.h
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/ios/chrome/browser/metrics/ios_chrome_metrics_service_client.mm
[modify] https://crrev.com/75b352f3637ba5e1c7e37c054f3b1c29d15dcfdc/third_party/metrics_proto/reporting_info.proto

Status: Fixed (was: Started)

Sign in to add a comment