diff options
author | gunsch <gunsch@chromium.org> | 2014-09-19 16:34:49 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-09-19 23:35:19 +0000 |
commit | 25deaa9ef9f22d2da25872905bb25434e63d49e3 (patch) | |
tree | ccabdf815385354aea097de0424554c968a5fd6b /chromecast/metrics | |
parent | b316e9276bb4469277850272e3b2057465b063a1 (diff) | |
download | chromium_src-25deaa9ef9f22d2da25872905bb25434e63d49e3.zip chromium_src-25deaa9ef9f22d2da25872905bb25434e63d49e3.tar.gz chromium_src-25deaa9ef9f22d2da25872905bb25434e63d49e3.tar.bz2 |
Chromecast: adds Gpu/Network/Profiler metrics providers.
R=asvitkine@chromium.org,lcwu@chromium.org
BUG=400925
Review URL: https://codereview.chromium.org/587853002
Cr-Commit-Position: refs/heads/master@{#295810}
Diffstat (limited to 'chromecast/metrics')
-rw-r--r-- | chromecast/metrics/cast_metrics_service_client.cc | 20 | ||||
-rw-r--r-- | chromecast/metrics/cast_metrics_service_client.h | 6 |
2 files changed, 23 insertions, 3 deletions
diff --git a/chromecast/metrics/cast_metrics_service_client.cc b/chromecast/metrics/cast_metrics_service_client.cc index 6409aba..637cd40 100644 --- a/chromecast/metrics/cast_metrics_service_client.cc +++ b/chromecast/metrics/cast_metrics_service_client.cc @@ -10,10 +10,13 @@ #include "chromecast/common/chromecast_switches.h" #include "chromecast/metrics/platform_metrics_providers.h" #include "components/metrics/client_info.h" +#include "components/metrics/gpu/gpu_metrics_provider.h" #include "components/metrics/metrics_provider.h" #include "components/metrics/metrics_service.h" #include "components/metrics/metrics_state_manager.h" #include "components/metrics/net/net_metrics_log_uploader.h" +#include "components/metrics/net/network_metrics_provider.h" +#include "components/metrics/profiler/profiler_metrics_provider.h" namespace chromecast { namespace metrics { @@ -31,9 +34,12 @@ scoped_ptr<::metrics::ClientInfo> LoadClientInfo() { // static CastMetricsServiceClient* CastMetricsServiceClient::Create( + base::TaskRunner* io_task_runner, PrefService* pref_service, net::URLRequestContextGetter* request_context) { - return new CastMetricsServiceClient(pref_service, request_context); + return new CastMetricsServiceClient(io_task_runner, + pref_service, + request_context); } void CastMetricsServiceClient::SetMetricsClientId( @@ -107,6 +113,7 @@ void CastMetricsServiceClient::EnableMetricsService(bool enabled) { } CastMetricsServiceClient::CastMetricsServiceClient( + base::TaskRunner* io_task_runner, PrefService* pref_service, net::URLRequestContextGetter* request_context) : metrics_state_manager_(::metrics::MetricsStateManager::Create( @@ -129,8 +136,15 @@ CastMetricsServiceClient::CastMetricsServiceClient( // value. metrics_state_manager_->ForceClientIdCreation(); - // TODO(gunsch): Add the following: GPUMetricsProvider, - // NetworkMetricsProvider, ProfilerMetricsProvider. See: crbug/404791 + metrics_service_->RegisterMetricsProvider( + scoped_ptr< ::metrics::MetricsProvider>( + new ::metrics::GPUMetricsProvider)); + metrics_service_->RegisterMetricsProvider( + scoped_ptr< ::metrics::MetricsProvider>( + new NetworkMetricsProvider(io_task_runner))); + metrics_service_->RegisterMetricsProvider( + scoped_ptr< ::metrics::MetricsProvider>( + new ::metrics::ProfilerMetricsProvider)); RegisterPlatformMetricsProviders(metrics_service_.get()); metrics_service_->InitializeMetricsRecordingState(); diff --git a/chromecast/metrics/cast_metrics_service_client.h b/chromecast/metrics/cast_metrics_service_client.h index 24751bb..fc55aea 100644 --- a/chromecast/metrics/cast_metrics_service_client.h +++ b/chromecast/metrics/cast_metrics_service_client.h @@ -14,6 +14,10 @@ class PrefService; +namespace base { +class TaskRunner; +} + namespace metrics { class MetricsService; class MetricsStateManager; @@ -31,6 +35,7 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient { virtual ~CastMetricsServiceClient(); static CastMetricsServiceClient* Create( + base::TaskRunner* io_task_runner, PrefService* pref_service, net::URLRequestContextGetter* request_context); @@ -55,6 +60,7 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient { private: CastMetricsServiceClient( + base::TaskRunner* io_task_runner, PrefService* pref_service, net::URLRequestContextGetter* request_context); |