OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 //------------------------------------------------------------------------------ | 5 //------------------------------------------------------------------------------ |
6 // Description of the life cycle of a instance of MetricsService. | 6 // Description of the life cycle of a instance of MetricsService. |
7 // | 7 // |
8 // OVERVIEW | 8 // OVERVIEW |
9 // | 9 // |
10 // A MetricsService instance is typically created at application startup. It is | 10 // A MetricsService instance is typically created at application startup. It is |
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
180 #include "base/threading/platform_thread.h" | 180 #include "base/threading/platform_thread.h" |
181 #include "base/threading/thread.h" | 181 #include "base/threading/thread.h" |
182 #include "base/threading/thread_restrictions.h" | 182 #include "base/threading/thread_restrictions.h" |
183 #include "base/tracked_objects.h" | 183 #include "base/tracked_objects.h" |
184 #include "base/values.h" | 184 #include "base/values.h" |
185 #include "chrome/browser/browser_process.h" | 185 #include "chrome/browser/browser_process.h" |
186 #include "chrome/browser/chrome_notification_types.h" | 186 #include "chrome/browser/chrome_notification_types.h" |
187 #include "chrome/browser/io_thread.h" | 187 #include "chrome/browser/io_thread.h" |
188 #include "chrome/browser/metrics/chrome_stability_metrics_provider.h" | 188 #include "chrome/browser/metrics/chrome_stability_metrics_provider.h" |
189 #include "chrome/browser/metrics/compression_utils.h" | 189 #include "chrome/browser/metrics/compression_utils.h" |
| 190 #include "chrome/browser/metrics/gpu_metrics_provider.h" |
190 #include "chrome/browser/metrics/metrics_log.h" | 191 #include "chrome/browser/metrics/metrics_log.h" |
191 #include "chrome/browser/metrics/metrics_state_manager.h" | 192 #include "chrome/browser/metrics/metrics_state_manager.h" |
192 #include "chrome/browser/metrics/network_metrics_provider.h" | 193 #include "chrome/browser/metrics/network_metrics_provider.h" |
193 #include "chrome/browser/metrics/omnibox_metrics_provider.h" | 194 #include "chrome/browser/metrics/omnibox_metrics_provider.h" |
194 #include "chrome/browser/metrics/tracking_synchronizer.h" | 195 #include "chrome/browser/metrics/tracking_synchronizer.h" |
195 #include "chrome/common/chrome_constants.h" | 196 #include "chrome/common/chrome_constants.h" |
196 #include "chrome/common/pref_names.h" | 197 #include "chrome/common/pref_names.h" |
197 #include "chrome/common/variations/variations_util.h" | 198 #include "chrome/common/variations/variations_util.h" |
198 #include "components/metrics/metrics_log_base.h" | 199 #include "components/metrics/metrics_log_base.h" |
199 #include "components/metrics/metrics_log_manager.h" | 200 #include "components/metrics/metrics_log_manager.h" |
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
445 g_browser_process->local_state()))); | 446 g_browser_process->local_state()))); |
446 #endif // defined(OS_ANDROID) | 447 #endif // defined(OS_ANDROID) |
447 | 448 |
448 // TODO(asvitkine): Move these out of MetricsService. | 449 // TODO(asvitkine): Move these out of MetricsService. |
449 RegisterMetricsProvider( | 450 RegisterMetricsProvider( |
450 scoped_ptr<metrics::MetricsProvider>(new NetworkMetricsProvider)); | 451 scoped_ptr<metrics::MetricsProvider>(new NetworkMetricsProvider)); |
451 RegisterMetricsProvider( | 452 RegisterMetricsProvider( |
452 scoped_ptr<metrics::MetricsProvider>(new OmniboxMetricsProvider)); | 453 scoped_ptr<metrics::MetricsProvider>(new OmniboxMetricsProvider)); |
453 RegisterMetricsProvider( | 454 RegisterMetricsProvider( |
454 scoped_ptr<metrics::MetricsProvider>(new ChromeStabilityMetricsProvider)); | 455 scoped_ptr<metrics::MetricsProvider>(new ChromeStabilityMetricsProvider)); |
| 456 RegisterMetricsProvider( |
| 457 scoped_ptr<metrics::MetricsProvider>(new GPUMetricsProvider())); |
455 | 458 |
456 #if defined(OS_WIN) | 459 #if defined(OS_WIN) |
457 google_update_metrics_provider_ = new GoogleUpdateMetricsProviderWin; | 460 google_update_metrics_provider_ = new GoogleUpdateMetricsProviderWin; |
458 RegisterMetricsProvider(scoped_ptr<metrics::MetricsProvider>( | 461 RegisterMetricsProvider(scoped_ptr<metrics::MetricsProvider>( |
459 google_update_metrics_provider_)); | 462 google_update_metrics_provider_)); |
460 #endif | 463 #endif |
461 BrowserChildProcessObserver::Add(this); | 464 BrowserChildProcessObserver::Add(this); |
462 } | 465 } |
463 | 466 |
464 MetricsService::~MetricsService() { | 467 MetricsService::~MetricsService() { |
(...skipping 1205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1670 | 1673 |
1671 RecordPluginChanges(pref); | 1674 RecordPluginChanges(pref); |
1672 } | 1675 } |
1673 | 1676 |
1674 // static | 1677 // static |
1675 bool MetricsService::IsPluginProcess(int process_type) { | 1678 bool MetricsService::IsPluginProcess(int process_type) { |
1676 return (process_type == content::PROCESS_TYPE_PLUGIN || | 1679 return (process_type == content::PROCESS_TYPE_PLUGIN || |
1677 process_type == content::PROCESS_TYPE_PPAPI_PLUGIN || | 1680 process_type == content::PROCESS_TYPE_PPAPI_PLUGIN || |
1678 process_type == content::PROCESS_TYPE_PPAPI_BROKER); | 1681 process_type == content::PROCESS_TYPE_PPAPI_BROKER); |
1679 } | 1682 } |
OLD | NEW |