Index: components/metrics/metrics_service.cc |
diff --git a/components/metrics/metrics_service.cc b/components/metrics/metrics_service.cc |
index 18ec2e55bddae79355348dcc22bbf3e848231092..9ddbe83db6088cc39bff341064b0698c0724c5a6 100644 |
--- a/components/metrics/metrics_service.cc |
+++ b/components/metrics/metrics_service.cc |
@@ -167,6 +167,7 @@ |
#include "base/bind.h" |
#include "base/callback.h" |
+#include "base/command_line.h" |
#include "base/metrics/histogram.h" |
#include "base/metrics/histogram_base.h" |
#include "base/metrics/histogram_samples.h" |
@@ -189,6 +190,7 @@ |
#include "components/metrics/metrics_reporting_scheduler.h" |
#include "components/metrics/metrics_service_client.h" |
#include "components/metrics/metrics_state_manager.h" |
+#include "components/metrics/metrics_switches.h" |
#include "components/variations/entropy_provider.h" |
namespace metrics { |
@@ -1020,8 +1022,16 @@ void MetricsService::SendStagedLog() { |
log_upload_in_progress_ = true; |
if (!log_uploader_) { |
+ std::string server_url(kServerUrl); |
+ base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); |
+ if (command_line->HasSwitch(switches::kOverrideMetricsUploadUrl)) { |
+ server_url = command_line->GetSwitchValueASCII( |
+ switches::kOverrideMetricsUploadUrl); |
+ DCHECK(!server_url.empty()); |
+ } |
+ |
log_uploader_ = client_->CreateUploader( |
- kServerUrl, kMimeType, |
+ server_url, kMimeType, |
base::Bind(&MetricsService::OnLogUploadComplete, |
self_ptr_factory_.GetWeakPtr())); |
} |