Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(34)

Unified Diff: chromecast/browser/metrics/cast_stability_metrics_provider.h

Issue 701633002: Chromecast: adds handler to log metrics from external processes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: style nit Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chromecast/browser/metrics/cast_stability_metrics_provider.h
diff --git a/chromecast/browser/metrics/cast_stability_metrics_provider.h b/chromecast/browser/metrics/cast_stability_metrics_provider.h
index 635fc068edafe9e656083be6936f8982ed904c9a..eea85054057cdf8c66afbb81874029a705892d6a 100644
--- a/chromecast/browser/metrics/cast_stability_metrics_provider.h
+++ b/chromecast/browser/metrics/cast_stability_metrics_provider.h
@@ -13,7 +13,6 @@
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_registrar.h"
-class MetricsService;
class PrefRegistrySimple;
namespace content {
@@ -21,6 +20,10 @@ class RenderProcessHost;
class WebContents;
}
+namespace metrics {
+class MetricsService;
+}
+
namespace chromecast {
namespace metrics {
@@ -34,7 +37,8 @@ class CastStabilityMetricsProvider
// Registers local state prefs used by this class.
static void RegisterPrefs(PrefRegistrySimple* registry);
- CastStabilityMetricsProvider();
+ explicit CastStabilityMetricsProvider(
+ ::metrics::MetricsService* metrics_service);
virtual ~CastStabilityMetricsProvider();
// metrics::MetricsDataProvider implementation:
@@ -43,6 +47,9 @@ class CastStabilityMetricsProvider
virtual void ProvideStabilityMetrics(
::metrics::SystemProfileProto* system_profile_proto) override;
+ // Logs an external crash, presumably from the ExternalMetrics service.
+ void LogExternalCrash(const std::string& crash_type);
+
private:
// content::NotificationObserver implementation:
virtual void Observe(int type,
@@ -64,6 +71,11 @@ class CastStabilityMetricsProvider
// Registrar for receiving stability-related notifications.
content::NotificationRegistrar registrar_;
+ // Reference to the current MetricsService. Raw pointer is safe, since
+ // MetricsService is responsible for the lifetime of
+ // CastStabilityMetricsProvider.
+ ::metrics::MetricsService* metrics_service_;
+
DISALLOW_COPY_AND_ASSIGN(CastStabilityMetricsProvider);
};

Powered by Google App Engine
This is Rietveld 408576698