Commit b4046080 authored by fdoray's avatar fdoray Committed by Commit bot

Use TaskScheduler instead of blocking pool in external_metrics.cc.

The blocking pool is being deprecated in favor of TaskScheduler.

BUG=667892

Review-Url: https://codereview.chromium.org/2839973002
Cr-Commit-Position: refs/heads/master@{#467632}
parent 55180f5e
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
#include "base/metrics/sparse_histogram.h" #include "base/metrics/sparse_histogram.h"
#include "base/metrics/statistics_recorder.h" #include "base/metrics/statistics_recorder.h"
#include "base/metrics/user_metrics.h" #include "base/metrics/user_metrics.h"
#include "base/threading/sequenced_worker_pool.h" #include "base/task_scheduler/post_task.h"
#include "chrome/browser/browser_process.h" #include "chrome/browser/browser_process.h"
#include "chrome/browser/metrics/chromeos_metrics_provider.h" #include "chrome/browser/metrics/chromeos_metrics_provider.h"
#include "components/metrics/metrics_service.h" #include "components/metrics/metrics_service.h"
...@@ -48,11 +48,12 @@ bool CheckLinearValues(const std::string& name, int maximum) { ...@@ -48,11 +48,12 @@ bool CheckLinearValues(const std::string& name, int maximum) {
return CheckValues(name, 1, maximum, maximum + 1); return CheckValues(name, 1, maximum, maximum + 1);
} }
} // namespace // The interval between external metrics collections.
constexpr base::TimeDelta kExternalMetricsCollectionInterval =
base::TimeDelta::FromSeconds(30);
constexpr char kEventsFilePath[] = "/var/lib/metrics/uma-events";
// The interval between external metrics collections in seconds } // namespace
static const int kExternalMetricsCollectionIntervalSeconds = 30;
const char kEventsFilePath[] = "/var/lib/metrics/uma-events";
ExternalMetrics::ExternalMetrics() : uma_events_file_(kEventsFilePath) { ExternalMetrics::ExternalMetrics() : uma_events_file_(kEventsFilePath) {
} }
...@@ -171,11 +172,13 @@ void ExternalMetrics::CollectEventsAndReschedule() { ...@@ -171,11 +172,13 @@ void ExternalMetrics::CollectEventsAndReschedule() {
} }
void ExternalMetrics::ScheduleCollector() { void ExternalMetrics::ScheduleCollector() {
bool result = BrowserThread::GetBlockingPool()->PostDelayedWorkerTask( base::PostDelayedTaskWithTraits(
FROM_HERE, FROM_HERE,
base::Bind(&chromeos::ExternalMetrics::CollectEventsAndReschedule, this), base::TaskTraits().MayBlock().WithPriority(
base::TimeDelta::FromSeconds(kExternalMetricsCollectionIntervalSeconds)); base::TaskPriority::BACKGROUND),
DCHECK(result); base::BindOnce(&chromeos::ExternalMetrics::CollectEventsAndReschedule,
this),
kExternalMetricsCollectionInterval);
} }
} // namespace chromeos } // namespace chromeos
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment