Chromium Code Reviews| Index: chrome/browser/metrics/metrics_service.cc |
| diff --git a/chrome/browser/metrics/metrics_service.cc b/chrome/browser/metrics/metrics_service.cc |
| index 23972d8dae04067bde7242b4eda594106d17250d..19bb0b9f0a3e6d905ca5e00248d99a55b0ef4974 100644 |
| --- a/chrome/browser/metrics/metrics_service.cc |
| +++ b/chrome/browser/metrics/metrics_service.cc |
| @@ -227,6 +227,7 @@ |
| #if defined(OS_CHROMEOS) |
| #include "chrome/browser/chromeos/settings/cros_settings.h" |
|
Alexei Svitkine (slow)
2014/05/23 08:41:47
Do you mind doing the hardware class fetching and
Alexei Svitkine (slow)
2014/05/23 08:42:31
(Similar to what GoogleUpdateMetricsProviderWin do
blundell
2014/05/23 12:09:22
I'd prefer to leave this as a followup (and create
Alexei Svitkine (slow)
2014/05/23 14:16:20
OK
|
| +#include "chrome/browser/metrics/chromeos_metrics_provider.h" |
| #include "chromeos/system/statistics_provider.h" |
| #endif |
| @@ -490,6 +491,12 @@ MetricsService::MetricsService(metrics::MetricsStateManager* state_manager, |
| RegisterMetricsProvider(scoped_ptr<metrics::MetricsProvider>( |
| google_update_metrics_provider_)); |
| #endif |
| + |
| +#if defined(OS_CHROMEOS) |
| + RegisterMetricsProvider( |
| + scoped_ptr<metrics::MetricsProvider>(new ChromeOSMetricsProvider)); |
| +#endif |
| + |
| BrowserChildProcessObserver::Add(this); |
| } |
| @@ -1032,6 +1039,8 @@ void MetricsService::NotifyOnDidCreateMetricsLog() { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| FOR_EACH_OBSERVER( |
| MetricsServiceObserver, observers_, OnDidCreateMetricsLog()); |
| + for (size_t i = 0; i < metrics_providers_.size(); ++i) |
| + metrics_providers_[i]->OnDidCreateMetricsLog(); |
| } |
| //------------------------------------------------------------------------------ |
| @@ -1727,22 +1736,6 @@ void MetricsService::LogCleanShutdown() { |
| MetricsService::SHUTDOWN_COMPLETE); |
| } |
| -#if defined(OS_CHROMEOS) |
| -void MetricsService::LogChromeOSCrash(const std::string &crash_type) { |
| - if (crash_type == "user") |
| - IncrementPrefValue(prefs::kStabilityOtherUserCrashCount); |
| - else if (crash_type == "kernel") |
| - IncrementPrefValue(prefs::kStabilityKernelCrashCount); |
| - else if (crash_type == "uncleanshutdown") |
| - IncrementPrefValue(prefs::kStabilitySystemUncleanShutdownCount); |
| - else |
| - NOTREACHED() << "Unexpected Chrome OS crash type " << crash_type; |
| - // Wake up metrics logs sending if necessary now that new |
| - // log data is available. |
| - HandleIdleSinceLastTransmission(false); |
| -} |
| -#endif // OS_CHROMEOS |
| - |
| void MetricsService::LogPluginLoadingError(const base::FilePath& plugin_path) { |
| content::WebPluginInfo plugin; |
| bool success = |