| Index: blimp/engine/app/blimp_stability_metrics_provider.cc
|
| diff --git a/chrome/browser/metrics/chrome_stability_metrics_provider.cc b/blimp/engine/app/blimp_stability_metrics_provider.cc
|
| similarity index 58%
|
| copy from chrome/browser/metrics/chrome_stability_metrics_provider.cc
|
| copy to blimp/engine/app/blimp_stability_metrics_provider.cc
|
| index 0742257d1b88aaba350d1e8a21988028e7c157a0..61da99a14d1cbdae0ae46cc8a9135172fdae5d05 100644
|
| --- a/chrome/browser/metrics/chrome_stability_metrics_provider.cc
|
| +++ b/blimp/engine/app/blimp_stability_metrics_provider.cc
|
| @@ -1,8 +1,8 @@
|
| -// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Copyright 2016 The Chromium Authors. All rights reserved.
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "chrome/browser/metrics/chrome_stability_metrics_provider.h"
|
| +#include "blimp/engine/app/blimp_stability_metrics_provider.h"
|
|
|
| #include <vector>
|
|
|
| @@ -10,35 +10,22 @@
|
| #include "base/metrics/histogram.h"
|
| #include "base/metrics/sparse_histogram.h"
|
| #include "build/build_config.h"
|
| -#include "chrome/browser/chrome_notification_types.h"
|
| #include "content/public/browser/child_process_data.h"
|
| #include "content/public/browser/notification_service.h"
|
| +#include "content/public/browser/notification_types.h"
|
| #include "content/public/browser/render_process_host.h"
|
|
|
| -#if defined(ENABLE_EXTENSIONS)
|
| -#include "extensions/browser/process_map.h"
|
| -#endif
|
| -
|
| -#if defined(ENABLE_PLUGINS)
|
| -#include "chrome/browser/metrics/plugin_metrics_provider.h"
|
| -#endif
|
| -
|
| -#if defined(OS_WIN)
|
| -#include <windows.h> // Needed for STATUS_* codes
|
| -#include "chrome/common/metrics_constants_util_win.h"
|
| -#endif
|
| -
|
| -ChromeStabilityMetricsProvider::ChromeStabilityMetricsProvider(
|
| +BlimpStabilityMetricsProvider::BlimpStabilityMetricsProvider(
|
| PrefService* local_state)
|
| : helper_(local_state) {
|
| BrowserChildProcessObserver::Add(this);
|
| }
|
|
|
| -ChromeStabilityMetricsProvider::~ChromeStabilityMetricsProvider() {
|
| +BlimpStabilityMetricsProvider::~BlimpStabilityMetricsProvider() {
|
| BrowserChildProcessObserver::Remove(this);
|
| }
|
|
|
| -void ChromeStabilityMetricsProvider::OnRecordingEnabled() {
|
| +void BlimpStabilityMetricsProvider::OnRecordingEnabled() {
|
| registrar_.Add(this,
|
| content::NOTIFICATION_LOAD_START,
|
| content::NotificationService::AllSources());
|
| @@ -50,20 +37,20 @@ void ChromeStabilityMetricsProvider::OnRecordingEnabled() {
|
| content::NotificationService::AllSources());
|
| }
|
|
|
| -void ChromeStabilityMetricsProvider::OnRecordingDisabled() {
|
| +void BlimpStabilityMetricsProvider::OnRecordingDisabled() {
|
| registrar_.RemoveAll();
|
| }
|
|
|
| -void ChromeStabilityMetricsProvider::ProvideStabilityMetrics(
|
| +void BlimpStabilityMetricsProvider::ProvideStabilityMetrics(
|
| metrics::SystemProfileProto* system_profile_proto) {
|
| helper_.ProvideStabilityMetrics(system_profile_proto);
|
| }
|
|
|
| -void ChromeStabilityMetricsProvider::ClearSavedStabilityMetrics() {
|
| +void BlimpStabilityMetricsProvider::ClearSavedStabilityMetrics() {
|
| helper_.ClearSavedStabilityMetrics();
|
| }
|
|
|
| -void ChromeStabilityMetricsProvider::Observe(
|
| +void BlimpStabilityMetricsProvider::Observe(
|
| int type,
|
| const content::NotificationSource& source,
|
| const content::NotificationDetails& details) {
|
| @@ -78,14 +65,6 @@ void ChromeStabilityMetricsProvider::Observe(
|
| content::Details<content::RenderProcessHost::RendererClosedDetails>(
|
| details).ptr();
|
| bool was_extension_process = false;
|
| -#if defined(ENABLE_EXTENSIONS)
|
| - content::RenderProcessHost* host =
|
| - content::Source<content::RenderProcessHost>(source).ptr();
|
| - if (extensions::ProcessMap::Get(host->GetBrowserContext())
|
| - ->Contains(host->GetID())) {
|
| - was_extension_process = true;
|
| - }
|
| -#endif
|
| helper_.LogRendererCrash(was_extension_process, process_details->status,
|
| process_details->exit_code);
|
| break;
|
| @@ -101,15 +80,8 @@ void ChromeStabilityMetricsProvider::Observe(
|
| }
|
| }
|
|
|
| -void ChromeStabilityMetricsProvider::BrowserChildProcessCrashed(
|
| +void BlimpStabilityMetricsProvider::BrowserChildProcessCrashed(
|
| const content::ChildProcessData& data,
|
| int exit_code) {
|
| -#if defined(ENABLE_PLUGINS)
|
| - // Exclude plugin crashes from the count below because we report them via
|
| - // a separate UMA metric.
|
| - if (PluginMetricsProvider::IsPluginProcess(data.process_type))
|
| - return;
|
| -#endif
|
| -
|
| helper_.BrowserChildProcessCrashed();
|
| }
|
|
|