Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(225)

Unified Diff: components/metrics/net/net_metrics_log_uploader.cc

Issue 2703363002: Network traffic annotation added to NetMetricsLogUploader. (Closed)
Patch Set: nits Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/metrics/net/net_metrics_log_uploader.cc
diff --git a/components/metrics/net/net_metrics_log_uploader.cc b/components/metrics/net/net_metrics_log_uploader.cc
index 0064177a58c8991cec99004971d86c6df20d1231..c9cd9f66060f36f75c06ce5af78a4201db22e688 100644
--- a/components/metrics/net/net_metrics_log_uploader.cc
+++ b/components/metrics/net/net_metrics_log_uploader.cc
@@ -8,6 +8,7 @@
#include "components/data_use_measurement/core/data_use_user_data.h"
#include "components/metrics/metrics_log_uploader.h"
#include "net/base/load_flags.h"
+#include "net/traffic_annotation/network_traffic_annotation.h"
#include "net/url_request/url_fetcher.h"
#include "url/gurl.h"
@@ -30,21 +31,92 @@ NetMetricsLogUploader::~NetMetricsLogUploader() {
void NetMetricsLogUploader::UploadLog(const std::string& compressed_log_data,
const std::string& log_hash) {
- current_fetch_ =
- net::URLFetcher::Create(GURL(server_url_), net::URLFetcher::POST, this);
-
auto service = data_use_measurement::DataUseUserData::UMA;
switch (service_type_) {
- case MetricsLogUploader::UMA:
+ case MetricsLogUploader::UMA: {
service = data_use_measurement::DataUseUserData::UMA;
+ net::NetworkTrafficAnnotationTag traffic_annotation =
Alexei Svitkine (slow) 2017/02/27 18:24:08 Can you declare NetworkTrafficAnnotationTag traffi
Ramin Halavati 2017/02/28 08:55:39 That makes the clang tool that extracts annotation
Alexei Svitkine (slow) 2017/02/28 16:01:50 I see. Please add a comment about this - so that s
battre 2017/02/28 16:06:14 Why is this the case? Didn't we discuss that we co
Ramin Halavati 2017/03/01 05:52:49 This is a different issue, I had changed it this w
+ net::DefineNetworkTrafficAnnotation("metrics_report", R"(
+ semantics {
+ sender: "Metrics Log Uploader"
+ description:
+ "Report of usage statistics and crash-related data about "
+ "Chromium. Usage statistics contain information such as "
+ "preferences, button clicks, and memory usage and do not "
+ "include web page URLs or personal information. See more at "
+ "https://www.google.com/chrome/browser/privacy/ under 'Usage "
+ "statistics and crash reports'."
+ trigger:
+ "Reports are automatically generated on startup and at "
+ "intervals while Chromium is running."
+ data:
+ "A protocol buffer with usage statistics and crash related "
+ "data."
+ destination: GOOGLE_OWNED_SERVICE
+ }
+ policy {
+ cookies_allowed: false
+ setting:
+ "Users can enable or disable this feature by disabling "
+ "'Automatically send usage statistics and crash reports to "
+ "Google' in Chromium's settings under Advanced Settings, "
+ "Privacy. The feature is enabled by default."
+ policy {
+ MetricsReportingEnabled {
+ policy_options {mode: MANDATORY}
+ value: false
+ }
+ }
+ })");
+ current_fetch_ = net::URLFetcher::Create(
+ GURL(server_url_), net::URLFetcher::POST, this, traffic_annotation);
break;
- case MetricsLogUploader::UKM:
+ }
+ case MetricsLogUploader::UKM: {
service = data_use_measurement::DataUseUserData::UKM;
+ net::NetworkTrafficAnnotationTag traffic_annotation =
+ net::DefineNetworkTrafficAnnotation("metrics_report", R"(
+ semantics {
+ sender: "Metrics Log Uploader"
rkaplow 2017/02/27 22:52:58 how is the sender field used?
Ramin Halavati 2017/02/28 08:55:39 It's used in the report stating which module is ma
+ description:
+ "Report of usage statistics and crash-related data about "
rkaplow 2017/02/27 22:52:58 this is not correct for UKM. This is the draft of
Ramin Halavati 2017/02/28 08:55:39 Yes please, thank you.
+ "Chromium. Usage statistics contain information such as "
+ "preferences, button clicks, and memory usage and do not "
+ "include web page URLs or personal information. See more at "
+ "https://www.google.com/chrome/browser/privacy/ under 'Usage "
+ "statistics and crash reports'."
+ trigger:
+ "Reports are automatically generated on startup and at "
+ "intervals while Chromium is running."
+ data:
+ "A protocol buffer with usage statistics and crash related "
+ "data."
+ destination: GOOGLE_OWNED_SERVICE
+ }
+ policy {
+ cookies_allowed: false
+ setting:
+ "Users can enable or disable this feature by disabling "
rkaplow 2017/02/27 22:52:58 this is also not fully correct, you should mention
Ramin Halavati 2017/02/28 08:55:39 Could you please suggest wording for this one as w
+ "'Automatically send usage statistics and crash reports to "
+ "Google' in Chromium's settings under Advanced Settings, "
+ "Privacy. The feature is enabled by default."
+ policy {
+ MetricsReportingEnabled {
+ policy_options {mode: MANDATORY}
+ value: false
+ }
+ }
+ })");
+ current_fetch_ = net::URLFetcher::Create(
+ GURL(server_url_), net::URLFetcher::POST, this, traffic_annotation);
break;
+ }
+ default: { DCHECK(false); }
Alexei Svitkine (slow) 2017/02/27 18:24:08 Compiler will error when an enum is not covered by
Ramin Halavati 2017/02/28 08:55:39 Done.
}
data_use_measurement::DataUseUserData::AttachToFetcher(current_fetch_.get(),
service);
+
current_fetch_->SetRequestContext(request_context_getter_);
current_fetch_->SetUploadData(mime_type_, compressed_log_data);
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698