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 <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 #endif | 58 #endif |
59 | 59 |
60 #if defined(OS_CHROMEOS) | 60 #if defined(OS_CHROMEOS) |
61 #include "chrome/browser/metrics/chromeos_metrics_provider.h" | 61 #include "chrome/browser/metrics/chromeos_metrics_provider.h" |
62 #endif | 62 #endif |
63 | 63 |
64 #if defined(OS_WIN) | 64 #if defined(OS_WIN) |
65 #include <windows.h> | 65 #include <windows.h> |
66 #include "base/win/registry.h" | 66 #include "base/win/registry.h" |
67 #include "chrome/browser/metrics/google_update_metrics_provider_win.h" | 67 #include "chrome/browser/metrics/google_update_metrics_provider_win.h" |
| 68 #include "components/browser_watcher/watcher_metrics_provider_win.h" |
68 #endif | 69 #endif |
69 | 70 |
70 #if !defined(OS_CHROMEOS) && !defined(OS_IOS) | 71 #if !defined(OS_CHROMEOS) && !defined(OS_IOS) |
71 #include "chrome/browser/metrics/signin_status_metrics_provider.h" | 72 #include "chrome/browser/metrics/signin_status_metrics_provider.h" |
72 #endif | 73 #endif |
73 | 74 |
74 namespace { | 75 namespace { |
75 | 76 |
76 // This specifies the amount of time to wait for all renderers to send their | 77 // This specifies the amount of time to wait for all renderers to send their |
77 // data. | 78 // data. |
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 #if defined(OS_ANDROID) | 315 #if defined(OS_ANDROID) |
315 metrics_service_->RegisterMetricsProvider( | 316 metrics_service_->RegisterMetricsProvider( |
316 scoped_ptr<metrics::MetricsProvider>( | 317 scoped_ptr<metrics::MetricsProvider>( |
317 new AndroidMetricsProvider(g_browser_process->local_state()))); | 318 new AndroidMetricsProvider(g_browser_process->local_state()))); |
318 #endif // defined(OS_ANDROID) | 319 #endif // defined(OS_ANDROID) |
319 | 320 |
320 #if defined(OS_WIN) | 321 #if defined(OS_WIN) |
321 google_update_metrics_provider_ = new GoogleUpdateMetricsProviderWin; | 322 google_update_metrics_provider_ = new GoogleUpdateMetricsProviderWin; |
322 metrics_service_->RegisterMetricsProvider( | 323 metrics_service_->RegisterMetricsProvider( |
323 scoped_ptr<metrics::MetricsProvider>(google_update_metrics_provider_)); | 324 scoped_ptr<metrics::MetricsProvider>(google_update_metrics_provider_)); |
| 325 |
| 326 watcher_metrics_provider_ = new browser_watcher::WatcherMetricsProviderWin( |
| 327 chrome::kBrowserExitCodesRegistryPath); |
| 328 metrics_service_->RegisterMetricsProvider( |
| 329 scoped_ptr<metrics::MetricsProvider>(watcher_metrics_provider_)); |
324 #endif // defined(OS_WIN) | 330 #endif // defined(OS_WIN) |
325 | 331 |
326 #if defined(ENABLE_PLUGINS) | 332 #if defined(ENABLE_PLUGINS) |
327 plugin_metrics_provider_ = | 333 plugin_metrics_provider_ = |
328 new PluginMetricsProvider(g_browser_process->local_state()); | 334 new PluginMetricsProvider(g_browser_process->local_state()); |
329 metrics_service_->RegisterMetricsProvider( | 335 metrics_service_->RegisterMetricsProvider( |
330 scoped_ptr<metrics::MetricsProvider>(plugin_metrics_provider_)); | 336 scoped_ptr<metrics::MetricsProvider>(plugin_metrics_provider_)); |
331 #endif // defined(ENABLE_PLUGINS) | 337 #endif // defined(ENABLE_PLUGINS) |
332 | 338 |
333 #if defined(OS_CHROMEOS) | 339 #if defined(OS_CHROMEOS) |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
553 // Capture the histogram samples. | 559 // Capture the histogram samples. |
554 if (dumps_with_crash != 0) | 560 if (dumps_with_crash != 0) |
555 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithCrash", dumps_with_crash); | 561 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithCrash", dumps_with_crash); |
556 if (dumps_with_no_crash != 0) | 562 if (dumps_with_no_crash != 0) |
557 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithNoCrash", dumps_with_no_crash); | 563 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithNoCrash", dumps_with_no_crash); |
558 int total_dumps = dumps_with_crash + dumps_with_no_crash; | 564 int total_dumps = dumps_with_crash + dumps_with_no_crash; |
559 if (total_dumps != 0) | 565 if (total_dumps != 0) |
560 UMA_HISTOGRAM_COUNTS("Chrome.BrowserCrashDumpAttempts", total_dumps); | 566 UMA_HISTOGRAM_COUNTS("Chrome.BrowserCrashDumpAttempts", total_dumps); |
561 } | 567 } |
562 #endif // defined(OS_WIN) | 568 #endif // defined(OS_WIN) |
OLD | NEW |