// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "components/page_load_metrics/browser/observers/use_counter_page_load_metrics_observer.h" #include "base/no_destructor.h" // This file defines a list of UseCounter WebFeature measured in the // Web Developer Metric UKM UseCounter. Features must all satisfy UKM // privacy requirements (see go/ukm). In addition, features should only be added // if the expected frequency is less than 5% of page loads. // // The Web Developer Metrics UKM UseCounter is intended for features that are // launching or may be subject to spec revisions. The UKM data is used to tie // feature usage by a site to performance, devtools usage or other aspects of // the site's structure. The event may also be used for investigations into // features with unknown or unexpected UseCounter data in order to identify // sites for further attention. // // Do NOT use this list for features that are being considered for removal or // deprecation where percentage of page views or URLs is important. This event // may be subsampled by the UKM system (some proportion of events may be dropped // before being uploaded from the client) in order to balance the resources of // the UKM system at large. As a result, any feature usage counts or // percentages aggregated across all page views or URLs will be inaccurate. // For such cases use the Blink.UseCounter allow list found in // components/page_load_metrics/browser/observers/use_counter/ukm_features.cc. WebFeature; // UKM-based UseCounter features (WebFeature) should be defined in // opt_in_features list. const UseCounterMetricsRecorder::UkmFeatureList& UseCounterMetricsRecorder::GetAllowedWebDevMetricsUkmFeatures() { … }