OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/metrics/chrome_metrics_service_client.h" | 5 #include "chrome/browser/metrics/chrome_metrics_service_client.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 389 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
400 if (ShouldClearSavedMetrics()) { | 400 if (ShouldClearSavedMetrics()) { |
401 PrefService* local_state = g_browser_process->local_state(); | 401 PrefService* local_state = g_browser_process->local_state(); |
402 local_state->ClearPref(metrics::prefs::kMetricsInitialLogs); | 402 local_state->ClearPref(metrics::prefs::kMetricsInitialLogs); |
403 local_state->ClearPref(metrics::prefs::kMetricsOngoingLogs); | 403 local_state->ClearPref(metrics::prefs::kMetricsOngoingLogs); |
404 } | 404 } |
405 | 405 |
406 metrics_service_.reset(new metrics::MetricsService( | 406 metrics_service_.reset(new metrics::MetricsService( |
407 metrics_state_manager_, this, g_browser_process->local_state())); | 407 metrics_state_manager_, this, g_browser_process->local_state())); |
408 | 408 |
409 // Gets access to persistent metrics shared by sub-processes. | 409 // Gets access to persistent metrics shared by sub-processes. |
| 410 std::unique_ptr<SubprocessMetricsProvider> subprocess_metrics_provider( |
| 411 new SubprocessMetricsProvider()); |
| 412 subprocess_metrics_provider->EnableSubprocessTracking(); |
410 metrics_service_->RegisterMetricsProvider( | 413 metrics_service_->RegisterMetricsProvider( |
411 std::unique_ptr<metrics::MetricsProvider>( | 414 std::move(subprocess_metrics_provider)); |
412 new SubprocessMetricsProvider())); | |
413 | 415 |
414 // Register metrics providers. | 416 // Register metrics providers. |
415 #if defined(ENABLE_EXTENSIONS) | 417 #if defined(ENABLE_EXTENSIONS) |
416 metrics_service_->RegisterMetricsProvider( | 418 metrics_service_->RegisterMetricsProvider( |
417 std::unique_ptr<metrics::MetricsProvider>( | 419 std::unique_ptr<metrics::MetricsProvider>( |
418 new ExtensionsMetricsProvider(metrics_state_manager_))); | 420 new ExtensionsMetricsProvider(metrics_state_manager_))); |
419 #endif | 421 #endif |
420 metrics_service_->RegisterMetricsProvider( | 422 metrics_service_->RegisterMetricsProvider( |
421 std::unique_ptr<metrics::MetricsProvider>( | 423 std::unique_ptr<metrics::MetricsProvider>( |
422 new metrics::NetworkMetricsProvider( | 424 new metrics::NetworkMetricsProvider( |
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
792 } | 794 } |
793 } | 795 } |
794 | 796 |
795 void ChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) { | 797 void ChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) { |
796 metrics_service_->OnApplicationNotIdle(); | 798 metrics_service_->OnApplicationNotIdle(); |
797 } | 799 } |
798 | 800 |
799 bool ChromeMetricsServiceClient::IsUMACellularUploadLogicEnabled() { | 801 bool ChromeMetricsServiceClient::IsUMACellularUploadLogicEnabled() { |
800 return metrics::IsCellularLogicEnabled(); | 802 return metrics::IsCellularLogicEnabled(); |
801 } | 803 } |
OLD | NEW |