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

Side by Side Diff: chrome/browser/metrics/chrome_metrics_service_client.cc

Issue 552703002: Fix compilation on Windows with enable_printing=2. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Mon Sep 8 17:26:04 PDT 2014 Created 6 years, 3 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
OLDNEW
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 25 matching lines...) Expand all
36 #include "chrome/common/render_messages.h" 36 #include "chrome/common/render_messages.h"
37 #include "components/metrics/metrics_service.h" 37 #include "components/metrics/metrics_service.h"
38 #include "components/metrics/net/net_metrics_log_uploader.h" 38 #include "components/metrics/net/net_metrics_log_uploader.h"
39 #include "content/public/browser/browser_thread.h" 39 #include "content/public/browser/browser_thread.h"
40 #include "content/public/browser/histogram_fetcher.h" 40 #include "content/public/browser/histogram_fetcher.h"
41 #include "content/public/browser/notification_service.h" 41 #include "content/public/browser/notification_service.h"
42 #include "content/public/browser/render_process_host.h" 42 #include "content/public/browser/render_process_host.h"
43 43
44 #if defined(OS_ANDROID) 44 #if defined(OS_ANDROID)
45 #include "chrome/browser/metrics/android_metrics_provider.h" 45 #include "chrome/browser/metrics/android_metrics_provider.h"
46 #else 46 #endif
47
48 #if defined(ENABLE_FULL_PRINTING)
47 #include "chrome/browser/service_process/service_process_control.h" 49 #include "chrome/browser/service_process/service_process_control.h"
48 #endif 50 #endif
49 51
50 #if defined(ENABLE_EXTENSIONS) 52 #if defined(ENABLE_EXTENSIONS)
51 #include "chrome/browser/metrics/extensions_metrics_provider.h" 53 #include "chrome/browser/metrics/extensions_metrics_provider.h"
52 #endif 54 #endif
53 55
54 #if defined(ENABLE_PLUGINS) 56 #if defined(ENABLE_PLUGINS)
55 #include "chrome/browser/metrics/plugin_metrics_provider.h" 57 #include "chrome/browser/metrics/plugin_metrics_provider.h"
56 #endif 58 #endif
(...skipping 330 matching lines...) Expand 10 before | Expand all | Expand 10 after
387 // Create a callback_task for OnHistogramSynchronizationDone. 389 // Create a callback_task for OnHistogramSynchronizationDone.
388 base::Closure callback = base::Bind( 390 base::Closure callback = base::Bind(
389 &ChromeMetricsServiceClient::OnHistogramSynchronizationDone, 391 &ChromeMetricsServiceClient::OnHistogramSynchronizationDone,
390 weak_ptr_factory_.GetWeakPtr()); 392 weak_ptr_factory_.GetWeakPtr());
391 393
392 base::TimeDelta timeout = 394 base::TimeDelta timeout =
393 base::TimeDelta::FromMilliseconds(kMaxHistogramGatheringWaitDuration); 395 base::TimeDelta::FromMilliseconds(kMaxHistogramGatheringWaitDuration);
394 396
395 DCHECK_EQ(num_async_histogram_fetches_in_progress_, 0); 397 DCHECK_EQ(num_async_histogram_fetches_in_progress_, 0);
396 398
397 #if defined(OS_ANDROID) 399 #if !defined(ENABLE_FULL_PRINTING)
398 // Android has no service process.
399 num_async_histogram_fetches_in_progress_ = 1; 400 num_async_histogram_fetches_in_progress_ = 1;
400 #else // OS_ANDROID 401 #else // !ENABLE_FULL_PRINTING
401 num_async_histogram_fetches_in_progress_ = 2; 402 num_async_histogram_fetches_in_progress_ = 2;
402 // Run requests to service and content in parallel. 403 // Run requests to service and content in parallel.
403 if (!ServiceProcessControl::GetInstance()->GetHistograms(callback, timeout)) { 404 if (!ServiceProcessControl::GetInstance()->GetHistograms(callback, timeout)) {
404 // Assume |num_async_histogram_fetches_in_progress_| is not changed by 405 // Assume |num_async_histogram_fetches_in_progress_| is not changed by
405 // |GetHistograms()|. 406 // |GetHistograms()|.
406 DCHECK_EQ(num_async_histogram_fetches_in_progress_, 2); 407 DCHECK_EQ(num_async_histogram_fetches_in_progress_, 2);
407 // Assign |num_async_histogram_fetches_in_progress_| above and decrement it 408 // Assign |num_async_histogram_fetches_in_progress_| above and decrement it
408 // here to make code work even if |GetHistograms()| fired |callback|. 409 // here to make code work even if |GetHistograms()| fired |callback|.
409 --num_async_histogram_fetches_in_progress_; 410 --num_async_histogram_fetches_in_progress_;
410 } 411 }
411 #endif // OS_ANDROID 412 #endif // !ENABLE_FULL_PRINTING
412 413
413 // Set up the callback to task to call after we receive histograms from all 414 // Set up the callback to task to call after we receive histograms from all
414 // child processes. |timeout| specifies how long to wait before absolutely 415 // child processes. |timeout| specifies how long to wait before absolutely
415 // calling us back on the task. 416 // calling us back on the task.
416 content::FetchHistogramsAsynchronously(base::MessageLoop::current(), callback, 417 content::FetchHistogramsAsynchronously(base::MessageLoop::current(), callback,
417 timeout); 418 timeout);
418 } 419 }
419 420
420 void ChromeMetricsServiceClient::OnHistogramSynchronizationDone() { 421 void ChromeMetricsServiceClient::OnHistogramSynchronizationDone() {
421 DCHECK(thread_checker_.CalledOnValidThread()); 422 DCHECK(thread_checker_.CalledOnValidThread());
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
544 // Capture the histogram samples. 545 // Capture the histogram samples.
545 if (dumps_with_crash != 0) 546 if (dumps_with_crash != 0)
546 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithCrash", dumps_with_crash); 547 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithCrash", dumps_with_crash);
547 if (dumps_with_no_crash != 0) 548 if (dumps_with_no_crash != 0)
548 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithNoCrash", dumps_with_no_crash); 549 UMA_HISTOGRAM_COUNTS("Chrome.BrowserDumpsWithNoCrash", dumps_with_no_crash);
549 int total_dumps = dumps_with_crash + dumps_with_no_crash; 550 int total_dumps = dumps_with_crash + dumps_with_no_crash;
550 if (total_dumps != 0) 551 if (total_dumps != 0)
551 UMA_HISTOGRAM_COUNTS("Chrome.BrowserCrashDumpAttempts", total_dumps); 552 UMA_HISTOGRAM_COUNTS("Chrome.BrowserCrashDumpAttempts", total_dumps);
552 } 553 }
553 #endif // defined(OS_WIN) 554 #endif // defined(OS_WIN)
OLDNEW
« no previous file with comments | « chrome/browser/local_discovery/privet_http_unittest.cc ('k') | chrome/browser/task_manager/task_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698