summaryrefslogtreecommitdiff
path: root/chromium/components/metrics/metrics_service.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/components/metrics/metrics_service.cc
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-85-based.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/components/metrics/metrics_service.cc')
-rw-r--r--chromium/components/metrics/metrics_service.cc18
1 files changed, 10 insertions, 8 deletions
diff --git a/chromium/components/metrics/metrics_service.cc b/chromium/components/metrics/metrics_service.cc
index 687471a854d..6e3e369a220 100644
--- a/chromium/components/metrics/metrics_service.cc
+++ b/chromium/components/metrics/metrics_service.cc
@@ -219,7 +219,9 @@ MetricsService::MetricsService(MetricsStateManager* state_manager,
test_mode_active_(false),
state_(INITIALIZED),
idle_since_last_transmission_(false),
- session_id_(-1) {
+ session_id_(-1),
+ synthetic_trial_registry_(
+ client->IsExternalExperimentAllowlistEnabled()) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
DCHECK(state_manager_);
DCHECK(client_);
@@ -229,9 +231,6 @@ MetricsService::MetricsService(MetricsStateManager* state_manager,
std::make_unique<StabilityMetricsProvider>(local_state_));
RegisterMetricsProvider(state_manager_->GetProvider());
-
- RegisterMetricsProvider(std::make_unique<variations::FieldTrialsProvider>(
- &synthetic_trial_registry_, base::StringPiece()));
}
MetricsService::~MetricsService() {
@@ -239,6 +238,12 @@ MetricsService::~MetricsService() {
}
void MetricsService::InitializeMetricsRecordingState() {
+ // The FieldTrialsProvider should be registered last. This ensures that
+ // studies whose features are checked when providers add their information to
+ // the log appear in the active field trials.
+ RegisterMetricsProvider(std::make_unique<variations::FieldTrialsProvider>(
+ &synthetic_trial_registry_, base::StringPiece()));
+
reporting_service_.Initialize();
InitializeMetricsState();
@@ -449,10 +454,6 @@ void MetricsService::ClearSavedStabilityMetrics() {
delegating_provider_.ClearSavedStabilityMetrics();
}
-void MetricsService::PushExternalLog(const std::string& log) {
- log_store()->StoreLog(log, MetricsLog::ONGOING_LOG);
-}
-
bool MetricsService::StageCurrentLogForTest() {
CloseCurrentLog();
@@ -539,6 +540,7 @@ void MetricsService::InitializeMetricsState() {
local_state_->SetInteger(prefs::kMetricsSessionID, session_id_);
// Notify stability metrics providers about the launch.
+ UMA_HISTOGRAM_BOOLEAN("UMA.MetricsService.Initialize", true);
provider.LogLaunch();
provider.CheckLastSessionEndCompleted();