0

Remove FamilyLinkUserMetricsProvider from CrOS

There was a large discrepancy between the FamilyLinkUserMetricsProvider
and the (CrOS)FamilyLinkUserLogSegment filters due to capabilities being
unavailable. (see b/317853352). Deregistering FamilyLinkUserMetricsProvider
so that (CrOS)FamilyLinkUserLogSegment can continue to be the primary
filter on CrOS

Bug: b/317853352
Change-Id: I81ff27099a3d8e68e587258ddf5e72208b8bc295
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5797384
Reviewed-by: Aga Wronska <agawronska@chromium.org>
Reviewed-by: Courtney Wong <courtneywong@chromium.org>
Reviewed-by: Luc Nguyen <lucnguyen@google.com>
Commit-Queue: Liza Bipin <mlbipin@google.com>
Cr-Commit-Position: refs/heads/main@{#1345297}
This commit is contained in:
Liza Bipin
2024-08-22 08:31:21 +00:00
committed by Chromium LUCI CQ
parent 5f76ac2da2
commit 50831b0cb4
5 changed files with 18 additions and 14 deletions

@ -750,8 +750,6 @@ static_library("browser") {
"metrics/chrome_metrics_service_client.h", "metrics/chrome_metrics_service_client.h",
"metrics/chrome_metrics_services_manager_client.cc", "metrics/chrome_metrics_services_manager_client.cc",
"metrics/chrome_metrics_services_manager_client.h", "metrics/chrome_metrics_services_manager_client.h",
"metrics/family_link_user_metrics_provider.cc",
"metrics/family_link_user_metrics_provider.h",
"metrics/https_engagement_metrics_provider.cc", "metrics/https_engagement_metrics_provider.cc",
"metrics/https_engagement_metrics_provider.h", "metrics/https_engagement_metrics_provider.h",
"metrics/incognito_observer.cc", "metrics/incognito_observer.cc",
@ -8095,6 +8093,13 @@ static_library("browser") {
} }
} }
if (!is_chromeos_ash) {
sources += [
"metrics/family_link_user_metrics_provider.cc",
"metrics/family_link_user_metrics_provider.h",
]
}
if (enable_extensions) { if (enable_extensions) {
sources += [ sources += [
"supervised_user/extension_icon_loader.cc", "supervised_user/extension_icon_loader.cc",

@ -49,7 +49,6 @@
#include "chrome/browser/metrics/desktop_platform_features_metrics_provider.h" #include "chrome/browser/metrics/desktop_platform_features_metrics_provider.h"
#include "chrome/browser/metrics/desktop_session_duration/desktop_profile_session_durations_service_factory.h" #include "chrome/browser/metrics/desktop_session_duration/desktop_profile_session_durations_service_factory.h"
#include "chrome/browser/metrics/desktop_session_duration/desktop_session_metrics_provider.h" #include "chrome/browser/metrics/desktop_session_duration/desktop_session_metrics_provider.h"
#include "chrome/browser/metrics/family_link_user_metrics_provider.h"
#include "chrome/browser/metrics/https_engagement_metrics_provider.h" #include "chrome/browser/metrics/https_engagement_metrics_provider.h"
#include "chrome/browser/metrics/metrics_reporting_state.h" #include "chrome/browser/metrics/metrics_reporting_state.h"
#include "chrome/browser/metrics/network_quality_estimator_provider_impl.h" #include "chrome/browser/metrics/network_quality_estimator_provider_impl.h"
@ -205,6 +204,7 @@
#endif #endif
#if !BUILDFLAG(IS_CHROMEOS_ASH) #if !BUILDFLAG(IS_CHROMEOS_ASH)
#include "chrome/browser/metrics/family_link_user_metrics_provider.h"
#include "chrome/browser/signin/chrome_signin_and_sync_status_metrics_provider.h" #include "chrome/browser/signin/chrome_signin_and_sync_status_metrics_provider.h"
#include "components/metrics/content/accessibility_metrics_provider.h" #include "components/metrics/content/accessibility_metrics_provider.h"
#endif // !BUILDFLAG(IS_CHROMEOS_ASH) #endif // !BUILDFLAG(IS_CHROMEOS_ASH)
@ -849,9 +849,6 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() {
#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) || #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) ||
// BUILDFLAG(IS_CHROMEOS_LACROS)) // BUILDFLAG(IS_CHROMEOS_LACROS))
metrics_service_->RegisterMetricsProvider(
std::make_unique<FamilyLinkUserMetricsProvider>());
#if BUILDFLAG(IS_CHROMEOS_LACROS) #if BUILDFLAG(IS_CHROMEOS_LACROS)
metrics_service_->RegisterMetricsProvider( metrics_service_->RegisterMetricsProvider(
std::make_unique<LacrosMetricsProvider>()); std::make_unique<LacrosMetricsProvider>());
@ -927,6 +924,10 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() {
// ChromeOS uses ChromeOSMetricsProvider for accessibility metrics provider. // ChromeOS uses ChromeOSMetricsProvider for accessibility metrics provider.
metrics_service_->RegisterMetricsProvider( metrics_service_->RegisterMetricsProvider(
std::make_unique<metrics::AccessibilityMetricsProvider>()); std::make_unique<metrics::AccessibilityMetricsProvider>());
// ChromeOS uses ChromeOSFamilyLinkUserMetricsProvider to categorize the user
// based on Family Link user type.
metrics_service_->RegisterMetricsProvider(
std::make_unique<FamilyLinkUserMetricsProvider>());
#endif // !BUILDFLAG(IS_CHROMEOS_ASH) #endif // !BUILDFLAG(IS_CHROMEOS_ASH)
metrics_service_->RegisterMetricsProvider( metrics_service_->RegisterMetricsProvider(

@ -203,7 +203,7 @@ TEST_F(ChromeMetricsServiceClientTest, TestRegisterMetricsServiceProviders) {
size_t expected_providers = 2; size_t expected_providers = 2;
// This is the number of metrics providers that are outside any #if macros. // This is the number of metrics providers that are outside any #if macros.
expected_providers += 23; expected_providers += 22;
int sample_rate; int sample_rate;
if (ChromeMetricsServicesManagerClient::GetSamplingRatePerMille( if (ChromeMetricsServicesManagerClient::GetSamplingRatePerMille(
@ -256,8 +256,8 @@ TEST_F(ChromeMetricsServiceClientTest, TestRegisterMetricsServiceProviders) {
#if !BUILDFLAG(IS_CHROMEOS_ASH) #if !BUILDFLAG(IS_CHROMEOS_ASH)
// ChromeSigninStatusMetricsProvider (for non ChromeOS). // ChromeSigninStatusMetricsProvider (for non ChromeOS).
// AccessibilityMetricsProvider // AccessibilityMetricsProvider, FamilyLinkUserMetricsProvider
expected_providers += 2; expected_providers += 3;
#endif // !BUILDFLAG(IS_CHROMEOS_ASH) #endif // !BUILDFLAG(IS_CHROMEOS_ASH)
#if BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_MAC)

@ -6069,7 +6069,6 @@ test("unit_tests") {
"../browser/metrics/chrome_metrics_service_accessor_unittest.cc", "../browser/metrics/chrome_metrics_service_accessor_unittest.cc",
"../browser/metrics/chrome_metrics_service_client_unittest.cc", "../browser/metrics/chrome_metrics_service_client_unittest.cc",
"../browser/metrics/chrome_metrics_services_manager_client_unittest.cc", "../browser/metrics/chrome_metrics_services_manager_client_unittest.cc",
"../browser/metrics/family_link_user_metrics_provider_unittest.cc",
"../browser/metrics/process_memory_metrics_emitter_unittest.cc", "../browser/metrics/process_memory_metrics_emitter_unittest.cc",
"../browser/metrics/tab_footprint_aggregator_unittest.cc", "../browser/metrics/tab_footprint_aggregator_unittest.cc",
"../browser/metrics/variations/chrome_variations_service_client_unittest.cc", "../browser/metrics/variations/chrome_variations_service_client_unittest.cc",
@ -6321,6 +6320,7 @@ test("unit_tests") {
} }
if (!is_chromeos_ash) { if (!is_chromeos_ash) {
sources += [ sources += [
"../browser/metrics/family_link_user_metrics_provider_unittest.cc",
"../browser/signin/wait_for_network_callback_helper_chrome_unittest.cc", "../browser/signin/wait_for_network_callback_helper_chrome_unittest.cc",
] ]
} }

@ -415,13 +415,11 @@ chromium-metrics-reviews@google.com.
<!-- expires-never: used internally for filtering --> <!-- expires-never: used internally for filtering -->
<owner>fernandex@chromium.org</owner> <owner>fernandex@chromium.org</owner>
<owner>courtneywong@chromium.org</owner>
<owner>agawronska@chromium.org</owner>
<owner>chrome-kids-eng@google.com</owner> <owner>chrome-kids-eng@google.com</owner>
<owner>cros-families-eng@google.com</owner>
<summary> <summary>
Categorizes the current user based on Family Link user type. Recorded for Categorizes the current user based on Family Link user type. Recorded for
all supervised platforms. all supervised platforms except ChromeOS which uses
ChromeOS.FamilyLinkUser.LogSegment.
</summary> </summary>
</histogram> </histogram>