Skip to content

Commit

Permalink
Revert "Enable Persistent Histograms on iOS"
Browse files Browse the repository at this point in the history
This reverts commit d9fd02e.

CleanupBrowserMetricsDataFiles() is added to remove all accumulated
BrowserMetrics/ files.

(cherry picked from commit e9bd0a2)

Bug: 992946
Change-Id: I29c96bf49101c1954185208ca80b6e432e91e8c4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1755004
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
Commit-Queue: Peter Lee <pkl@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#687104}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1755192
Reviewed-by: Kariah Davis <kariahda@chromium.org>
Cr-Commit-Position: refs/branch-heads/3882@{#4}
Cr-Branched-From: 382570a-refs/heads/master@{#686622}
  • Loading branch information
Peter K. Lee authored and Kariah Davis committed Aug 15, 2019
1 parent 56b174f commit a32805e
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 13 deletions.
12 changes: 0 additions & 12 deletions ios/chrome/browser/ios_chrome_field_trials.cc
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,6 @@

#include "ios/chrome/browser/ios_chrome_field_trials.h"

#include "base/path_service.h"
#include "components/metrics/persistent_histograms.h"
#include "ios/chrome/browser/chrome_paths.h"

void IOSChromeFieldTrials::SetupFieldTrials() {
// Persistent histograms must be enabled as soon as possible.
base::FilePath user_data_dir;
if (base::PathService::Get(ios::DIR_USER_DATA, &user_data_dir)) {
InstantiatePersistentHistograms(user_data_dir);
}
}

void IOSChromeFieldTrials::SetupFeatureControllingFieldTrials(
bool has_seed,
base::FeatureList* feature_list) {
Expand Down
2 changes: 1 addition & 1 deletion ios/chrome/browser/ios_chrome_field_trials.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class IOSChromeFieldTrials : public variations::PlatformFieldTrials {
~IOSChromeFieldTrials() override {}

// variations::PlatformFieldTrials:
void SetupFieldTrials() override;
void SetupFieldTrials() override {}
void SetupFeatureControllingFieldTrials(
bool has_seed,
base::FeatureList* feature_list) override;
Expand Down
26 changes: 26 additions & 0 deletions ios/chrome/browser/metrics/ios_chrome_metrics_service_client.mm
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,14 @@
#include "base/callback.h"
#include "base/command_line.h"
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/logging.h"
#include "base/metrics/histogram_macros.h"
#include "base/path_service.h"
#include "base/process/process_metrics.h"
#include "base/rand_util.h"
#include "base/strings/string16.h"
#include "base/task/post_task.h"
#include "base/threading/platform_thread.h"
#include "components/crash/core/common/crash_keys.h"
#include "components/history/core/browser/history_service.h"
Expand All @@ -33,6 +36,7 @@
#include "components/metrics/net/cellular_logic_helper.h"
#include "components/metrics/net/net_metrics_log_uploader.h"
#include "components/metrics/net/network_metrics_provider.h"
#include "components/metrics/persistent_histograms.h"
#include "components/metrics/stability_metrics_helper.h"
#include "components/metrics/ui/screen_info_metrics_provider.h"
#include "components/metrics/url_constants.h"
Expand Down Expand Up @@ -77,6 +81,24 @@ void GetNetworkConnectionTrackerAsync(
GetApplicationContext()->GetNetworkConnectionTracker());
}

void CleanupBrowserMetricsDataFiles() {
base::FilePath user_data_dir;
if (!base::PathService::Get(ios::DIR_USER_DATA, &user_data_dir))
return;
base::FilePath browser_metrics_upload_dir =
user_data_dir.AppendASCII(kBrowserMetricsName);
if (base::IsDirectoryEmpty(browser_metrics_upload_dir))
return;
// Delete accumulated metrics files due to http://crbug/992946
base::PostTask(
FROM_HERE,
{base::ThreadPool(), base::MayBlock(), base::TaskPriority::BEST_EFFORT,
base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN},
base::BindOnce(base::IgnoreResult(&base::DeleteFile),
std::move(browser_metrics_upload_dir),
/*recursive=*/true));
}

} // namespace

IOSChromeMetricsServiceClient::IOSChromeMetricsServiceClient(
Expand Down Expand Up @@ -244,6 +266,10 @@ void GetNetworkConnectionTrackerAsync(
metrics_service_->RegisterMetricsProvider(
std::make_unique<metrics::DemographicMetricsProvider>(
std::make_unique<metrics::ChromeBrowserStateClient>()));

// TODO(crbug.com/992946): This is an interim fix to stop logging of
// persistent histograms and delete any accumulated metrics files.
CleanupBrowserMetricsDataFiles();
}

void IOSChromeMetricsServiceClient::CollectFinalHistograms() {
Expand Down

0 comments on commit a32805e

Please sign in to comment.