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 390 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
401 if (ShouldClearSavedMetrics()) { | 401 if (ShouldClearSavedMetrics()) { |
402 PrefService* local_state = g_browser_process->local_state(); | 402 PrefService* local_state = g_browser_process->local_state(); |
403 local_state->ClearPref(metrics::prefs::kMetricsInitialLogs); | 403 local_state->ClearPref(metrics::prefs::kMetricsInitialLogs); |
404 local_state->ClearPref(metrics::prefs::kMetricsOngoingLogs); | 404 local_state->ClearPref(metrics::prefs::kMetricsOngoingLogs); |
405 } | 405 } |
406 | 406 |
407 metrics_service_.reset(new metrics::MetricsService( | 407 metrics_service_.reset(new metrics::MetricsService( |
408 metrics_state_manager_, this, g_browser_process->local_state())); | 408 metrics_state_manager_, this, g_browser_process->local_state())); |
409 | 409 |
410 // Gets access to persistent metrics shared by sub-processes. | 410 // Gets access to persistent metrics shared by sub-processes. |
| 411 std::unique_ptr<SubprocessMetricsProvider> subprocess_metrics_provider( |
| 412 new SubprocessMetricsProvider()); |
| 413 subprocess_metrics_provider->EnableSubprocessTracking(); |
411 metrics_service_->RegisterMetricsProvider( | 414 metrics_service_->RegisterMetricsProvider( |
412 std::unique_ptr<metrics::MetricsProvider>( | 415 std::move(subprocess_metrics_provider)); |
413 new SubprocessMetricsProvider())); | |
414 | 416 |
415 // Register metrics providers. | 417 // Register metrics providers. |
416 #if defined(ENABLE_EXTENSIONS) | 418 #if defined(ENABLE_EXTENSIONS) |
417 metrics_service_->RegisterMetricsProvider( | 419 metrics_service_->RegisterMetricsProvider( |
418 std::unique_ptr<metrics::MetricsProvider>( | 420 std::unique_ptr<metrics::MetricsProvider>( |
419 new ExtensionsMetricsProvider(metrics_state_manager_))); | 421 new ExtensionsMetricsProvider(metrics_state_manager_))); |
420 #endif | 422 #endif |
421 metrics_service_->RegisterMetricsProvider( | 423 metrics_service_->RegisterMetricsProvider( |
422 std::unique_ptr<metrics::MetricsProvider>( | 424 std::unique_ptr<metrics::MetricsProvider>( |
423 new metrics::NetworkMetricsProvider( | 425 new metrics::NetworkMetricsProvider( |
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
793 } | 795 } |
794 } | 796 } |
795 | 797 |
796 void ChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) { | 798 void ChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) { |
797 metrics_service_->OnApplicationNotIdle(); | 799 metrics_service_->OnApplicationNotIdle(); |
798 } | 800 } |
799 | 801 |
800 bool ChromeMetricsServiceClient::IsUMACellularUploadLogicEnabled() { | 802 bool ChromeMetricsServiceClient::IsUMACellularUploadLogicEnabled() { |
801 return metrics::IsCellularLogicEnabled(); | 803 return metrics::IsCellularLogicEnabled(); |
802 } | 804 } |
OLD | NEW |