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

Side by Side Diff: chrome/browser/metrics/metrics_service.h

Issue 289303003: [Metrics] Move ExternalMetrics ownership to ChromeBrowserMainPartsChromeos (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 // This file defines a service that collects information about the user 5 // This file defines a service that collects information about the user
6 // experience in order to help improve future versions of the app. 6 // experience in order to help improve future versions of the app.
7 7
8 #ifndef CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ 8 #ifndef CHROME_BROWSER_METRICS_METRICS_SERVICE_H_
9 #define CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ 9 #define CHROME_BROWSER_METRICS_METRICS_SERVICE_H_
10 10
(...skipping 17 matching lines...) Expand all
28 #include "chrome/common/metrics/metrics_service_base.h" 28 #include "chrome/common/metrics/metrics_service_base.h"
29 #include "chrome/installer/util/google_update_settings.h" 29 #include "chrome/installer/util/google_update_settings.h"
30 #include "content/public/browser/browser_child_process_observer.h" 30 #include "content/public/browser/browser_child_process_observer.h"
31 #include "content/public/browser/notification_observer.h" 31 #include "content/public/browser/notification_observer.h"
32 #include "content/public/browser/notification_registrar.h" 32 #include "content/public/browser/notification_registrar.h"
33 #include "content/public/browser/user_metrics.h" 33 #include "content/public/browser/user_metrics.h"
34 #include "net/url_request/url_fetcher_delegate.h" 34 #include "net/url_request/url_fetcher_delegate.h"
35 35
36 #if defined(OS_ANDROID) 36 #if defined(OS_ANDROID)
37 #include "chrome/browser/android/activity_type_ids.h" 37 #include "chrome/browser/android/activity_type_ids.h"
38 #elif defined(OS_CHROMEOS)
39 #include "chrome/browser/chromeos/external_metrics.h"
40 #endif 38 #endif
41 39
42 class ChromeBrowserMetricsServiceObserver; 40 class ChromeBrowserMetricsServiceObserver;
43 class MetricsReportingScheduler; 41 class MetricsReportingScheduler;
44 class PrefService; 42 class PrefService;
45 class PrefRegistrySimple; 43 class PrefRegistrySimple;
46 class Profile; 44 class Profile;
47 class TemplateURLService; 45 class TemplateURLService;
48 46
49 namespace { 47 namespace {
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 // This count is eventually send via UMA logs. 246 // This count is eventually send via UMA logs.
249 void RecordBreakpadHasDebugger(bool has_debugger); 247 void RecordBreakpadHasDebugger(bool has_debugger);
250 248
251 #if defined(OS_WIN) 249 #if defined(OS_WIN)
252 // Counts (and removes) the browser crash dump attempt signals left behind by 250 // Counts (and removes) the browser crash dump attempt signals left behind by
253 // any previous browser processes which generated a crash dump. 251 // any previous browser processes which generated a crash dump.
254 void CountBrowserCrashDumpAttempts(); 252 void CountBrowserCrashDumpAttempts();
255 #endif // OS_WIN 253 #endif // OS_WIN
256 254
257 #if defined(OS_CHROMEOS) 255 #if defined(OS_CHROMEOS)
258 // Start the external metrics service, which collects metrics from Chrome OS
259 // and passes them to UMA.
260 void StartExternalMetrics();
261
262 // Records a Chrome OS crash. 256 // Records a Chrome OS crash.
263 void LogChromeOSCrash(const std::string &crash_type); 257 void LogChromeOSCrash(const std::string &crash_type);
264 #endif 258 #endif
265 259
266 bool recording_active() const; 260 bool recording_active() const;
267 bool reporting_active() const; 261 bool reporting_active() const;
268 262
269 void LogPluginLoadingError(const base::FilePath& plugin_path); 263 void LogPluginLoadingError(const base::FilePath& plugin_path);
270 264
271 // Redundant test to ensure that we are notified of a clean exit. 265 // Redundant test to ensure that we are notified of a clean exit.
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
566 // The scheduler for determining when uploads should happen. 560 // The scheduler for determining when uploads should happen.
567 scoped_ptr<MetricsReportingScheduler> scheduler_; 561 scoped_ptr<MetricsReportingScheduler> scheduler_;
568 562
569 // Indicates that an asynchronous reporting step is running. 563 // Indicates that an asynchronous reporting step is running.
570 // This is used only for debugging. 564 // This is used only for debugging.
571 bool waiting_for_asynchronous_reporting_step_; 565 bool waiting_for_asynchronous_reporting_step_;
572 566
573 // Number of async histogram fetch requests in progress. 567 // Number of async histogram fetch requests in progress.
574 int num_async_histogram_fetches_in_progress_; 568 int num_async_histogram_fetches_in_progress_;
575 569
576 #if defined(OS_CHROMEOS)
577 // The external metric service is used to log ChromeOS UMA events.
578 scoped_refptr<chromeos::ExternalMetrics> external_metrics_;
579 #endif
580
581 // Stores the time of the first call to |GetUptimes()|. 570 // Stores the time of the first call to |GetUptimes()|.
582 base::TimeTicks first_updated_time_; 571 base::TimeTicks first_updated_time_;
583 572
584 // Stores the time of the last call to |GetUptimes()|. 573 // Stores the time of the last call to |GetUptimes()|.
585 base::TimeTicks last_updated_time_; 574 base::TimeTicks last_updated_time_;
586 575
587 // Execution phase the browser is in. 576 // Execution phase the browser is in.
588 static ExecutionPhase execution_phase_; 577 static ExecutionPhase execution_phase_;
589 578
590 // Reduntant marker to check that we completed our shutdown, and set the 579 // Reduntant marker to check that we completed our shutdown, and set the
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
640 629
641 // Registers/unregisters |observer| to receive MetricsLog notifications 630 // Registers/unregisters |observer| to receive MetricsLog notifications
642 // from metrics service. 631 // from metrics service.
643 static void AddMetricsServiceObserver(MetricsServiceObserver* observer); 632 static void AddMetricsServiceObserver(MetricsServiceObserver* observer);
644 static void RemoveMetricsServiceObserver(MetricsServiceObserver* observer); 633 static void RemoveMetricsServiceObserver(MetricsServiceObserver* observer);
645 634
646 DISALLOW_IMPLICIT_CONSTRUCTORS(MetricsServiceHelper); 635 DISALLOW_IMPLICIT_CONSTRUCTORS(MetricsServiceHelper);
647 }; 636 };
648 637
649 #endif // CHROME_BROWSER_METRICS_METRICS_SERVICE_H_ 638 #endif // CHROME_BROWSER_METRICS_METRICS_SERVICE_H_
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/chrome_browser_main_chromeos.cc ('k') | chrome/browser/metrics/metrics_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698