Index: components/metrics/metrics_service.cc |
diff --git a/components/metrics/metrics_service.cc b/components/metrics/metrics_service.cc |
index 63d5e7e8d8031aaa11557ec69939642ebc27f94c..937d6b1cf1153d11ebc1ad25de45378ea1fcd9d2 100644 |
--- a/components/metrics/metrics_service.cc |
+++ b/components/metrics/metrics_service.cc |
@@ -390,8 +390,8 @@ void MetricsService::EnableRecording() { |
if (!log_manager_.current_log()) |
OpenNewLog(); |
- for (size_t i = 0; i < metrics_providers_.size(); ++i) |
- metrics_providers_[i]->OnRecordingEnabled(); |
+ for (auto& provider : metrics_providers_) |
+ provider->OnRecordingEnabled(); |
base::RemoveActionCallback(action_callback_); |
action_callback_ = base::Bind(&MetricsService::OnUserAction, |
@@ -410,8 +410,8 @@ void MetricsService::DisableRecording() { |
base::RemoveActionCallback(action_callback_); |
- for (size_t i = 0; i < metrics_providers_.size(); ++i) |
- metrics_providers_[i]->OnRecordingDisabled(); |
+ for (auto& provider : metrics_providers_) |
+ provider->OnRecordingDisabled(); |
PushPendingLogsToPersistentStorage(); |
} |
@@ -526,8 +526,8 @@ void MetricsService::RecordBreakpadHasDebugger(bool has_debugger) { |
} |
void MetricsService::ClearSavedStabilityMetrics() { |
- for (size_t i = 0; i < metrics_providers_.size(); ++i) |
- metrics_providers_[i]->ClearSavedStabilityMetrics(); |
+ for (auto& provider : metrics_providers_) |
+ provider->ClearSavedStabilityMetrics(); |
// Reset the prefs that are managed by MetricsService/MetricsLog directly. |
local_state_->SetInteger(prefs::kStabilityCrashCount, 0); |
@@ -679,8 +679,8 @@ void MetricsService::GetUptimes(PrefService* pref, |
void MetricsService::NotifyOnDidCreateMetricsLog() { |
DCHECK(IsSingleThreaded()); |
- for (size_t i = 0; i < metrics_providers_.size(); ++i) |
- metrics_providers_[i]->OnDidCreateMetricsLog(); |
+ for (auto& provider : metrics_providers_) |
+ provider->OnDidCreateMetricsLog(); |
} |
//------------------------------------------------------------------------------ |
@@ -868,8 +868,8 @@ void MetricsService::SendNextLog() { |
bool MetricsService::ProvidersHaveInitialStabilityMetrics() { |
// Check whether any metrics provider has initial stability metrics. |
- for (size_t i = 0; i < metrics_providers_.size(); ++i) { |
- if (metrics_providers_[i]->HasInitialStabilityMetrics()) |
+ for (auto& provider : metrics_providers_) { |
+ if (provider->HasInitialStabilityMetrics()) |
return true; |
} |
@@ -1107,6 +1107,10 @@ void MetricsService::RecordCurrentEnvironment(MetricsLog* log) { |
void MetricsService::RecordCurrentHistograms() { |
DCHECK(log_manager_.current_log()); |
+ histogram_snapshot_manager_.StartDeltas(); |
+ for (auto& provider : metrics_providers_) |
+ provider->RecordHistogramSnapshots(&histogram_snapshot_manager_); |
+ histogram_snapshot_manager_.FinishDeltas(); |
} |
void MetricsService::RecordCurrentStabilityHistograms() { |