| <!-- |
| Copyright 2020 The Chromium Authors |
| Use of this source code is governed by a BSD-style license that can be |
| found in the LICENSE file. |
| --> |
| |
| <!-- |
| This file is used to generate a comprehensive list of Android histograms |
| along with a detailed description for each histogram. |
| |
| For best practices on writing histogram descriptions, see |
| https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md |
| |
| Please follow the instructions in the OWNERS file in this directory to find a |
| reviewer. If no OWNERS file exists, please consider signing up at |
| go/reviewing-metrics (Googlers only), as all subdirectories are expected to |
| have an OWNERS file. As a last resort you can send the CL to |
| chromium-metrics-reviews@google.com. |
| --> |
| |
| <histogram-configuration> |
| |
| <histograms> |
| |
| <variants name="ActivityType"> |
| <variant name="" summary="activity"/> |
| <variant name=".ChromeTabbedActivity" summary="ChromeTabbedActivity"/> |
| <variant name=".CustomTabActivity" summary="CustomTabActivity"/> |
| <variant name=".FirstRunActivity" summary="FirstRunActivity"/> |
| </variants> |
| |
| <variants name="AndroidDownloadTypes"> |
| <variant name=".Audio" summary=""/> |
| <variant name=".Document" summary=""/> |
| <variant name=".Image" summary=""/> |
| <variant name=".OfflinePage" summary=""/> |
| <variant name=".Other" summary=""/> |
| <variant name=".PrefetchedOfflinePage" summary=""/> |
| <variant name=".Total" summary=""/> |
| <variant name=".Video" summary=""/> |
| </variants> |
| |
| <variants name="ChildProcessConnectionMetricsBindingState"> |
| <variant name="ContentModerate" |
| summary="Moderate binding excluding BindingManager bindings"/> |
| <variant name="ContentVisible" |
| summary="Visible binding excluding BindingManager bindings"/> |
| <variant name="ContentWaived" |
| summary="Waived binding excluding BindingManager bindings"/> |
| <variant name="Moderate" summary="strongest binding of Moderate"/> |
| <variant name="NotPerceptible" |
| summary="strongest binding of Not Perceptible"/> |
| <variant name="Strong" summary="strongest binding of Strong"/> |
| <variant name="Visible" summary="strongest binding of Visible"/> |
| <variant name="Waivable" summary="binding only from BindingManager"/> |
| <variant name="Waived" summary="strongest binding of Waived"/> |
| </variants> |
| |
| <variants name="MessageIdentifiers"> |
| <variant name=".AboutThisSite"/> |
| <variant name=".AddToHomescreenIPH"/> |
| <variant name=".AdsBlocked"/> |
| <variant name=".ArCoreUpgrade"/> |
| <variant name=".AutoDarkWebContents"/> |
| <variant name=".ChromeSurvey"/> |
| <variant name=".DesktopSiteGlobalDefaultOptOut"/> |
| <variant name=".DesktopSiteGlobalOptIn"/> |
| <variant name=".DownloadIncognitoWarning"/> |
| <variant name=".DownloadProgress"/> |
| <variant name=".ExternalNavigation"/> |
| <variant name=".FramebustBlocked"/> |
| <variant name=".GeneratedPasswordSaved"/> |
| <variant name=".InstallableAmbientBadge"/> |
| <variant name=".MerchantTrust"/> |
| <variant name=".NearOomReduction"/> |
| <variant name=".NotificationBlocked"/> |
| <variant name=".OfferNotification"/> |
| <variant name=".PermissionUpdate"/> |
| <variant name=".PopupBlocked"/> |
| <variant name=".ReaderMode"/> |
| <variant name=".RestoreCustomTab"/> |
| <variant name=".SafetyTip"/> |
| <variant name=".SaveAddressProfile"/> |
| <variant name=".SaveCard"/> |
| <variant name=".SavePassword"/> |
| <variant name=".SendTabToSelf"/> |
| <variant name=".SharedHighlighting"/> |
| <variant name=".SyncError"/> |
| <variant name=".TailoredSecurityDisabled"/> |
| <variant name=".TailoredSecurityEnabled"/> |
| <variant name=".Translate"/> |
| <variant name=".UndoCustomTabRestoration"/> |
| <variant name=".UpdatePassword"/> |
| <variant name=".VrServicesUpgrade"/> |
| </variants> |
| |
| <variants name="TaskType"> |
| <variant name="BackgroundSyncOneShot" summary="BackgroundSyncOneShot"/> |
| <variant name="ChromeMinidumpUploading" summary="ChromeMinidumpUploading"/> |
| <variant name="ComponentUpdate" summary="ComponentUpdate"/> |
| <variant name="DeprecatedDownloadResumption" |
| summary="DeprecatedDownloadResumption"/> |
| <variant name="DeprecatedExploreSitesRefresh" |
| summary="DeprecatedExploreSitesRefresh"/> |
| <variant name="DownloadAutoResumption" summary="DownloadAutoResumption"/> |
| <variant name="DownloadCleanup" summary="DownloadCleanup"/> |
| <variant name="DownloadLater" summary="DownloadLater"/> |
| <variant name="DownloadService" summary="DownloadService"/> |
| <variant name="ExploreSitesRefresh" summary="ExploreSitesRefresh"/> |
| <variant name="FeedRefresh" summary="FeedRefresh"/> |
| <variant name="FeedV2Refresh" summary="FeedV2Refresh"/> |
| <variant name="Gcm" summary="Gcm"/> |
| <variant name="NotificationScheduler" summary="NotificationScheduler"/> |
| <variant name="NotificationService" summary="NotificationService"/> |
| <variant name="NotificationTrigger" summary="NotificationTrigger"/> |
| <variant name="OfflinePages" summary="OfflinePages"/> |
| <variant name="Omaha" summary="Omaha"/> |
| <variant name="PeriodicBackgroundSyncChromeWakeup" |
| summary="PeriodicBackgroundSyncChromeWakeup"/> |
| <variant name="QueryTile" summary="QueryTile"/> |
| <variant name="Test" summary="Test"/> |
| <variant name="WebApkUpdate" summary="WebApkUpdate"/> |
| <variant name="WebviewComponentUpdate" summary="WebviewComponentUpdate"/> |
| <variant name="WebviewMinidumpUploading" summary="WebviewMinidumpUploading"/> |
| <variant name="WebviewVariationsSeedFetch" |
| summary="WebviewVariationsSeedFetch"/> |
| </variants> |
| |
| <variants name="ThumbnailProvider_ClientType"> |
| <variant name=".DownloadHome" summary="Download home"/> |
| <variant name=".NTPSnippets" summary="NTP snippets"/> |
| </variants> |
| |
| <histogram name="Android.ActivityStop.NumberOfTabsUsed" units="count" |
| expires_after="2023-10-08"> |
| <owner>gauravjj@google.com</owner> |
| <owner>skavuluru@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Captures the number of regular and incognito tabs used. Used tabs are |
| calculated by identifying the number of tabs that were selected between |
| ChromeTabbedActivity onResumeWithNative() and onStopWithNative(). This is |
| recorded when onStopWithNative() is called by backgrounding the app or by |
| opening another activity like SettingsActivity. If multiple instances are |
| running, each instance will only track and record usage of tabs that it |
| contains. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ActivityStop.PercentageOfTabsUsed" units="%" |
| expires_after="2023-10-22"> |
| <owner>gauravjj@google.com</owner> |
| <owner>skavuluru@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Captures the percentage of regular and incognito tabs used. This is |
| calculated by finding the ratio of the number of tabs used to the total |
| number of tabs available between ChromeTabbedActivity onResumedWithNative |
| and onStopWithNative. Total number of tabs available is the sum of the tab |
| count when CTA is resumed and any new tabs that are opened before CTA is |
| stopped. This is recorded when ChromeTabbedActivity#onStopWithNative() is |
| called by backgrounding the app or by opening another activity like |
| SettingsActivity. If multiple instances are running, each instance will only |
| track and record usage of tabs that it contains. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.Clicked" |
| enum="AdaptiveToolbarButtonVariant" expires_after="2023-09-03"> |
| <owner>bttk@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Reports the variant of the optional toolbar button that was clicked. Reports |
| only when the feature AdaptiveButtonInTopToolbar is active. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.SessionVariant" |
| enum="AdaptiveToolbarButtonVariant" expires_after="2023-09-03"> |
| <owner>bttk@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Reports the variant of the optional toolbar button used during the session. |
| Reports only when the feature AdaptiveButtonInTopToolbar is active, the |
| button is placed in the toolbar, and is clickable. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.Settings.Changed" |
| enum="AdaptiveToolbarRadioButtonState" expires_after="2023-08-27"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records the newly selected radio button option for the adaptive toolbar |
| button on the toolbar shortcut settings page. Recorded only when the |
| selected radio button state is changed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.Settings.Startup" |
| enum="AdaptiveToolbarRadioButtonState" expires_after="2023-08-27"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records the currently selected radio button option for the adaptive toolbar |
| button on the toolbar shortcut settings page. Recorded on startup, only if |
| AdaptiveButtonInTopToolbarCustomization feature is enabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.SettingsToggle.Changed" |
| enum="BooleanEnabled" expires_after="2023-09-24"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records whether the toolbar settings toggle button is on or off on the |
| toolbar shortcut settings page after the user manually changes it. Recorded |
| after the user explicitly taps on the toggle button. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.SettingsToggle.Startup" |
| enum="BooleanEnabled" expires_after="2023-09-03"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records whether the toolbar settings toggle button is on or off on the |
| toolbar shortcut settings page. Recorded on startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.Variant.OnPageLoad" |
| enum="AdaptiveToolbarButtonVariant" expires_after="2023-09-03"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Reports the variant of the optional toolbar button that was shown after a |
| page load. Reports only when a page is loaded or a tab is switched. Reports |
| only when the contextual page actions feature is enabled and after all the |
| action providers have responded or the request has timed out. Only reported |
| for pages in the regular profile. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AdaptiveToolbarButton.Variant.OnStartNavigation" |
| enum="AdaptiveToolbarButtonVariant" expires_after="2023-09-03"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Reports the variant of the optional toolbar button being shown during the |
| start of a new navigation. Reports whenever |
| TabObserver.onDidStartNavigationInPrimaryMainFrame() is called which then |
| records the button variant currently being shown on the toolbar. Recorded |
| for both regular and incognito profiles. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AppLaunch.BlockDrawForInitialTabAccuracy" |
| enum="AppLaunchBlockDrawForInitialTabAccuracy" expires_after="2022-10-16"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>skym@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the accuracy of the logic used to decide whether to block the view |
| draw of the first tab, expressed as an enum. Recorded when the active tab is |
| restored or an initial tab is created in ChromeTabbedActivity. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AppLaunch.DurationDrawWasBlocked" units="ms" |
| expires_after="2022-08-21"> |
| <obsolete> |
| Removed 03/2022. Superseded by |
| Android.AppLaunch.DurationDrawWasBlocked.OnInitialTab |
| </obsolete> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>skym@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records how long the initial tab's draw was blocked, if it was. Recorded |
| when the active tab is restored or an initial tab is created in |
| ChromeTabbedActivity. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AppLaunch.DurationDrawWasBlocked.OnIncognitoReauth" |
| units="ms" expires_after="2023-10-08"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the time (ms) we blocked the draw of the Incognito tab (if any) |
| during the app restore phase to be sure the Incognito re-auth screen is |
| shown. This gets recorded only when both native and tab state have been |
| initialized as by then we would show the re-auth screen. |
| |
| Blocking draw on Incognito re-auth screen prevents accidental leakage of the |
| Incognito tab contents. Note that, the Incognito re-auth screen is an opt-in |
| feature controlled behind the Chrome Setting "Lock Incognito tabs when |
| you leave Chrome" under "Privacy and Security" So, if the |
| feature is turned off, we wouldn't block draw for this use-case and won't |
| record this metric. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AppLaunch.DurationDrawWasBlocked.OnInitialTab" |
| units="ms" expires_after="2022-08-21"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>skym@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records how long the initial tab's draw was blocked, if it was. Recorded no |
| more than once per cold start. Recorded when the active tab is restored or |
| an initial tab is created in ChromeTabbedActivity. Recorded always except |
| when the overview page is shown during startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AppLaunch.DurationDrawWasBlocked.OnOverviewPage" |
| units="ms" expires_after="2022-08-21"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>skym@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records how long the overview page's draw was blocked, if it was. Recorded |
| no more than once per cold start. Recorded when the overview page state is |
| initialized in ChromeTabbedActivity and only when overview page was shown |
| during startup. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.ApplicationState.TimeInBackgroundBeforeForegroundedAgain" |
| units="ms" expires_after="2023-10-08"> |
| <owner>lizeb@google.com</owner> |
| <owner>clank-performance-team@google.com</owner> |
| <summary> |
| Record the time the application spent in the background in-between two |
| foregrounded periods, meaning that when the application is started in |
| background, then foregrounded, no data points are recorded. This is recorded |
| at the end of each such background interval. Saturates at 1h. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.AppNotificationStatus" enum="NotificationAppStatus" |
| expires_after="never"> |
| <!-- expires-never: Indicates whether Chrome has notification permission. --> |
| |
| <owner>dtrainor@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Records whether notifications are enabled for Chrome, as the Android app, |
| every time metrics are logged. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ArmCpuPart" enum="ArmCpuPart" |
| expires_after="2023-08-27"> |
| <owner>rsesek@chromium.org</owner> |
| <owner>clank-security@google.com</owner> |
| <summary> |
| Reports information about the ARM CPU of a device. This composes the 8-bit |
| ARM implementer identifier and the 12-bit part number into a single 20-bit |
| CPU identifier, ranging from [0x00000,0xFFFFF]. Depending on the CPU |
| package, processor configuration, and/or kernel version, this may only |
| report information about the processor on which the metric was collected. |
| This can happen on heterogeneous-processor SoCs. The metric is logged once |
| every startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundRestrictions.IsBackgroundRestricted" |
| enum="Boolean" expires_after="2023-04-30"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records whether user has enabled background restriction for chrome. Recorded |
| after native initialization in browser process. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundRestrictions.StandbyBucket" |
| enum="StandbyBucket" expires_after="2023-04-30"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records the standby bucket (UsageStatsManager.getAppStandbyBucket) in which |
| chrome is currently placed by android. Recorded after native initialization |
| in browser process. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.BackgroundRestrictions.StandbyBucket.WithoutUserRestriction" |
| enum="StandbyBucket" expires_after="2022-10-23"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records the standby bucket (UsageStatsManager.getAppStandbyBucket) in which |
| chrome is currently placed by android, when user hasn't explicitly enabled |
| background restrictions. Recorded after native initialization in browser |
| process. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.BackgroundRestrictions.StandbyBucket.WithUserRestriction" |
| enum="StandbyBucket" expires_after="2023-04-30"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>chrome-segmentation-platform@google.com</owner> |
| <summary> |
| Records the standby bucket (UsageStatsManager.getAppStandbyBucket) in which |
| chrome is currently placed by android, when user has explicitly enabled |
| background restrictions. Recorded after native initialization in browser |
| process. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.ExactTaskCreated" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>nator@chromium.org</owner> |
| <owner>knollr@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that an exact task has been created. Recorded when the task is |
| scheduled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskCanceled" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary>Records that a specific background task has been canceled.</summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskCreated.WithExpiration" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>nator@chromium.org</owner> |
| <owner>knollr@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that a specific task has been created with an expiration deadline. |
| Recorded when the task is scheduled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskCreated.WithoutExpiration" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>nator@chromium.org</owner> |
| <owner>knollr@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that a specific task has been created without the expiration feature |
| activated. Recorded when the task is scheduled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskExpired" |
| enum="BackgroundTaskId" expires_after="2023-08-08"> |
| <owner>nator@chromium.org</owner> |
| <owner>knollr@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that a specific background task has expired. Recorded before the |
| task is to be started. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskFinished.{TaskType}" |
| units="ms" expires_after="2023-06-04"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records the time (uptimeMillis) taken by a background task of type |
| {TaskType}. Recorded when the task finished callback is invoked. |
| </summary> |
| <token key="TaskType" variants="TaskType"/> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskLoadedNative" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that a task extending a NativeBackgroundTask started loading the |
| native portion of Chrome (either in Reduced Mode or Full Browser Mode). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskLoadedNative.FullBrowser" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <summary> |
| Records that a specific background task has loaded native in Full Browser |
| Mode. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskLoadedNative.ReducedMode" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <summary> |
| Records that a specific background task has loaded native in Reduced Mode. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskScheduled.Failure" |
| enum="BackgroundTaskId" expires_after="2023-08-13"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that a specific background task has failed to be scheduled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskScheduled.Success" |
| enum="BackgroundTaskId" expires_after="2023-10-15"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that a specific background task has been successfully scheduled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskStarted" |
| enum="BackgroundTaskId" expires_after="2023-10-08"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary>Records that a specific background task has been started.</summary> |
| </histogram> |
| |
| <histogram name="Android.BackgroundTaskScheduler.TaskStopped" |
| enum="BackgroundTaskId" expires_after="2023-06-04"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records that a specific background task has been stopped by Background Task |
| Scheduler before it was able to complete itself. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackPress.Failure" enum="BackPressConsumer" |
| expires_after="2023-09-03"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/chrome/browser/back_press/android/OWNERS</owner> |
| <summary> |
| Recorded when the user invokes a back navigation only if the handler failed |
| to operate as expected, (e.g. it does nothing). May be recorded multiple |
| times for a single back press event if there are multiple failed handlers. |
| Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackPress.Intercept" enum="BackPressConsumer" |
| expires_after="2023-09-03"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/chrome/browser/back_press/android/OWNERS</owner> |
| <summary> |
| Records that a specific feature intercepted the system's back press gesture. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BackPress.MinimizeAppAndCloseTab" |
| enum="MinimizeAppAndCloseTabType" expires_after="2023-09-03"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/chrome/browser/back_press/android/OWNERS</owner> |
| <summary> |
| Records that the back press causes the app to be minimized or the current |
| tab to be closed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BindingManger.ConnectionsDroppedDueToMaxSize" |
| units="connections" expires_after="2023-10-22"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records the total number of BindingManager bindings to |
| ChildProcessConnections that were dropped due to the BindingManager reaching |
| the connection limit. This value accumulates while the app is running and is |
| emitted upong the app being backgrounded at which time the counter is reset. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.BiometricAuth.AuthRequester" |
| enum="DeviceAuthRequester" expires_after="M118"> |
| <owner>ioanap@chromium.org</owner> |
| <owner>fhorschig@chromium.org</owner> |
| <summary> |
| Recorded when a UI surface/flow in Chrome on Android chooses to re-auth the |
| user via biometrics. It records that surface/flow which made the request. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ChildMismatch.AppInfoError" enum="ChildAppInfoError" |
| expires_after="2022-11-01"> |
| <obsolete> |
| Replaced by Android.ChildMismatch.AppInfoError2; the previous implementation |
| did not record the metric correctly in all cases. |
| </obsolete> |
| <owner>torne@chromium.org</owner> |
| <owner>boliu@chromium.org</owner> |
| <summary> |
| Records what error (if any) was encountered verifying the child process's |
| app info each time a child process is started via ChildProcessConnection. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ChildMismatch.AppInfoError2" enum="ChildAppInfoError" |
| expires_after="2023-10-22"> |
| <owner>torne@chromium.org</owner> |
| <owner>boliu@chromium.org</owner> |
| <summary> |
| Records what error (if any) was encountered verifying the child process's |
| app info each time a child process is started via ChildProcessConnection. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ChildMismatch.BrowserVersionChanged" |
| enum="BooleanChanged" expires_after="2022-11-01"> |
| <obsolete> |
| Replaced by Android.ChildMismatch.BrowserVersionChanged2; the previous |
| implementation did not record the metric correctly in all cases. |
| </obsolete> |
| <owner>torne@chromium.org</owner> |
| <owner>boliu@chromium.org</owner> |
| <summary> |
| Records if the installed browser version appears to have changed since the |
| browser process was launched. Recorded each time a child process is started |
| via ChildProcessConnection, but only if the child's ApplicationInfo did not |
| match (i.e. when Android.ChildMismatch.AppInfoError is recorded as something |
| other than no error). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ChildMismatch.BrowserVersionChanged2" |
| enum="BooleanChanged" expires_after="2023-10-22"> |
| <owner>torne@chromium.org</owner> |
| <owner>boliu@chromium.org</owner> |
| <summary> |
| Records if the installed browser version appears to have changed since the |
| browser process was launched. Recorded each time a child process is started |
| via ChildProcessConnection, but only if the child's ApplicationInfo did not |
| match (i.e. when Android.ChildMismatch.AppInfoError is recorded as something |
| other than no error). |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.ChildProcessBinding.Percentage{ChildProcessConnectionMetricsBindingState}Connections_{TotalConnectionBucket}" |
| units="%" expires_after="2023-08-20"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records the percentage of sandboxed ChildProcessConnections with a |
| {ChildProcessConnectionMetricsBindingState} out of the total number of |
| ChildProcessConnections where there are {TotalConnectionBucket}. This is not |
| emitted if there are no live connections. Emitted at a Poisson distributed |
| period with a mean of 5 minutes on Chrome on Android while in the |
| foreground. |
| </summary> |
| <token key="ChildProcessConnectionMetricsBindingState" |
| variants="ChildProcessConnectionMetricsBindingState"/> |
| <token key="TotalConnectionBucket"> |
| <variant name="3To5Connections" summary="3 to 5 connections"/> |
| <variant name="6To10Connections" summary="6 to 10 connections"/> |
| <variant name="11To20Connections" summary="11 to 20 connections"/> |
| <variant name="21To50Connections" summary="21 to 50 connections"/> |
| <variant name="LessThan3Connections" summary="less than 3 connections"/> |
| <variant name="MoreThan51Connections" summary="more than 51 connections"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.ChildProcessBinding.TotalConnections" |
| units="connections" expires_after="2023-10-22"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records the total number of sandboxed ChildProcessConnections in existence. |
| This is emitted even if there are no live connections. Emitted at a Poisson |
| distributed period with a mean of 5 minutes on Chrome on Android while in |
| the foreground. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.ChildProcessBinding.{ChildProcessConnectionMetricsBindingState}Connections" |
| units="connections" expires_after="2023-08-20"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records the number of sandboxed ChildProcessConnections with a |
| {ChildProcessConnectionMetricsBindingState}. This is emitted even if there |
| are no live connections. Emitted at a Poisson distributed period with a mean |
| of 5 minutes on Chrome on Android while in the foreground. |
| </summary> |
| <token key="ChildProcessConnectionMetricsBindingState" |
| variants="ChildProcessConnectionMetricsBindingState"/> |
| </histogram> |
| |
| <histogram name="Android.ChildProcessStartTimeV2{type}" units="ms" |
| expires_after="2023-02-22"> |
| <owner>cduvall@chromium.org</owner> |
| <owner>boliu@chromium.org</owner> |
| <summary> |
| Measures time from {type} child process starts to right before main. Only |
| recorded on Android N+. Zygote measurements are recorded on Q+. |
| |
| Zygote measurements capture the CPU time (thread time) spent to create the |
| app zygote process, before the zygote preload starts. For other processes it |
| measures the time (uptimeMillis) to create the child process service. |
| </summary> |
| <token key="type"> |
| <variant name=".All" summary="all (excluding zygote)"/> |
| <variant name=".Isolated" summary="isolated"/> |
| <variant name=".NotIsolated" summary="non-isolated"/> |
| <variant name=".Zygote" summary="app zygote"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.ChromeActivity.Type" enum="ChromeActivityType" |
| expires_after="never"> |
| <!-- expires-never: Used to classify UMA reports by the dashboards. --> |
| |
| <owner>peconn@chromium.org</owner> |
| <owner>src/base/metrics/OWNERS</owner> |
| <summary> |
| Recorded at the same time as "CustomTabs.Visible", this metric |
| should eventually replace that one. This additionally distinguishes between |
| Trusted Web Activities, WebAPKs and Webapps. |
| |
| As of M87, this histogram is logged on a log start, rather than log end to |
| tag more logs. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ChromeStartupDelegate.FailureReason" |
| enum="ChromeStartupDelegateFailureType" expires_after="2022-12-25"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the failure reason for ChromeStartupDelegate requests. Recorded at |
| most once on application startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ChromeStartupDelegate.Result" |
| enum="ChromeStartupDelegateResult" expires_after="2022-10-16"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the result for ChromeStartupDelegate. Recorded on application |
| startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ContactsPicker.ContactCount" units="Contacts" |
| expires_after="2023-09-10"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the total number of contacts shown in the contacts picker. Measured |
| once when the Contacts Picker dialog is dismissed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ContactsPicker.DialogAction" |
| enum="ContactsPickerDialogAction" expires_after="2023-09-10"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records which action the user takes in the ContactsPickerDialog. Measured |
| once when the Contacts Picker dialog is dismissed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ContactsPicker.PropertiesRequested" |
| enum="ContactsPickerProperties" expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| The contact properties requested by the website (names, emails, telephone |
| numbers). Measured once when the Contacts Picker dialog is dismissed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ContactsPicker.SelectCount" units="Contacts" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the total number of contacts selected in the contacts picker. |
| Measured once when the Contacts Picker dialog is dismissed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ContactsPicker.SelectPercentage" units="%" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the percentage of contacts selected in the contacts picker. |
| Measured once when the Contacts Picker dialog is dismissed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DarkTheme.AutoDarkMode.SettingsChangeSource{NewState}" |
| enum="AndroidAutoDarkModeSettingsChangeSource" expires_after="2023-04-01"> |
| <owner>nemco@google.com</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Source that changed the auto dark web content settings. This includes both |
| changes to global theme settings as well as individual site exceptions. This |
| histogram does not take into account whether the browser UI theme is dark or |
| not (e.g. browser theme could be "light" and user could still |
| change auto dark mode state in site settings). Recorded when the auto dark |
| web content settings changes including {NewState} |
| </summary> |
| <token key="NewState"> |
| <variant name=".Disabled" |
| summary="default value change to Blocked, or a site exception is |
| added."/> |
| <variant name=".Enabled" |
| summary="default value change to Allowed, or a site exception is |
| removed."/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.DarkTheme.EnabledReason" enum="DarkThemeEnabledReason" |
| expires_after="2023-02-26"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the reason why dark theme is enabled when dark theme is visible to |
| user. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DarkTheme.EnabledState" enum="BooleanEnabled" |
| expires_after="2023-09-03"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records whether dark theme is enabled or not on cold start and when the |
| enabled state changes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DarkTheme.Preference.State" |
| enum="DarkThemePreferences" expires_after="2023-02-26"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records user theme preference of system default, light or dark theme on cold |
| start and when the theme preference changes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DarkTheme.ThemeSettingsEntry" |
| enum="AndroidThemeSettingsEntry" expires_after="2023-04-16"> |
| <owner>nemco@google.com</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Entry that navigate the user into the Theme Settings. Recorded when the |
| Theme settings is opened. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DeviceSize.LargestDisplaySize" units="dp" |
| expires_after="2022-05-14"> |
| <obsolete> |
| Removed May 2022. |
| </obsolete> |
| <owner>twellington@chromium.org</owner> |
| <owner>tedchoc@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the largest display dimension in dp during deferred startup. The |
| display size is not affected by Android N multi-window mode. Clamped at |
| 200dp to 1200dp. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DeviceSize.LargestDisplaySize2" units="dp" |
| expires_after="2023-08-27"> |
| <owner>twellington@chromium.org</owner> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the largest display dimension in dp during deferred startup. The |
| display size is not affected by Android N multi-window mode. Clamped at |
| 200dp to 2000dp. 20dp granularity. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DeviceSize.ScreenSizeInTensOfInches" |
| units="10x inches" expires_after="2023-08-27"> |
| <owner>twellington@chromium.org</owner> |
| <owner>aishwaryarj@google.com</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the primary display (screen) size in tens of inches with 0.2 inches |
| (2 units) granularity, during deferred startup. The display size is not |
| affected by Android N multi-window mode. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DeviceSize.SmallestDisplaySize" units="dp" |
| expires_after="2022-05-14"> |
| <obsolete> |
| Removed May 2022. |
| </obsolete> |
| <owner>twellington@chromium.org</owner> |
| <owner>tedchoc@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the smallest display dimension in dp during deferred startup. The |
| display size is not affected by Android N multi-window mode. Clamped at 0 to |
| 1000dp. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DeviceSize.SmallestDisplaySize2" units="dp" |
| expires_after="2023-08-27"> |
| <owner>twellington@chromium.org</owner> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the smallest display dimension in dp during deferred startup. The |
| display size is not affected by Android N multi-window mode. Clamped at 100 |
| to 1000dp. 10dp granularity. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DexFixer" enum="DexFixerReason" |
| expires_after="2023-01-30"> |
| <obsolete> |
| Removed Feb 2020. |
| </obsolete> |
| <owner>agrieve@chromium.org</owner> |
| <owner>cduvall@chromium.org</owner> |
| <summary> |
| Records the number of times Chrome runs "cmd package compile" to |
| fix dexopt issues, and for what reason. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DirectAction.Perform" enum="DirectActionId" |
| expires_after="2023-10-10"> |
| <owner>arbesser@google.com</owner> |
| <owner>autofill_assistant@google.com</owner> |
| <summary> |
| Counts calls to Activity.onPerformDirectAction made by the system on behalf |
| of the assist app and which action was performed, if any. Available starting |
| with Android Q. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Download.Rename.Dialog.Action" |
| enum="Android.Download.Rename.Dialog.Action" expires_after="2021-08-09"> |
| <obsolete> |
| Removed in April 2023. |
| </obsolete> |
| <owner>hesen@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Records various actions taken by the user on the rename dialog in download |
| home. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.ForegroundServiceLifecycle" |
| enum="DownloadNotificationForegroundLifecycle" expires_after="never"> |
| <!-- expires-never: Download foreground notification stability metric. --> |
| |
| <owner>qinmin@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Records instances where the foreground undergoes a lifecycle change (when |
| the foreground starts, changes pinned notification, or stops). |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.DownloadManager.InitialCount.Viewed{AndroidDownloadTypes}" |
| units="units" expires_after="2020-10-04"> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| The number of non-incognito download items displayed that are already viewed |
| by the user at any time, recorded when the download UI is initialized. |
| {AndroidDownloadTypes} |
| </summary> |
| <token key="AndroidDownloadTypes" variants="AndroidDownloadTypes"> |
| <variant name=""/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.InitialCount{AndroidDownloadTypes}" |
| units="units" expires_after="2021-01-24"> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| The number of non-incognito download items displayed when the download UI is |
| initialized. {AndroidDownloadTypes} |
| </summary> |
| <token key="AndroidDownloadTypes" variants="AndroidDownloadTypes"> |
| <variant name=""/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.Item.OpenFailed" |
| enum="AndroidDownloadFilterType" expires_after="M81"> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>Recorded when a download fails to open.</summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.Item.OpenSucceeded" |
| enum="AndroidDownloadFilterType" expires_after="M85"> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>Recorded when a download is opened.</summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.List.View.Action" |
| enum="Android.DownloadManager.List.View.Actions" expires_after="2021-01-24"> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>The count of Download Home list entry actions taken.</summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.Menu.Action" |
| enum="Android.DownloadManager.Menu.Actions" expires_after="2022-12-25"> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>The count of Download Home top level menu actions taken.</summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.Menu.Delete.SelectedCount" |
| units="units" expires_after="M81"> |
| <obsolete> |
| Removed in April 2023. |
| </obsolete> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| The number of items selected when performing a multi-delete action. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.Menu.Share.SelectedCount" |
| units="units" expires_after="M81"> |
| <obsolete> |
| Removed in April 2023. |
| </obsolete> |
| <owner>dtrainor@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| The number of items selected when performing a multi-share action. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.NotificationInteraction" |
| enum="DownloadNotificationInteractions" expires_after="2023-01-01"> |
| <owner>qinmin@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Records instances where a user interacts with a download notification (ie. |
| clicks on, pauses, resumes, cancels). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.OpenSource.Audio" |
| enum="AndroidDownloadOpenSource" expires_after="2023-07-09"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>Records how users open audio download files on Android.</summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.OpenSource.Other" |
| enum="AndroidDownloadOpenSource" expires_after="2023-06-25"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Records the entry point for users opening downloaded files on Android, that |
| are not audio nor video. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.OpenSource.Video" |
| enum="AndroidDownloadOpenSource" expires_after="2023-06-25"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>Records how users open video download files on Android.</summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.ServiceStopped.DownloadForeground" |
| enum="DownloadNotificationServiceStopped" expires_after="never"> |
| <owner>qinmin@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <!-- expires-never: Download foreground notification stability metric. --> |
| |
| <summary> |
| Records instances of DownloadForegroundService stops. The number of expected |
| stops (stopped) and unexpected stops (task removed, low memory, etc) can be |
| compared to get a sense of how often the service crashes to see how it |
| handles restarts. For example, the number of times the service is stopped |
| because of low memory can be compared to the number of times the service has |
| been destroyed to see how frequently it occurs. Or, the number of start |
| sticky's will indicate how often the service is able to restart due to an |
| unexpected stop. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.Share.Count" units="units" |
| expires_after="M86"> |
| <obsolete> |
| Removed in April 2023. |
| </obsolete> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>The number of downloads shared at the same time.</summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.Share.FileTypes" |
| enum="AndroidDownloadFilterType" expires_after="2020-03-01"> |
| <obsolete> |
| Removed in April 2023. |
| </obsolete> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Recorded when downloads are shared through the download manager. A recorded |
| value of "All" indicates that multiple types of downloads were |
| shared. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DownloadManager.SpaceUsed" units="%" |
| expires_after="M81"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary>The percentage of total storage downloads consume.</summary> |
| </histogram> |
| |
| <histogram |
| name="Android.DownloadManager.Thumbnail.MaxRequiredStretch{AndroidDownloadTypes}" |
| units="%" expires_after="2021-01-30"> |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Records the required stretch of the smaller dimension before displaying an |
| image on download home. Measured in percentage. {AndroidDownloadTypes} |
| </summary> |
| <token key="AndroidDownloadTypes" variants="AndroidDownloadTypes"/> |
| </histogram> |
| |
| <histogram name="Android.DownloadPage.OpenSource" |
| enum="AndroidDownloadOpenSource" expires_after="2023-04-23"> |
| <owner>qinmin@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Records the entry point for users opening the download page on Android. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.FromWebContent.DropInWebContent.DistanceDip" |
| units="dp" expires_after="2023-08-08"> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the distance of the drag end position from the initial drag start |
| position when dragging starts and ends within ContentView containing web |
| contents. Note that the distance only counts the distance of drag event |
| happend on the screen; scrolling for the web content will be disabled during |
| drag. Used to assist in setting proper threshold to dismiss context menu |
| during drag. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.FromWebContent.DropInWebContent.Duration" |
| units="ms" expires_after="2023-10-01"> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the duration in ms of drag process when drop happend inside |
| ContentView containing web contents, regardless DragEvent#getResult. Does |
| not capture drag events that end outside the ContentView (Use |
| Android.DragDrop.FromWebContent.Duration instead). Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.FromWebContent.Duration{DropResult}" |
| units="ms" expires_after="2023-08-08"> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the duration in ms of drag process when {DropResult}. Recorded for |
| the drag process starts from the web content, and drop happens outside of |
| the web content. Does not capture drag events that end inside the |
| ContentView containing web contents. Recorded when such a drag event ends. |
| Android only. |
| |
| For more information regarding drag results, see: |
| https://developer.android.com/reference/android/view/DragEvent#getResult() |
| </summary> |
| <token key="DropResult"> |
| <variant name=".Canceled" summary="DragEvent#getResult() returns false."/> |
| <variant name=".Success" summary="DragEvent#getResult() returns true."/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.FromWebContent.TargetType" |
| enum="AndroidDragTargetType" expires_after="2023-10-08"> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the type of object being dragged, for the drag process starts from |
| the web content, and drop happens outside of the web content. Does not |
| capture drag events that end inside the ContentView containing web contents. |
| Recorded when such a drag event ends. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.Image.OpenFileTime.AllExpired" units="ms" |
| expires_after="2023-08-08"> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the duration between the URI being cleared and |
| ContentProvider#openFile attempts with that expired URI. This is used to |
| evaluate how long we should keep the image data. Because drop target app |
| could request data multiple times with the same URI, this metric could |
| record multiple times per URI, which gives us the holistic view about the |
| timing when the image data associated with the URI is needed. Another metric |
| Android.DragDrop.Image.OpenFileTime.FirstExpired only records at most once |
| per URI, to avoid counting in retries from drop target app when Chrome |
| rejects the expired URI. This metric is recorded when Chrome receives an |
| expired URI to retrieve data. If the URI is not the latest expired one, the |
| metric will not be recorded because we do not calculate the elapsed time for |
| older URIs. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.Image.OpenFileTime.FirstAttempt" units="ms" |
| expires_after="2023-08-08"> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the duration between receiving Android Drag End event and the first |
| ContentProvider#openFile attempted by the drop target app. The duration is |
| calculated during the first ContentProvider#openFile for each URI. Another |
| metric Android.DragDrop.Image.OpenFileTime.LastAttempt is recorded for the |
| last ContentProvider#openFile. Record 0 if the duration is negative (e.g. |
| ContentProvider#openFile is accessed before drag ends). Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.Image.OpenFileTime.FirstExpired" units="ms" |
| expires_after="2023-08-08"> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the duration between the URI being cleared and the first |
| ContentProvider#openFile attempt with that expired URI. This is used to |
| evaluate how long we should keep the image data. Because drop target app may |
| retry after Chrome rejects the expired URI; and the retries are not helpful |
| to evaluate how long the data is needed; this metric records at most once |
| per URI. Another metric Android.DragDrop.Image.OpenFileTime.AllExpired |
| records multiple times per URI, to gives us the holistic view about the |
| timing when the image data associated with the URI is needed. This metric is |
| recorded when Chrome receives an expired URI to retrieve data. If the URI is |
| not the latest expired one, the metric will not be recorded because we do |
| not calculate the elapsed time for older URIs. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.Image.OpenFileTime.LastAttempt" units="ms" |
| expires_after="2023-08-08"> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the duration between receiving Android Drag End event and the last |
| ContentProvider#openFile attempted by the drop target app. The duration is |
| calculated when the image data expired at the designated time limit. It is |
| not recorded if the image data is replaced before the time limit due to the |
| start of the next image drag. Another metric |
| Android.DragDrop.Image.OpenFileTime.FirstAttempt is recorded for the first |
| ContentProvider#openFile. Record 0 if the duration is negative (e.g. |
| ContentProvider#openFile is accessed before drag ends). Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.Image.Size" units="KB" |
| expires_after="2023-08-08"> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the image size being dragged from Chrome. Recorded when start |
| dragging an image from Chrome's web content, regardless of whether drop is |
| handled successfully. Used to evaluate the memory consumption. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DragDrop.Image.UriCreatedInterval" units="ms" |
| expires_after="2023-08-08"> |
| <owner>shuyng@google.com</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the interval between two back-to-back image drags. This is used to |
| evaluate the duration to preserve the image data. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.DynamicColors.IsAvailable" enum="Boolean" |
| expires_after="2023-10-08"> |
| <owner>skym@chromium.org</owner> |
| <owner>clank-sbui-team@google.com</owner> |
| <summary> |
| Recorded during ChromeBaseAppCompatActivity initialization if third_party |
| dynamic colors logic thinks dynamic colors are available. This is often |
| based on Android version and OEM. This metric is not related to whether |
| dynamic colors are desired by features/experiments. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Event.ActionDown" enum="InputDeviceSource" |
| expires_after="2024-04-01"> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <owner>src/chrome/android/OWNERS</owner> |
| <summary> |
| Records the input device source for the action down touch event. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.FamilyLinkUser.LocalWebApprovalParentAuthenticationError" |
| units="Status error codes raised in GMS Core" expires_after="2023-06-13"> |
| <owner>anthie@google.com</owner> |
| <owner>ljjlee@google.com</owner> |
| <owner>chrome-kids-eng@google.com</owner> |
| <owner>cros-families-eng@google.com</owner> |
| <summary> |
| The different GMS error status codes that a user may encounter during the |
| parent authentication step in the local web approval flow. Recorded on |
| Android only. See go/chrome-local-web-approval-parent-auth-error-codes |
| (Googlers only) for the error code definitions. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.FeatureModules.AvailabilityStatus" |
| enum="FeatureModuleAvailabilityStatus" expires_after="2023-10-16"> |
| <!-- Name completed by histogram_suffixes |
| name="AndroidFeatureModuleName" --> |
| |
| <owner>agrieve@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <owner>tiborg@chromium.org</owner> |
| <owner>wnwen@chromium.org</owner> |
| <summary> |
| Availability status for each dynamic feature module. Reported once per |
| Chrome start. This metric's purpose is to measure a feature module's install |
| penetration over time. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.FeatureModules.CachedAwakeInstallDuration" |
| units="ms" expires_after="2023-06-13"> |
| <!-- Name completed by histogram_suffixes |
| name="AndroidFeatureModuleName" --> |
| |
| <owner>agrieve@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <owner>tiborg@chromium.org</owner> |
| <owner>wnwen@chromium.org</owner> |
| <summary> |
| Duration of successful installs for each dynamic feature module. Only |
| contains install durations for modules first requested *before* Chrome |
| started last and may therefore be installed from cache. Omits deep sleep |
| time. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.FeatureModules.InstallingStatus" |
| enum="FeatureModuleInstallingStatus" expires_after="2023-10-16"> |
| <!-- Name completed by histogram_suffixes |
| name="AndroidFeatureModuleName" --> |
| |
| <owner>agrieve@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <owner>tiborg@chromium.org</owner> |
| <owner>wnwen@chromium.org</owner> |
| <summary> |
| Install status counter for each dynamic feature module. Recorded during |
| on-demand and deferred installs. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.FeatureModules.InstallStatus" |
| enum="FeatureModuleInstallStatus" expires_after="2023-06-13"> |
| <!-- Name completed by histogram_suffixes |
| name="AndroidFeatureModuleName" --> |
| |
| <owner>agrieve@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <owner>tiborg@chromium.org</owner> |
| <owner>wnwen@chromium.org</owner> |
| <summary> |
| Install status for each dynamic feature module. Recorded after the |
| installation has finished. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FeatureModules.StartupTime" units="ms" |
| expires_after="2023-09-18"> |
| <owner>agrieve@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <owner>tiborg@chromium.org</owner> |
| <owner>wnwen@chromium.org</owner> |
| <summary> |
| Length of time during startup used by module framework code. This is our |
| metric to improve and used to guard against regressions. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" |
| name="Android.FeatureModules.UncachedAwakeInstallDuration" units="ms" |
| expires_after="2023-06-13"> |
| <!-- Name completed by histogram_suffixes |
| name="AndroidFeatureModuleName" --> |
| |
| <owner>agrieve@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <owner>tiborg@chromium.org</owner> |
| <owner>wnwen@chromium.org</owner> |
| <summary> |
| Duration of successful installs for each dynamic feature module. Only |
| contains install durations of modules first requested *after* Chrome started |
| last and are therefore unlikely to be installed from cache. Omits deep sleep |
| time. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.Blink.DLFontsLatencyFailure2" |
| units="microseconds" expires_after="2023-01-15"> |
| <owner>drott@chromium.org</owner> |
| <owner>layout-dev@chromium.org</owner> |
| <summary> |
| Records the latency of looking up a local font from Android downloadable |
| fonts at the time of instantiating the font in the fonts backend in the |
| renderer. Includes time for error checking and attempting to create the font |
| from the retrieved blob, if there is one. Only records timings for |
| situations in which a font could not be instantiated. This is recorded only |
| on devices that support high resolution timers. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.Blink.DLFontsLatencySuccess2" |
| units="microseconds" expires_after="2023-07-30"> |
| <owner>drott@chromium.org</owner> |
| <owner>layout-dev@chromium.org</owner> |
| <summary> |
| Records the latency of looking up a local font from Android downloadable |
| fonts at the time of instantiating the font in the fonts backend in the |
| renderer. Includes time for error checking and attempting to create the font |
| from the retrieved blob, if there is one. Only records timings for |
| situations in which a font was successfully instantiated and returned. This |
| is recorded only on devices that support high resolution timers. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.Blink.GetTableLatency" units="ms" |
| expires_after="2023-08-27"> |
| <owner>drott@chromium.org</owner> |
| <owner>cduvall@chromium.org</owner> |
| <owner>layout-dev@chromium.org</owner> |
| <summary> |
| Records the latency of fetching the font name lookup table from the browser. |
| The table is cached by the renderer so will usually only be fetched once per |
| renderer startup. This is recorded when an attempt is made to fetch the |
| table, typically once per renderer on the first font lookup for that |
| process. If the original fetch fails, this will be recorded the next time a |
| font lookup is requested. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.FetchAllFontFiles.Time" units="ms" |
| expires_after="2023-10-08"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the time taken to fetch all available font files from the GMS Core |
| Android downloadable font provider. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.FetchFontName" enum="FetchFontName" |
| expires_after="2022-09-20"> |
| <obsolete> |
| Removed 09/2022. No longer needed. |
| </obsolete> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records font fetch requests by font name. These results may be used to |
| determine whether it remains worthwhile to preload fonts that are available |
| for renderer font match requests. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.FetchFontResult" enum="FetchFontResult" |
| expires_after="2022-09-20"> |
| <obsolete> |
| Removed 09/2022. No longer needed. |
| </obsolete> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the result of font fetch requests made to the GMS Core Android |
| downloadable font provider. The result may be success, or failure with a |
| reason. In the case of multiple failures, only the first one encountered is |
| reported. See implementation at AndroidFontLookupImpl. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.GmsFontRequest.Time" units="ms" |
| expires_after="2023-08-08"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the time taken to make a fetchFonts font request to GMS Core via the |
| Android downloadable font provider API. This metric may be used to determine |
| whether it's reasonable to execute this task on the IO thread rather than |
| posting to a background thread. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.FontLookup.MatchLocalFontByUniqueName.Time" units="ms" |
| expires_after="2023-08-13"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the time taken to respond to a request from the renderer to fetch a |
| specific font file from the GMS Core Android downloadable font provider. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.Fonts.TimeDownloadableFontsRetrievedAfterFirstDraw{ActivityType}" |
| units="ms" expires_after="2023-06-15"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Time it took to retrieve the downloadable fonts after the first draw of |
| {ActivityType}'s content view. Mutually exclusive with *BeforeFirstDraw. |
| Recorded when all downloadable fonts are retrieved. |
| </summary> |
| <token key="ActivityType" variants="ActivityType"/> |
| </histogram> |
| |
| <histogram |
| name="Android.Fonts.TimeDownloadableFontsRetrievedAfterPostInflationStartup{ActivityType}" |
| units="ms" expires_after="2023-06-15"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Time it took to retrieve the downloadable fonts after post-inflation |
| startup. Mutually exclusive with *BeforePostInflationStartup. Recorded when |
| all downloadable fonts are retrieved. {ActivityType} |
| </summary> |
| <token key="ActivityType" variants="ActivityType"/> |
| </histogram> |
| |
| <histogram |
| name="Android.Fonts.TimeDownloadableFontsRetrievedBeforeFirstDraw{ActivityType}" |
| units="ms" expires_after="2023-06-15"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Amount of time the downloadable fonts were retrieved before the first draw. |
| Mutually exclusive with *AfterFirstDraw. Recorded when the first #onDraw |
| call happens for the {ActivityType}'s content view. |
| </summary> |
| <token key="ActivityType" variants="ActivityType"/> |
| </histogram> |
| |
| <histogram |
| name="Android.Fonts.TimeDownloadableFontsRetrievedBeforePostInflationStartup{ActivityType}" |
| units="ms" expires_after="2023-06-15"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Amount of time the downloadable fonts were retrieved before post-inflation |
| startup. Mutually exclusive with *AfterPostInflationStartup. Recorded after |
| AsyncInitializationActivity#performPostInflationStartup. {ActivityType} |
| </summary> |
| <token key="ActivityType" variants="ActivityType"/> |
| </histogram> |
| |
| <histogram |
| name="Android.Fonts.TimeToRetrieveDownloadableFontsAfterOnCreate{ActivityType}" |
| units="ms" expires_after="2023-06-15"> |
| <owner>sinansahin@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Time it took to retrieve the downloadable fonts after Application#OnCreate. |
| Recorded when all downloadable fonts are retrieved. {ActivityType} |
| </summary> |
| <token key="ActivityType" variants="ActivityType"/> |
| </histogram> |
| |
| <histogram name="Android.HistoryPage.ClearBrowsingData.PerProfileType" |
| enum="BrowserProfileType" expires_after="2023-10-08"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the clicks on Clear Browsing Data button at history page for each |
| profile type in Android. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.HomeButton.PerProfileType" enum="BrowserProfileType" |
| expires_after="2023-01-15"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the clicks on Home button in Android toolbar for each profile type. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.IncognitoNotification.FileNotDeleted" enum="Boolean" |
| expires_after="2023-06-25"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the count of any cases when clicking on the "Close all |
| Incognito tabs" notification may not delete any files which were opened |
| in the Incognito session. True value denotes file was not deleted and false |
| otherwise. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.IncognitoReauth.AuthResult" |
| enum="DeviceAuthFinalResult" expires_after="2023-09-24"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the result of the attempt to re-auth the user via biometrics or |
| device lock for the Incognito re-auth screen. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.IncognitoReauth.PrefToggledFromSettingPage" |
| enum="IncognitoReauthToggleValueType" expires_after="2023-10-08"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the count when the Incognito lock setting was either turned |
| "on" or "off" from the Chrome Settings > Privacy and |
| Security > Lock Incognito tabs when you leave Chrome, option. This |
| setting can be in disabled state if the Android screen lock is not set-up, |
| in which case we don't record this metric. This is recorded only when the |
| toggle is not in disabled state and if the re-authentication checks succeeds |
| which follows after the user changes the toggle. This covers only the |
| interactions done from the above mentioned Incognito lock Setting page. See |
| also the metric "Android.IncognitoReauth.PromoActionType" which |
| records the opt-in made exclusively from promo card. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.IncognitoReauth.PromoAcceptedOrDismissed" |
| enum="IncognitoReauthPromoActionType" expires_after="2023-09-10"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the action type the user makes on the Incognito re-auth promo card |
| which is shown inside the Incognito tab grid view. There's only two possible |
| interactions possible which is either to turn on the Incognito lock or |
| dismiss the promo. A "Promo accepted" entry is emitted when user |
| clicks on "Turn on Incognito lock" (gated on successful |
| re-authentication) and a "No thanks" value is emitted when the |
| user clicks on "No thanks". |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.IncognitoReauth.PromoImpressionAfterActionCount" |
| units="count" expires_after="M119"> |
| <owner>arabm@google.com</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the number of impressions of the Incognito re-auth promo card when |
| user clicks accept or dismiss or when the promo expires after the max number |
| of impressions. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.IncognitoReauth.ToggleOnOrOff" enum="BooleanToggled" |
| expires_after="2023-09-03"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the Incognito lock setting state (if available to clients) exactly |
| once during the browser startup, after the native code is initialized. Note, |
| for multi-windows this histogram would be emitted as many times as the users |
| enter multi-window(s). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Intent.BlockedExternalNavLastGestureTime" units="ms" |
| expires_after="2023-08-27"> |
| <owner>mthiesse@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| When a navigation to an external protocol is blocked due to a missing |
| gesture on the redirect chain, records the time in milliseconds since the |
| last time the user touched the screen before the navigation. Note that this |
| notion is decoupled from the last user activation in blink due to quirks |
| around how the RedirectHandler works. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Intent.IntentUriNavigationResult" |
| enum="IntentUriNavigationResult" expires_after="2023-10-15"> |
| <owner>mthiesse@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Recorded when a navigation to an Intent URI occurs. Records the results of |
| the navigation. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Intent.IntentUriWithSelector" enum="Boolean" |
| expires_after="2023-06-18"> |
| <owner>mthiesse@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| When a site attempts to navigate an intent: or android-app: URI, records |
| whether or not the URI contained an intent selector. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Intent.MainFrameIntentLaunch" |
| enum="MainFrameIntentLaunch" expires_after="2023-10-15"> |
| <owner>mthiesse@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Recorded when an external app is launched as the result of a navigation. |
| Records the source and scheme of the navigation. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Intent.OpenFileType" enum="AndroidUtilsMimeTypes" |
| expires_after="2023-09-18"> |
| <owner>twellington@chromium.org</owner> |
| <owner>mthiesse@chromium.org</owner> |
| <summary> |
| When a user attempts to navigate a file: URI, records the mime type of the |
| file. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Intent.ShareIntentUrlCount" units="URLs" |
| expires_after="2024-02-01"> |
| <owner>mthiesse@chromium.org</owner> |
| <owner>tedchoc@google.com</owner> |
| <summary> |
| Number of URLs present in Text Share intents (ACTION_SEND) received by |
| Chrome. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.IsLastSharedAppInfoRetrieved" |
| enum="BooleanIsLastSharedAppInfoRetrieved" expires_after="M77"> |
| <owner>tedchoc@chromium.org</owner> |
| <owner>clank-team@google.com</owner> |
| <summary> |
| Signifies whether the last shared app information is retrieved successfully |
| or not. This is logged when configuring the direct sharing menu item. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.IsolatedSplits.ClassLoaderReplaced" |
| enum="BooleanYesNo" expires_after="2023-06-26"> |
| <!-- Name completed by histogram_suffixes name="AndroidFeatureModuleName" --> |
| |
| <owner>cduvall@chromium.org</owner> |
| <owner>agrieve@chromium.org</owner> |
| <summary> |
| Whether a split Context has had its ClassLoader replaced due to b/172602571. |
| This is recorded every time a split Context is created. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.IsolatedSplits.ContextCreateTime" |
| units="ms" expires_after="2023-08-27"> |
| <!-- Name completed by histogram_suffixes name="AndroidFeatureModuleName" --> |
| |
| <owner>cduvall@chromium.org</owner> |
| <owner>agrieve@chromium.org</owner> |
| <summary> |
| Amount of time it takes to create a new Context for a split. This will only |
| be recorded if isolated splits are enabled. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.IsolatedSplits.PreloadWaitTime" units="ms" |
| expires_after="2023-08-27"> |
| <!-- Name completed by histogram_suffixes name="AndroidFeatureModuleName" --> |
| |
| <owner>cduvall@chromium.org</owner> |
| <owner>agrieve@chromium.org</owner> |
| <summary> |
| Amount of time spent waiting for a split preload task to finish. This will |
| only be recorded if isolated splits are enabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Jank.AsyncTaskGetOnUiThreadStatus" |
| enum="AsyncTaskStatus" expires_after="2023-10-22"> |
| <owner>smaier@chromium.org</owner> |
| <owner>agrieve@chromium.org</owner> |
| <summary> |
| The status of an AsyncTask when get() is called on the UI thread. This is |
| only recorded if the AsyncTask isn't immediately available. |
| |
| Seeing the distribution of PENDING vs RUNNING tasks will give us a better |
| idea for how to approach these hangs. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.KernelVersion" enum="AndroidKernelVersion" |
| expires_after="2023-08-27"> |
| <owner>rsesek@chromium.org</owner> |
| <summary> |
| Reports the kernel major and minor version from the utsname.release field. |
| The low 16 bits of each version are combined into a 32-bit integer. The |
| range is from [0x00020006,0x0004000a] to track kernel versions 2.6 through |
| 4.10. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MediaPickerShown" enum="MediaPickerShown" |
| expires_after="2023-08-08"> |
| <owner>finnur@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Recorded once per batch of files uploaded, when Chrome has made the |
| determination of what media picker to show to the user. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MemoryPressureMonitor.GetMyMemoryState.Failed.Time" |
| units="microseconds" expires_after="M77"> |
| <obsolete> |
| Removed 09/2022. Expired and not needed anymore. |
| </obsolete> |
| <owner>ssid@chromium.org</owner> |
| <summary> |
| The duration of each failed ActivityManager.getMyMemoryState() call made by |
| MemoryPressureMonitor. |
| |
| Warning: This metric may include reports from clients with low-resolution |
| clocks (i.e. on Windows, ref. |TimeTicks::IsHighResolution()|). Such reports |
| will cause this metric to have an abnormal distribution. When considering |
| revising this histogram, see UMA_HISTOGRAM_CUSTOM_MICROSECONDS_TIMES for the |
| solution. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MemoryPressureNotification{AndroidProcessType}" |
| enum="Android.MemoryPressureNotification" expires_after="2021-12-05"> |
| <owner>ssid@chromium.org</owner> |
| <summary> |
| Memory pressure notifications sent by Android through ComponentCallbacks2. |
| This metric was added 04/2018; for prior data for the browser process see |
| MemoryAndroid.NotificationBackground and |
| MemoryAndroid.NotificationForeground. {AndroidProcessType} |
| </summary> |
| <token key="AndroidProcessType"> |
| <variant name=".Browser" summary="Browser process"/> |
| <variant name=".ChildService" |
| summary="Child service process (renderer, GPU, etc.)"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.Messages.Dismissed{MessageIdentifier}" |
| enum="MessageDismissReason" expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Recorded once per message when the message is dismissed to capture the |
| dismissal reason (e.g. primary button tap, timeout). The histogram can be |
| used for measuring user engagement with messages of different types. |
| </summary> |
| <token key="MessageIdentifier" variants="MessageIdentifiers"/> |
| </histogram> |
| |
| <histogram name="Android.Messages.Enqueued" enum="MessageIdentifier" |
| expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the message identifier each time a message is enqueued through |
| MessageDispatcher (the entry point to Chrome for Android's messages system). |
| This histogram can be used for getting a count of messages broken down by |
| message identifier. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Messages.Enqueued.Hidden" enum="MessageIdentifier" |
| expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the message identifier when an enqueued message is not immediately |
| displayed either because there is another message on the secreen or because |
| message scope (e.g. tab) is not active. This metric is recorded along with |
| Android.Messages.Enqueued.Hiding, which records identifier of currently |
| visible message. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Messages.Enqueued.Hiding" enum="MessageIdentifier" |
| expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Recorded when an enqueued message is not immediately displayed. This metric |
| records message identifier of a message currently displayed on the screen |
| (that prevented the enqueued message from getting displayed immediately). |
| INVALID_MESSAGE is recorded when the message isn't displayed because message |
| scope (e.g. tab) isn't active or when message queue is suspended. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Messages.Enqueued.Visible" enum="MessageIdentifier" |
| expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the message identifier when a message is displayed immediately when |
| it is enqueued. This includes cases when there are no other messages on the |
| screen as well as cases when the new message is high priority and causes |
| some other message to hide. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Messages.Stacking" enum="StackingAnimationType" |
| expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the type of stacking animation when it is triggered. The type |
| indicates the relation between current displayed messages and incoming |
| messages. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Messages.Stacking.ThreeStacked" |
| enum="StackingAnimationThreeStackedType" expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the scenario when 3 message stacking could be possible. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Messages.Stacking.{Action}" enum="MessageIdentifier" |
| expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the message identifier when {Action} during a stacking animation. |
| </summary> |
| <token key="Action"> |
| <variant name="InsertAtBack" summary="a message is inserted at back."/> |
| <variant name="InsertAtFront" summary="a message is inserted at front."/> |
| <variant name="PushToBack" summary="a front message is pushed to back."/> |
| <variant name="PushToFront" summary="a back message is pushed to front."/> |
| <variant name="RemoveBack" summary="a back message is removed."/> |
| <variant name="RemoveFront" summary="a front message is removed."/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.Messages.TimeToAction.Dismiss{MessageIdentifier}" |
| units="ms" expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the time interval the message was displayed on the screen before the |
| user dismissed it with a gesture. The metric is NOT recorded when the user |
| presses primary or secondary button or when the message is auto-dismissed |
| based on timer. The interval includes both enter and exit animation. The |
| metric can be used to analyze the time threshold for the user to give up |
| waiting for autodismiss timer and dismiss the message explicitly. |
| </summary> |
| <token key="MessageIdentifier" variants="MessageIdentifiers"/> |
| </histogram> |
| |
| <histogram name="Android.Messages.TimeToAction{MessageIdentifier}" units="ms" |
| expires_after="M122"> |
| <owner>lazzzis@chromium.org</owner> |
| <owner>src/components/messages/OWNERS</owner> |
| <summary> |
| Records the time interval the message was displayed on the screen before the |
| user explicitly dismissed it. The metric is recorded when the user presses |
| primary or secondary button, or dismisses the message with a gesture. It is |
| not recorded when the message is auto-dismissed based on timer. The interval |
| includes both enter and exit animation. The metric can be used to analyze |
| the amount of time it takes for the user to understand the message and take |
| an action (e.g. click a button, dismiss the message, etc.). |
| </summary> |
| <token key="MessageIdentifier" variants="MessageIdentifiers"/> |
| </histogram> |
| |
| <histogram name="Android.ModalDialog.SecurityFilteredTouchResult" |
| enum="SecurityFilteredTouchResult" expires_after="2023-09-01"> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the action taken on a security sensitive touch event in modal |
| dialog. As of M84 it is used for site premission dialogs. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ModerateBindingCount" units="bindings" |
| expires_after="M77"> |
| <obsolete> |
| Expired in M77. See Android.ChildProcessBinding.* |
| </obsolete> |
| <owner>tedchoc@chromium.org</owner> |
| <owner>clank-team@google.com</owner> |
| <summary> |
| The number of moderate bindings which were kept while Chrome process is in |
| the foreground. This is logged right before Chrome process goes into the |
| background. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MultiInstance.MaxInstanceCount" units="instances" |
| expires_after="2023-09-10"> |
| <owner>jinsukkim@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| The maximum number of Chrome instances that ran at the same time in a |
| 24-hour period. Checked whenever there is an activity state change to log |
| the stats once in 24 hours. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MultiInstance.NumActivities" units="activities" |
| expires_after="2023-09-03"> |
| <owner>jinsukkim@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records the number of running ChromeTabbedActivity's on every |
| ChromeTabbedActivity startup. This includes activities that may not be |
| visible on screen (i.e. it includes ChromeTabbedActivity's in the |
| "stopped" state). This does not include ChromeTabbedActivity's |
| that have been destroyed regardless of whether their owning Android Task may |
| be retrieved in Android Recents. Applicable to Android S+ only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MultiInstance.NumInstances" units="instances" |
| expires_after="2023-09-03"> |
| <owner>jinsukkim@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| The number of allocated instance IDs which corresponds to the number of |
| retrievable Chrome instances (aka windows). An instance is considered |
| retrievable if it has tab state data on disk irrespective of whether that |
| data is currently assigned to a running ChromeTabbedActivity. These |
| instances may be retrieved from Chrome's in-app window manager from Android |
| Recents if they are associated with a live ChromeTabbedActivity or Android |
| Task. Recorded on every ChromeTabbedActivity start-up. Applicable to Android |
| S+ only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MultipleUserProfilesState" |
| enum="MultipleUserProfilesState" expires_after="2023-10-08"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <owner>chrome-metrics-team@google.com</owner> |
| <summary> |
| Records whether multiple user profiles are present in Android. This is |
| recorded every time a metrics log is closed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MultiWindowMode.Active" enum="BooleanEnabled" |
| expires_after="never"> |
| <!-- expires-never: topline metric for monitoring multi-window mode usage on Chrome for Android. --> |
| |
| <owner>twellington@chromium.org</owner> |
| <owner>tedchoc@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Records on every metrics upload whether the activity is running in Android N |
| multi-window mode or not. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.MultiWindowMode.TotalDuration" units="ms" |
| expires_after="2022-08-16"> |
| <owner>jinsukkim@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Total time spent in Android N+ multi-window (aka split-screen) mode. |
| Recorded when multi-window mode is exited. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.NativeBackgroundTask.TaskFinished" |
| enum="BackgroundTaskId" expires_after="2023-06-15"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records that a specific background task has finished cleanly (i.e. no |
| unexpected exits because of chrome crash or OOM). This includes tasks that |
| have been stopped due to timeout. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.NativeBackgroundTask.TaskFinished.FullBrowser" |
| enum="BackgroundTaskId" expires_after="2023-06-15"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <summary> |
| Records that a specific native background task started in Full Browser Mode |
| has finished cleanly. See Android.NativeBackgroundTask.TaskFinished for more |
| details. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.NativeBackgroundTask.TaskFinished.ReducedMode" |
| enum="BackgroundTaskId" expires_after="2023-06-15"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <summary> |
| Records that a specific native background task started in Reduced Mode has |
| finished cleanly. It is possible that Full Browser has launched while the |
| task was running. See Android.NativeBackgroundTask.TaskFinished for more |
| details. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.NativeBackgroundTask.TaskStarted" |
| enum="BackgroundTaskId" expires_after="2023-06-15"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records that a specific native background task has been started. This does |
| not consider tasks that are marked as DONE or RESCHEDULED before a call to |
| start native is made (regardless of whether native is already loaded). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.NativeBackgroundTask.TaskStarted.FullBrowser" |
| enum="BackgroundTaskId" expires_after="2023-08-20"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <summary> |
| Records that a specific native background task has been started in Full |
| Browser Mode. See Android.NativeBackgroundTask.TaskStarted for more details. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.NativeBackgroundTask.TaskStarted.ReducedMode" |
| enum="BackgroundTaskId" expires_after="2023-08-20"> |
| <owner>mheikal@chromium.org</owner> |
| <owner>hanxi@chromium.org</owner> |
| <owner>hnakashima@chromium.org</owner> |
| <summary> |
| Records that a specific native background task has been started in Reduced |
| Mode. See Android.NativeBackgroundTask.TaskStarted for more details. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.NTP.Impression" enum="NTPImpressionType" |
| expires_after="2023-09-10"> |
| <owner>finkm@chromium.org</owner> |
| <summary> |
| Counts impressions of the NTP on Android. It also counts potential |
| impressions. A potential impression is a place where it would make sense to |
| open the NTP instead of the current view. E.g. the no-tab view is counted as |
| a potential impression since this view could be replaced with the NTP. For |
| better comparison regular impressions are also counted. The no-tab view |
| counting happens right after the user closed the last tab and the regular |
| impression counting happens at construction time of the NTP (=whenever a new |
| tab is opened). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.OfflineItems.StateAtCancel{OfflineItemsSource}" |
| enum="OfflineItemsStateAtCancel" expires_after="M81"> |
| <owner>chili@chromium.org</owner> |
| <summary> |
| State of a download or offline page request at user-initiated cancel. |
| {OfflineItemsSource} |
| </summary> |
| <token key="OfflineItemsSource"> |
| <variant name=".Downloads" summary="Downloads"/> |
| <variant name=".OfflinePages" summary="Offline pages"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.ActionInSuggest.IntentResult" |
| enum="ActionInSuggestIntentResult" expires_after="2023-08-20"> |
| <owner>ender@google.com</owner> |
| <owner>chrome-mobile-search@google.com</owner> |
| <summary> |
| Records the outcome of the User's interaction with ActionInSuggest chips, |
| breaking down the cases where the intent could not be created or started. |
| |
| Recorded every time the user interacts with the ActionInSuggest, for the |
| Action that the user interacted with. Not recorded if the user does not |
| interact with ActionInSuggest. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.InputToNavigationControllerStart" units="ms" |
| expires_after="2023-10-22"> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| Records time between the user input that triggered an Omnibox navigation on |
| Android to the time the Omnibox code calls into the shared C++ navigation |
| code (NavigationController). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.InvalidMatch" enum="MatchResult" |
| expires_after="2023-08-27"> |
| <owner>ender@chromium.org</owner> |
| <owner>tedchoc@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Recorded every time AutocompleteController.java interacts with |
| autocomplete_controller_android.cc. Indicates how often matches referenced |
| by Java are different from the matches referenced by C++ at any position. |
| |
| Note: Chrome M91 and before only increased this histogram for specific Match |
| objects that the user interacted with. As of M92, this histogram is |
| increased for every case where at least one Match referenced by Java was |
| different from its corresponding C++ match at the same exact position. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.RefineActionUsage" enum="RefineActionUsage" |
| expires_after="2023-10-22"> |
| <owner>ender@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records interactions with the Search Refine button, differentiating by |
| context (zero-prefix vs non-zero-prefix), including the cases where the User |
| did not interact with the Refine button placed beside the Search suggestion |
| at all. |
| |
| Recorded once per interaction with the Omnibox and Sugestions, when the |
| Omnibox loses focus. This includes cases where the User chooses to navigate |
| somewhere (both by using a suggestion or pressing Go button on keyboard), or |
| abandons the Omnibox. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SetGeolocationHeadersTime" units="ms" |
| expires_after="2023-10-15"> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| Records time spent setting geolocation headers when the user navigates via |
| the Omnibox. This time blocks the start of the navigation and is included in |
| InputToNavigationStart metrics, but not in NavigationTo* metrics. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionList.LayoutTime" units="ms" |
| expires_after="2022-10-23"> |
| <obsolete> |
| Retired with M103. Please refer to .CreateTime2 |
| </obsolete> |
| <owner>ender@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records time spent on positioning all suggestions on screen. This histogram |
| is recorded every time a new suggestion list is received. |
| |
| Values recorded here should generally aim to be small, likely below 2ms |
| range. Higher values are an indicator of a performance problem. |
| |
| Layout operation should take place just once when suggestion view is shown |
| for the first time. |
| |
| This metric is reported for all users and uses 100microsecond granularity. |
| |
| When comparing Durations measured here, also compare Total Counts for a |
| correct indication of how frequently views are laid out and how the overall |
| time spent performing layout operation changed. |
| |
| This histogram is related to Android.Omnibox.SuggestionView.Reused, |
| Android.Omnibox.SuggestionList.MeasureTime, |
| Android.Omnibox.SuggestionView.CreateTime. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionList.LayoutTime2" units="ms" |
| expires_after="2023-10-15"> |
| <owner>ender@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records time spent on positioning all suggestions on screen. This histogram |
| is recorded every time a new suggestion list is received. |
| |
| Values recorded here should generally aim to be small, likely below 2ms |
| range. Higher values are an indicator of a performance problem. |
| |
| Layout operation should take place just once when suggestion view is shown |
| for the first time. |
| |
| This metric is reported for all users and uses 100microsecond granularity. |
| |
| When comparing Durations measured here, also compare Total Counts for a |
| correct indication of how frequently views are laid out and how the overall |
| time spent performing layout operation changed. |
| |
| This histogram is related to Android.Omnibox.SuggestionView.Reused, |
| Android.Omnibox.SuggestionList.MeasureTime2, |
| Android.Omnibox.SuggestionView.CreateTime2. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionList.MeasureTime" units="ms" |
| expires_after="2022-06-19"> |
| <obsolete> |
| Retired with M103. Please refer to .MeasureTime2 |
| </obsolete> |
| <owner>ender@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records time spent on measuring all suggestions ahead of positioning them on |
| screen. This histogram is recorded every time a new suggestion list is |
| received. |
| |
| Values recorded here should generally aim to be small, likely below 2ms |
| range. Higher values are an indicator of a performance problem. |
| |
| Measure operation should take place just once when suggestion view is shown |
| for the first time. |
| |
| This metric is reported for all users and uses 100microsecond granularity. |
| |
| When comparing Durations measured here, also compare Total Counts for a |
| correct indication of how frequently views are measured and how the overall |
| time spent measuring views changed. |
| |
| This histogram is related to Android.Omnibox.SuggestionView.Reused, |
| Android.Omnibox.SuggestionList.LayoutTime, |
| Android.Omnibox.SuggestionView.CreateTime. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionList.MeasureTime2" units="ms" |
| expires_after="2023-10-15"> |
| <owner>ender@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records time spent on measuring all suggestions ahead of positioning them on |
| screen. This histogram is recorded every time a new suggestion list is |
| received. |
| |
| Values recorded here should generally aim to be small, likely below 2ms |
| range. Higher values are an indicator of a performance problem. |
| |
| Measure operation should take place just once when suggestion view is shown |
| for the first time. |
| |
| This metric is reported for all users and uses 100microsecond granularity. |
| |
| When comparing Durations measured here, also compare Total Counts for a |
| correct indication of how frequently views are measured and how the overall |
| time spent measuring views changed. |
| |
| This histogram is related to Android.Omnibox.SuggestionView.Reused, |
| Android.Omnibox.SuggestionList.LayoutTime2, |
| Android.Omnibox.SuggestionView.CreateTime2. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionList.RequestToUiModel.First" |
| units="ms" expires_after="2023-10-22"> |
| <owner>ender@google.com</owner> |
| <owner>pnoland@chromium.org</owner> |
| <owner>gangwu@chromium.org</owner> |
| <summary> |
| Records time elapsed between requesting the suggestions and converting the |
| first (synchronous) set of received suggestions to the UI model. |
| |
| For the complete, asynchronous iteration see the |
| Android.Omnibox.SuggestionList.RequestToUiModel.Last metric. |
| |
| This metric is recorded exactly once per request, including the zero-prefix |
| suggestions request. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionList.RequestToUiModel.Last" |
| units="ms" expires_after="2023-10-22"> |
| <owner>ender@google.com</owner> |
| <owner>pnoland@chromium.org</owner> |
| <owner>gangwu@chromium.org</owner> |
| <summary> |
| Records time elapsed between requesting the suggestions and converting the |
| final (asynchronous) set of received suggestions to the UI model. |
| |
| For the short, synchronous iteration see the |
| Android.Omnibox.SuggestionList.RequestToUiModel.First metric. |
| |
| This metric is recorded at most once per request, including the zero-prefix |
| suggestions request. The metric will not be emitted if the current |
| Autocomplete cycle was canceled by the user - either by refining the input |
| in the omnibox, or by ending the interaction with the Omnibox. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionsListScrolled.{PageClass}" |
| enum="Boolean" expires_after="2024-02-01"> |
| <owner>ender@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| For every interaction with the Omnibox, this metric records whether the user |
| scrolled the omnibox while exploring suggestions on {PageClass}. |
| |
| This is recorded once per Omnibox interaction, regardless of whether the |
| User chooses to navigate somewhere or abandons the interaction. |
| </summary> |
| <token key="PageClass"> |
| <variant name="NTP" summary="the New Tab Page"/> |
| <variant name="Other" summary="a website"/> |
| <variant name="SRP" summary="the Search Results Page"/> |
| <variant name="Widget" summary="the Widget Search Activity"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionView.CreatedType" |
| enum="OmniboxSuggestionUiType" expires_after="2023-09-03"> |
| <owner>ender@google.com</owner> |
| <owner>gangwu@chromium.org</owner> |
| <owner>rongtan@chromium.org</owner> |
| <summary> |
| Records the type of suggestion that was reused with the help of |
| RecyclerView. |
| |
| This histogram drives OmniboxSuggestionsDropdown optimization, helping us |
| find the balance between the volume of suggestions and amount of memory we |
| delegate to re-use the pre-constructed suggestion views. |
| |
| Along with the Android.Omnibox.SuggestionView.ReusedType, the two histograms |
| paint the picture of which suggestions need to be created more often than |
| others vs which suggestions have more capacity than is actually needed. |
| Higher reuse means lower latency at the expense of slight increase of memory |
| consumption. |
| |
| This histogram is related to Android.Omnibox.SuggestionView.ReusedType. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionView.CreateTime" units="ms" |
| expires_after="2022-06-19"> |
| <obsolete> |
| Retired with M103. Please refer to .CreateTime2 |
| </obsolete> |
| <owner>ender@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records time spent creating a single suggestion. |
| |
| Values recorded here should generally aim to be small, below 1ms range. |
| Higher values may be an indicator of a performance problem. |
| |
| This metric is reported for all users and uses 100microsecond granularity. |
| |
| When comparing Durations measured here, also compare Total Counts for a |
| correct indication of how frequently views are created and how the overall |
| time spent creating views changed. |
| |
| This histogram is related to Android.Omnibox.SuggestionList.LayoutTime, |
| Android.Omnibox.SuggestionList.MeasureTime, |
| Android.Omnibox.SuggestionView.Reused. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionView.CreateTime2" units="ms" |
| expires_after="2023-10-15"> |
| <owner>ender@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records time spent creating a single suggestion. |
| |
| Values recorded here should generally aim to be small, below 1ms range. |
| Higher values may be an indicator of a performance problem. |
| |
| This metric is reported for all users and uses 100microsecond granularity. |
| |
| When comparing Durations measured here, also compare Total Counts for a |
| correct indication of how frequently views are created and how the overall |
| time spent creating views changed. |
| |
| This histogram is related to Android.Omnibox.SuggestionList.LayoutTime2, |
| Android.Omnibox.SuggestionList.MeasureTime2, |
| Android.Omnibox.SuggestionView.Reused. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionView.Reused" enum="BooleanReused" |
| expires_after="M110"> |
| <obsolete> |
| Replaced with Android.Omnibox.SessionViewsCreated and |
| Android.Omnibox.SessionViewsReused since M110 |
| </obsolete> |
| <owner>ender@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary> |
| Records number of times a suggestion was successfully reused. |
| |
| Values recorded here tell how efficiently View reuse algorithms operate and |
| how frequently these algorithms have managed to prevent unnecessary view |
| creation. Higher Reuse counts indicate better performance. |
| |
| When analysing this metric, consider checking also the Total Counts of |
| Android.Omnibox.SuggestionView.CreateTime metric for a better information |
| regarding how view creations and re-uses have changed: |
| |
| * If this metric increased while the Total Count of the CreateTime |
| decreased, the change has positive effect. |
| |
| * If this metric increased (or decreased) and there is a similar change in |
| Total Counts of CreateTime, then the effect is neutral. |
| |
| * If this metric decreased, while the Total Count increased, then the change |
| has a negative effect (fewer reuses, more time spent creating views) |
| |
| Obsolete: Please use Android.Omnibox.SessionViewsCreated and |
| Android.Omnibox.SessionViewsReused. |
| |
| This histogram is related to Android.Omnibox.SuggestionList.LayoutTime2, |
| Android.Omnibox.SuggestionList.MeasureTime2, |
| Android.Omnibox.SuggestionView.CreateTime2. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionView.ReusedType" |
| enum="OmniboxSuggestionUiType" expires_after="2023-09-03"> |
| <owner>ender@google.com</owner> |
| <owner>gangwu@chromium.org</owner> |
| <owner>rongtan@chromium.org</owner> |
| <summary> |
| Records the type of suggestion that was reused with the help of |
| RecyclerView. |
| |
| This histogram drives OmniboxSuggestionsDropdown optimization, helping us |
| find the balance between the volume of suggestions and amount of memory we |
| delegate to re-use the pre-constructed suggestion views. |
| |
| Along with the Android.Omnibox.SuggestionView.CreatedType, the two |
| histograms paint the picture of which suggestions need to be created more |
| often than others vs which suggestions have more capacity than is actually |
| needed. Higher reuse means lower latency at the expense of slight increase |
| of memory consumption. |
| |
| This histogram is related to Android.Omnibox.SuggestionView.CreatedType. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionView.SessionViewsCreated" |
| units="count" expires_after="2023-09-03"> |
| <owner>ender@google.com</owner> |
| <owner>rongtan@google.com</owner> |
| <summary> |
| Records number of views created from the moment the Omnibox was focused, |
| until the interaction was completed, whether the user navigated somewhere or |
| canceled the interaction. |
| |
| Values recorded here tell how efficiently the view creation and re-use |
| works, highlighting possible issues related to unusually frequent view |
| creation; the number of views created should be low and not exceed the sum |
| of all the views recycled by HistogramRecordingRecycledViewPool component. |
| Any deviation from this are a signal that the RecycledViewPool limits are |
| not optimal. |
| |
| When observing a higher than expected number of created views, consult the |
| Android.Omnibox.SuggestionView.CreatedType to identify view type that is not |
| correctly captured and update the limits of the |
| HistogramRecordingRecycledViewPool. |
| |
| This histogram is related to Android.Omnibox.SuggestionView.CreatedType, |
| Android.Omnibox.SuggestionView.SessionViewsReused. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.SuggestionView.SessionViewsReused" units="%" |
| expires_after="2023-09-03"> |
| <owner>ender@google.com</owner> |
| <owner>rongtan@google.com</owner> |
| <summary> |
| Captures the efficiency of the view re-use from the moment the Omnibox was |
| focused, until the interaction was completed, whether the user navigated |
| somewhere or canceled the interaction. |
| |
| Values captured here directly reflect the efficiency of recycled view pool |
| tuning, with the following caveats: |
| |
| * short sessions (omnibox focused and defocused, with no inputs) will report |
| efficiency of 0% (because all the views had to be created and no views were |
| available for re-use). |
| |
| * this metric will never truly capture 100% effectiveness, because during |
| every input session some views will have to be created. |
| |
| The captured value should be at or above 90% re-use. Lower re-use rates may |
| be an indication of a possible issue. |
| |
| This histogram is related to |
| Android.Omnibox.SuggestionView.SessionViewsCreated. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Omnibox.UsedSuggestionFromCache" enum="Boolean" |
| expires_after="2022-09-04"> |
| <owner>ender@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <summary> |
| Records whether users interacted with suggestion originating from Java |
| cache. |
| |
| Android presents the Cached suggestions for a brief time before the Native |
| libraries become available, replacing these with a fresh content as soon as |
| Autocomplete subsystem serves them. This histogram records all the events |
| where the cached suggestions were shown for an extended period of time - |
| long enough for the User to identify and interact with a suggestion of their |
| choice. |
| |
| Recorded every time the User initiates navigation using the Omnibox or the |
| Suggestions list, regardless of context. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.OmniboxFocusReason" enum="OmniboxFocusReason" |
| expires_after="2023-10-08"> |
| <owner>mdjones@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>amaralp@chromium.org</owner> |
| <owner>mpearson@chromium.org</owner> |
| <owner>jdonnelly@chromium.org</owner> |
| <summary>Records how the omnibox was focused.</summary> |
| </histogram> |
| |
| <histogram name="Android.OpenHistoryFromMenu.PerProfileType" |
| enum="BrowserProfileType" expires_after="2023-01-15"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Records the clicks on History menu item separately for each profile type in |
| Android. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PackageStats.CacheSize" units="MB" |
| expires_after="2024-03-05"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records the size of the user's cache at startup on Android O and above. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PackageStats.CodeSize" units="MB" |
| expires_after="2024-03-05"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| At startup, records the space on disk taken by Chrome application including |
| APK resources, compiled libraries, and extracted native code. Only recorded |
| for Android O and above. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PackageStats.DataSize" units="MB" |
| expires_after="2024-03-05"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Records the size of the user's data directory at startup on Android O and |
| above. Does not include cache size. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PartnerBrowserCustomizationInitDuration" units="ms" |
| expires_after="2023-09-01"> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the total duration of initializing PartnerBrowserCustomization in |
| the background. Noting that and the initialization has a 10-second timeout, |
| and this histogram does not count the duration for all associated callback. |
| Recorded when the initialization is completed or canceled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PartnerBrowserCustomizationInitDuration.WithCallbacks" |
| units="ms" expires_after="2023-09-01"> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the total duration of initializing PartnerBrowserCustomization in |
| the background and running all of the associated callbacks. Recorded when |
| the initialization is completed or canceled, and all the associated async |
| callbacks are run. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PartnerCustomizationInitializedBeforeInitialTab" |
| enum="Boolean" expires_after="2023-09-01"> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records whether partner customization is initialized before the first tab is |
| created. A value of false means the first tab might be using a different |
| homepage than the one customized by the partner. Recorded during Chrome |
| start up when the very first tab is created. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.BitmapScalerTask" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time the BitmapScaler spent scaling a bitmap. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.CacheHits" units="Hits" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the total number of images served from the high-res cache during |
| the lifetime of the dialog. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.DecodeRequests" units="Hits" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the total number of images sent for decoding during the lifetime of |
| the dialog. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.DecoderHostFailureOutOfMemory" units="%" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| The percentage of out-of-memory decoding failures, per batch of photos (not |
| videos) decoded. Intended to help identify if there are devices where |
| decoding fails 100% of the time. Be wary at looking at other numbers in the |
| histogram, as a value emitted at, say, 50% may represent one failure in a |
| two-item decoding or 50 failures in a hundred-item decoding. These are |
| qualitatively different experiences for a user. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.DecoderHostVideoFileError" units="%" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| The percentage of file error decoding failures, per batch of videos (not |
| photos) decoded. Intended to help identify if there are devices where |
| decoding fails 100% of the time. Be wary at looking at other numbers in the |
| histogram, as a value emitted at, say, 50% may represent one failure in a |
| two-item decoding or 50 failures in a hundred-item decoding. These are |
| qualitatively different experiences for a user. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.DecoderHostVideoIoError" units="%" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| The percentage of IO error decoding failures, per batch of videos (not |
| photos) decoded. Intended to help identify if there are devices where |
| decoding fails 100% of the time. Be wary at looking at other numbers in the |
| histogram, as a value emitted at, say, 50% may represent one failure in a |
| two-item decoding or 50 failures in a hundred-item decoding. These are |
| qualitatively different experiences for a user. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.DecoderHostVideoRuntimeError" units="%" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| The percentage of runtime error decoding failures, per batch of videos (not |
| photos) decoded. Intended to help identify if there are devices where |
| decoding fails 100% of the time. Be wary at looking at other numbers in the |
| histogram, as a value emitted at, say, 50% may represent one failure in a |
| two-item decoding or 50 failures in a hundred-item decoding. These are |
| qualitatively different experiences for a user. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.DecoderHostVideoUnknownError" units="%" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| The percentage of unknown decoding error failures, per batch of videos (not |
| photos) decoded. Intended to help identify if there are devices where |
| decoding fails 100% of the time. Be wary at looking at other numbers in the |
| histogram, as a value emitted at, say, 50% may represent one failure in a |
| two-item decoding or 50 failures in a hundred-item decoding. These are |
| qualitatively different experiences for a user. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.DialogAction" |
| enum="PhotoPickerDialogAction" expires_after="2023-10-08"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records which action the user takes in the PhotoPickerDialog. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.EnumeratedFiles" units="Files" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the total number of files returned from the enumeration operation. |
| Measured once at the end of the enumeration operation. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.EnumeratedRate" |
| units="Files per 10th of a second" expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the enumeration rate (files per tenths of a second). Measured once |
| at the end of the enumeration operation. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.EnumerationTime" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time the BitmapScaler spent enumerating files on |
| disk. Measured once at the end of the enumeration operation. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.ExifOrientation" enum="ExifOrientation" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records whether the EXIF orientation directive is present and what it is set |
| to. Collected once per decoded image, but only on Android N and above (and |
| when no IO error occurs). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.ImageByteCount" units="KB" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the byte count of a decoded image. Only recorded on successful |
| decodes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.ImageDecodeTime" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time it takes the decoder to decode one image. Only |
| recorded on successful decodes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.RequestProcessTime" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time it takes to process one image decode request |
| (not video) end to end (RPC and actual decoding of the bits by utility |
| process). Recorded whether or not the RPC/decode request was successful. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.RequestProcessTimeAnimation" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time it takes to decode all the frames needed to show |
| the animation -- end to end (RPC and actual decoding of the bits by utility |
| process). Recorded whether or not the RPC/decode request was successful. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.RequestProcessTimeThumbnail" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time it takes to process one video frame request end |
| to end (RPC and actual decoding of the bits by utility process). Recorded |
| whether or not the RPC/decode request was successful. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.UpscaleLowResBitmap" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time it takes to upscale a bitmap from the low-res |
| cache. Recorded only when there a cache miss from the high-res bitmap but a |
| cache hit from the low-res (placeholder) bitmap. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.VideoByteCount" units="KB" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the byte count of the first video thumbnail. Only recorded on |
| successful decodes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.VideoDecodeTimeAnimation" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time it takes the decoder to decode all the frames |
| needed to display an animated thumbnail. Only recorded on successful |
| decodes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PhotoPicker.VideoDecodeTimeThumbnail" units="ms" |
| expires_after="2023-06-01"> |
| <owner>finnur@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Measures the amount of time it takes the decoder to decode the first frame |
| of a video. Only recorded on successful decodes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PlayServices.Installed" enum="BooleanInstalled" |
| expires_after="2022-12-25"> |
| <owner>twellington@chromium.org</owner> |
| <owner>tedchoc@chromium.org</owner> |
| <summary> |
| Whether Google Play Services is installed on the device. Recorded during |
| deferred startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PlayServices.Version" units="versioncode" |
| expires_after="2023-09-03"> |
| <owner>twellington@chromium.org</owner> |
| <owner>tedchoc@chromium.org</owner> |
| <summary> |
| The version code for Google Play Services if it is installed on the device, |
| or 0 if it is not. Recorded during deferred startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.PrepareMenu.OpenWebApkVisibilityCheck" units="ms" |
| expires_after="2023-12-01"> |
| <owner>hartmanng@chromium.org</owner> |
| <owner>src/chrome/android/webapk/OWNERS</owner> |
| <summary> |
| Measures the amount of time spent querying for whether a WebAPK is already |
| installed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RequestDesktopSite.Changed" enum="SiteLayout" |
| expires_after="2023-10-15"> |
| <owner>shuyng@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the changes of request desktop site content settings. This is |
| recorded when a user manually switches the global setting between |
| mobile/desktop. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RequestDesktopSite.DomainSettingChanged" |
| enum="Boolean" expires_after="2023-08-13"> |
| <owner>shuyng@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the new domain level Request Desktop Setting when changed. False |
| means Mobile site while true means Desktop site. This is recorded when a |
| user manually edits a domain level Request Desktop Setting from the site |
| settings exception list. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RequestDesktopSite.PerSiteIphDismissed.AppMenuOpened" |
| enum="Boolean" expires_after="2023-08-13"> |
| <owner>aishwaryarj@google.com</owner> |
| <owner>shuyng@google.com</owner> |
| <summary> |
| Records if a user opened the app menu as a consequence of showing the |
| per-site IPH, emitted when the IPH is dismissed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RequestDesktopSite.SubDomainSettingChanged" |
| enum="Boolean" expires_after="2023-08-13"> |
| <owner>shuyng@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the new subdomain level Request Desktop Setting when changed. False |
| means Mobile site while true means Desktop site. This is recorded when a |
| user manually edits a subdomain level Request Desktop Setting from the site |
| settings exception list. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RequestDesktopSite.TabletEligible" enum="Boolean" |
| expires_after="2022-04-17"> |
| <obsolete> |
| Deprecated in December 2022. This is no longer recorded as we cleanup |
| feature flag RequestDesktopSiteForTablets. |
| </obsolete> |
| <owner>gangwu@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Records if Chrome width is eligible for requesting desktop sites. Recorded |
| only when navigating to google or google search. This is recorded when |
| chrome adds X-Eligible-Tablet to the http header per request. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RequestDesktopSite.UseDesktopUserAgent" enum="Boolean" |
| expires_after="2023-08-27"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Records if Chrome uses the desktop site user agent to request websites. This |
| is recorded when each tab loads a new url or reloads a url. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RequestDesktopSite.UserSwitchToDesktop" enum="Boolean" |
| expires_after="2023-08-27"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Records if a user switched to request desktop site from the app menu. This |
| is recorded when a user manually switches sites between the desktop/mobile. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.RequestDesktopSite.UserSwitchToDesktop.DomainSettingAdded" |
| enum="Boolean" expires_after="2023-08-13"> |
| <owner>shuyng@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the new domain level Request Desktop Setting when added. False means |
| Mobile site while true means Desktop site. This is recorded when a user |
| manually adds a domain level Request Desktop Setting from the Add site |
| dialog in Site settings. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.RequestDesktopSite.UserSwitchToDesktop.SubDomainSettingAdded" |
| enum="Boolean" expires_after="2023-08-13"> |
| <owner>shuyng@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records the new subdomain level Request Desktop Setting when added. False |
| means Mobile site while true means Desktop site. This is recorded when a |
| user manually adds a subdomain level Request Desktop Setting from the Add |
| site dialog in Site settings. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.RestoreResult" enum="AndroidRestoreResult" |
| expires_after="2023-08-27"> |
| <owner>triploblastic@chromium.org</owner> |
| <owner>chrome-signin-team@google.com</owner> |
| <summary> |
| Whether Chrome tried to restore its settings from a previous device or |
| installation, and what happened when it did. Only recorded on first run. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Rotation.BeginToRendererFrameActivation" units="ms" |
| expires_after="2023-09-03"> |
| <owner>jonross@chromium.org</owner> |
| <owner>graphics-dev@chromium.org</owner> |
| <summary> |
| Measures the amount of time from when Android begins notifying the Browser |
| process of a rotation, to when the Renderer successfully submits and |
| activates a frame in the new orientation. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SearchEngineChoice.ChosenSearchEngine" |
| enum="OmniboxSearchEngineType" expires_after="2023-06-01"> |
| <owner>fgorski@chromium.org</owner> |
| <owner>wylieb@chromium.org</owner> |
| <summary> |
| The type of the search engine chosen by the user in Search Engine Choice |
| flow. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SearchEngineChoice.Events" |
| enum="AndroidSearchEngineChoiceEvents" expires_after="2023-06-01"> |
| <owner>wylieb@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Counts occurences of various events related to Search Engine Choice feature. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SearchEngineChoice.EventsV2" |
| enum="AndroidSearchEngineChoiceEventsV2" expires_after="2023-08-08"> |
| <owner>wylieb@chromium.org</owner> |
| <owner>pavely@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Counts occurences of various events related to Search Engine Choice V2 |
| feature. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SearchEngineChoice.SearchEngineBeforeChoicePrompt" |
| enum="OmniboxSearchEngineType" expires_after="2023-08-08"> |
| <owner>wylieb@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| The type of the search engine used before Search Engine Choice flow was |
| presented. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SeccompStatus.RendererSandbox" |
| enum="AndroidSeccompSandboxStatus" expires_after="2023-08-27"> |
| <owner>rsesek@chromium.org</owner> |
| <summary> |
| Reports the status of the seccomp-bpf sandbox in renderer processes. |
| Anything other than "Sandbox Engaged" indicates the sandbox is not |
| turned on. See https://crbug.com/477049. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SelectFileDialogContentSelected" |
| enum="SelectFileDialogContent" expires_after="2023-08-27"> |
| <owner>finnur@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Records the types of content selected for upload, focusing mostly on image |
| and video types and how they were determined (asking ContentResolver for the |
| MIME type or going by extension). Recorded when user uploads files to a |
| website (once per item uploaded). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SelectFileDialogImgCount" units="images" |
| expires_after="2023-08-27"> |
| <owner>finnur@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Records the number of images selected in either the new Photo Picker or the |
| standard Android file picker. Note: Only recorded in situations determined |
| to warrant the new Photo Picker (not, for example, if mixed content, like |
| images and text files, was requested). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SelectFileDialogScope" enum="SelectFileDialogScope" |
| expires_after="2023-08-27"> |
| <owner>peter@chromium.org</owner> |
| <owner>finnur@chromium.org</owner> |
| <summary> |
| Records the scope of accepted content for a select file dialog when shown by |
| a Web developer. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.SpareTab.FinalStatus" enum="SpareTabFinalStatus" |
| expires_after="2023-10-10"> |
| <owner>sreejakshetty@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| Records the final status of the spare tab, for example, if the spare tab is |
| used, destroyed, crashed, etc. This is recorded when the spare tab is used |
| for navigation or destroyed. It is only recorded when a spare tab is |
| created, and it is only recorded once per spare tab. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.StrictMode.OverrideUrlLoadingTime" units="ms" |
| expires_after="2023-09-10"> |
| <owner>yfriedman@chromium.org</owner> |
| <owner>wnwen@chromium.org</owner> |
| <summary> |
| Measures the amount of time due to a StrictMode violation from calling out |
| to Android activity manager. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.StrictMode.ThumbnailCacheDir" units="ms" |
| expires_after="M85"> |
| <owner>wnwen@chromium.org</owner> |
| <owner>yfriedman@chromium.org</owner> |
| <summary> |
| Measures the amount of time due to a StrictMode violation from fetching for |
| the thumbnail cache directory. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Survey.DownloadAttemptsBeforeAccepted" units="units" |
| expires_after="2023-08-27"> |
| <owner>skym@chromium.org</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| The number of survey download request attempts that have been made before |
| the survey is accepted. Note: |
| |
| 1) The download attempt might not result in a survey download due to |
| different reasons (e.g. download request failed or network failure). 2) |
| Chrome may have also successfully downloaded the survey several times in |
| previous sessions, but the surveys were not able to be shown for min amount |
| of times. In such scenarios, the total number of attempts across all |
| sessions will be recorded. 3) If the number of allowed download attempts has |
| been saturated before the survey is accepted, nothing will be recorded. |
| |
| Recorded when a survey prompt is accepted. Android Only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Survey.DownloadRequested2" enum="BooleanRequested" |
| expires_after="2023-08-27"> |
| <owner>twellington@chromium.org</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Recorded when a survey download is requested. If the download has been |
| attemped, but the download request is not sent (e.g. user is not signed-in), |
| 'not requested' will be recorded. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Survey.DownloadResponseCode2" |
| enum="SurveyDownloadResponseCodes2" expires_after="2023-08-27"> |
| <owner>skym@chromium.org</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| The result of the completed survey download request. A survey download is |
| initiated on ChromeTabbedActivity cold start iff the user passes a series of |
| eligibility checks. Recorded when a valid survey response is received. |
| Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Survey.ShowSurveyStatus" |
| enum="SurveyPresentationStatusCode" expires_after="2023-08-27"> |
| <owner>aishwaryarj@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| The result of the request to show the survey after it has been downloaded. |
| This request is initiated when the user accepts to take the survey on the |
| survey prompt. This histogram is agnostic to the content of the survey, |
| which is configured server side, and will be recorded for all surveys shown |
| in Chrome. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Survey.SurveyCompleted" enum="BooleanCompleted" |
| expires_after="2023-08-27"> |
| <owner>skym@chromium.org</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| Whether a user completed the survey after it was presented. This histogram |
| is agnostic to the content of the survey, which is configured server side, |
| and will be recorded for all surveys shown in Chrome. Android only. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Survey.SurveyFilteringResults" |
| enum="SurveyFilteringResult" expires_after="2023-08-27"> |
| <owner>twellington@chromium.org</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <owner>clank-app-team@google.com</owner> |
| <summary> |
| The result of the survey filtering process. Each enum represents a different |
| filter that caught the user. This is recorded on cold starts when we check |
| if a user qualifies for a survey. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.Tab.CreateNewTabDuration.{TabLaunchType}" units="ms" |
| expires_after="2023-07-10"> |
| <owner>sreejakshetty@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| Records the duration of new tab creation for {TabLaunchType}. Emitted |
| everytime a new tab is finished being created. Take into account that |
| low-end devices create tabs more slowly, so adjust your analysis |
| accordingly. |
| </summary> |
| <token key="TabLaunchType"> |
| <variant name="AppWidget" summary="tabs opened from an app widget"/> |
| <variant name="BrowserActions" |
| summary="tabs opened from browser actions context menu"/> |
| <variant name="ChromeUI" summary="tabs opened via Chrome UI"/> |
| <variant name="ExternalApp" summary="tabs opened from an external app"/> |
| <variant name="LauncherShortcut" |
| summary="tabs opened from launcher shortcut"/> |
| <variant name="Link" summary="tabs opened from a link"/> |
| <variant name="LongpressBackground" |
| summary="tabs opened from the long press context menu which are |
| opened in the background"/> |
| <variant name="LongpressBackgroundInGroup" |
| summary="tabs opened from long press context menu item 'Open in new |
| tab in group'"/> |
| <variant name="LongpressForeground" |
| summary="tabs opended from the long press context menu"/> |
| <variant name="LongpressIncognito" |
| summary="tabs opened from the long press context menu item 'Open in |
| Incognito Tab'"/> |
| <variant name="NewIncognitoTab" |
| summary="tabs opened by an external application launching a new |
| Chrome incognito tab"/> |
| <variant name="ReadingList" summary="tabs opened from the reading list"/> |
| <variant name="RecentTabs" |
| summary="tabs opened in backrgound from recent tabs"/> |
| <variant name="Reparenting" summary="tabs opened from changing windows"/> |
| <variant name="Restore" summary="tabs opened from restores"/> |
| <variant name="SpeculativeBackgroundCreation" |
| summary="tabs opened from CCT in the background"/> |
| <variant name="StartSurface" summary="tabs opened from the start surface"/> |
| <variant name="Startup" summary="tabs opened during the startup process"/> |
| <variant name="TabGroupUI" summary="tabs opened from Tab group UI"/> |
| <variant name="TabSwitcherUI" summary="tabs opened from Tab Switcher UI"/> |
| <variant name="TypeUnknown" |
| summary="tabs opened from a different case than one's listed"/> |
| </token> |
| </histogram> |
| |
| <histogram |
| name="Android.Tab.CreateNewTabDuration.{TabLaunchType}.WithExistingWebContents" |
| units="ms" expires_after="2023-07-10"> |
| <owner>sreejakshetty@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| Records the duration of the creation of a new tab from an existing |
| WebContents for {TabLaunchType}. A record is made each time a tab is created |
| using an existing WebContents. |
| </summary> |
| <token key="TabLaunchType"> |
| <variant name="AppWidget" summary="tabs opened from an app widget"/> |
| <variant name="BrowserActions" |
| summary="tabs opened from browser actions context menu"/> |
| <variant name="ChromeUI" summary="tabs opened via Chrome UI"/> |
| <variant name="ExternalApp" summary="tabs opened from an external app"/> |
| <variant name="LauncherShortcut" |
| summary="tabs opened from launcher shortcut"/> |
| <variant name="Link" summary="tabs opened from a link"/> |
| <variant name="LongpressBackground" |
| summary="tabs opened from the long press context menu which are |
| opened in the background"/> |
| <variant name="LongpressBackgroundInGroup" |
| summary="tabs opened from long press context menu item 'Open in new |
| tab in group'"/> |
| <variant name="LongpressForeground" |
| summary="tabs opended from the long press context menu"/> |
| <variant name="LongpressIncognito" |
| summary="tabs opened from the long press context menu item 'Open in |
| Incognito Tab'"/> |
| <variant name="NewIncognitoTab" |
| summary="tabs opened by an external application launching a new |
| Chrome incognito tab"/> |
| <variant name="ReadingList" summary="tabs opened from the reading list"/> |
| <variant name="RecentTabs" |
| summary="tabs opened in backrgound from recent tabs"/> |
| <variant name="Reparenting" summary="tabs opened from changing windows"/> |
| <variant name="Restore" summary="tabs opened from restores"/> |
| <variant name="SpeculativeBackgroundCreation" |
| summary="tabs opened from CCT in the background"/> |
| <variant name="StartSurface" summary="tabs opened from the start surface"/> |
| <variant name="Startup" summary="tabs opened during the startup process"/> |
| <variant name="TabGroupUI" summary="tabs opened from Tab group UI"/> |
| <variant name="TypeUnknown" |
| summary="tabs opened from a different case than one's listed"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.TabMultiSelectV2.BookmarkTabsCount" units="count" |
| expires_after="2023-11-23"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>bjfong@google.com</owner> |
| <owner>fredmello@chromium.org</owner> |
| <summary> |
| Reports the number of tabs that are bookmarked using the TabSelectionEditor |
| bookmark action. Recorded once per user attempt to bookmark tabs in the Tab |
| Selection Editor. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TabMultiSelectV2.SharingState" |
| enum="TabSelectionEditorShareActionState" expires_after="2023-10-14"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>bjfong@google.com</owner> |
| <owner>fredmello@chromium.org</owner> |
| <summary> |
| The result of the share action taken from the TabSelectionEditor. Record |
| once per user attempt to share tabs in the Tab Selection Editor. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TabMultiSelectV2.TimeSinceLastShown" units="ms" |
| expires_after="2023-10-14"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <summary> |
| Measures the time between opening the TabSelectionEditor in milliseconds |
| within a given browser activity lifespan. This is recorded when the |
| TabSelectionEditor is shown with the exception of the first time it is shown |
| within an activity lifespan. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TabNavigationIntercept.Scheme" |
| enum="NavigationInterceptScheme" expires_after="2023-08-27"> |
| <owner>rbyers@chromium.org</owner> |
| <owner>mthiesse@chromium.org</owner> |
| <summary> |
| When a navigation is intercepted, the scheme of the URL being intercepted. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TabNavigationInterceptResult.For{ProtocolType}" |
| enum="NavigationInterceptResult" expires_after="2024-03-24"> |
| <owner>blundell@chromium.org</owner> |
| <owner>mthiesse@chromium.org</owner> |
| <owner>tedchoc@chromium.org</owner> |
| <summary> |
| The distribution of results when running ExternalNavigationHandler for |
| navigations that have an {ProtocolType}. This shows how often we send |
| intents to be handled by other applications. |
| </summary> |
| <token key="ProtocolType"> |
| <variant name="ExternalProtocol" summary="external protocol"/> |
| <variant name="InternalProtocol" summary="internal protocol"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.TabStrip.TimeToSwitchTab" units="ms" |
| expires_after="2023-10-22"> |
| <owner>gauravjj@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| This captures the time taken for a user to select a tab after scrolling the |
| tab strip as one measure of tab strip switching efficiency. This is recorded |
| only when a tab switch event occurs within 60 seconds of the most recent tab |
| strip scroll. In the event of multiple back-to-back scrolls, this metric is |
| recorded so long as the sequence of scrolls occur within 60 seconds of each |
| other and is capped at 3 minutes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TabSwitcher.CreationTime" units="ms" |
| expires_after="2023-10-08"> |
| <owner>skavuluru@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the time taken to create the StartSurfaceCoordinator and grid tab |
| switcher views. Only recorded for tablets. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TabSwitcher.IncognitoClickedIsEmpty" enum="Boolean" |
| expires_after="2023-09-10"> |
| <owner>roagarwal@chromium.org</owner> |
| <owner>chrome-incognito@google.com</owner> |
| <summary> |
| Emitted every time a user uses Incognito button on Tab Switcher. Records |
| whether or not there is any Incognito tab when Incognito button is clicked. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TabSwitcher.SetupRecyclerView.Time" units="ms" |
| expires_after="2023-09-17"> |
| <owner>skavuluru@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>clank-large-form-factors@google.com</owner> |
| <summary> |
| Records the time taken to create TabListCoordinator, which inflates the |
| RecyclerView for the grid tab switcher, and bind views. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ThumbnailCache.InMemoryApproximationCacheEntries" |
| units="thumbnails" expires_after="2023-09-25"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>dtrainor@chromium.com</owner> |
| <summary> |
| Records the number of entries for the in-memory approximation bitmap |
| thumbnail cache. Recorded on a Poisson distributed frequency with a mean of |
| 5 minutes starting 1 minute after TabContentManager native initialization. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ThumbnailCache.InMemoryApproximationCacheSize" |
| units="KiB" expires_after="2023-09-25"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>dtrainor@chromium.com</owner> |
| <summary> |
| Records the in-memory approximation bitmap thumbnail cache size in KiB. |
| Recorded on a Poisson distributed frequency with a mean of 5 minutes |
| starting 1 minute after TabContentManager native initialization. Note that |
| this memory may be distributed across the GPU process and Browser process. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ThumbnailCache.InMemoryCacheEntries" |
| units="thumbnails" expires_after="2023-09-25"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>dtrainor@chromium.com</owner> |
| <summary> |
| Records the number of entries for the in-memory ETC1 and bitmap thumbnail |
| cache. Recorded on a Poisson distributed frequency with a mean of 5 minutes |
| starting 1 minute after TabContentManager native initialization. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.ThumbnailCache.InMemoryCacheSize" units="KiB" |
| expires_after="2023-09-25"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>dtrainor@chromium.com</owner> |
| <summary> |
| Records the in-memory ETC1 and bitmap thumbnail cache size in KiB. Recorded |
| on a Poisson distributed frequency with a mean of 5 minutes starting 1 |
| minute after TabContentManager native initialization. Note that this memory |
| may be distributed across the GPU process and Browser process. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.ThumbnailProvider.BitmapCache.Size{ThumbnailProvider_ClientType}" |
| units="KB" expires_after="2021-01-30"> |
| <!-- Name completed by histogram_suffixes |
| name="ThumbnailProvider.ClientType" --> |
| |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Measures the size of the bitmap cache used. Recorded whenever a bitmap is |
| added to the cache. {ThumbnailProvider_ClientType} |
| </summary> |
| <token key="ThumbnailProvider_ClientType" |
| variants="ThumbnailProvider_ClientType"/> |
| </histogram> |
| |
| <histogram |
| name="Android.ThumbnailProvider.CachedBitmap.Found{ThumbnailProvider_ClientType}" |
| enum="BooleanFound" expires_after="2021-01-30"> |
| <!-- Name completed by histogram_suffixes |
| name="ThumbnailProvider.ClientType" --> |
| |
| <owner>shaktisahu@chromium.org</owner> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Records the status of a thumbnail query from the thumbnail provider |
| in-memory cache. {ThumbnailProvider_ClientType} |
| </summary> |
| <token key="ThumbnailProvider_ClientType" |
| variants="ThumbnailProvider_ClientType"/> |
| </histogram> |
| |
| <histogram name="Android.Toolbar.BitmapCapture" enum="ToolbarCaptureType" |
| expires_after="2023-09-17"> |
| <owner>skym@chromium.org</owner> |
| <owner>seacow@google.com</owner> |
| <summary> |
| Recorded when a toolbar view draws itself to a bitmap such that it can be |
| passed to the compositor and drawn by native. Performing a bitmap capture is |
| somewhat expensive opperation that must be done on the UI thread. It is |
| possible that high capture counts are correlated with scroll jank. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TopToolbar.AllowCaptureReason" |
| enum="TopToolbarAllowCaptureReason" expires_after="2023-09-10"> |
| <owner>skym@chromium.org</owner> |
| <owner>seacow@google.com</owner> |
| <summary> |
| Recorded on #isDirty calls that return true. Because #isDirty() is used to |
| control when bitmap captures happen, this histogram holds the reason that |
| the capture was allowed. Note that there there's an assert that calls into |
| #isDirty() from #getBitmap(), which can cause these to be double counted. If |
| Canary starts running assert code, this will cause this metric to double in |
| report volume. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TopToolbar.BlockCaptureReason" |
| enum="TopToolbarBlockCaptureReason" expires_after="2023-09-10"> |
| <owner>skym@chromium.org</owner> |
| <owner>seacow@google.com</owner> |
| <summary> |
| Recorded on #isDirty calls that return false. Because #isDirty() is used to |
| control when bitmap captures happen, this histogram holds the reason that |
| the capture was not allowed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TopToolbar.InMotionStage" enum="ToolbarInMotionStage" |
| expires_after="2023-12-31"> |
| <owner>skym@chromium.org</owner> |
| <owner>seacow@google.com</owner> |
| <summary> |
| Captures the stages reached in the Toolbar's in motion handling. Recorded |
| every time the in motion state of the compositor changes, before the event |
| is routed to the renderer process. Motion states include: flinging, swiping, |
| and any gesture that the CompositorViewHolder is processing. This metric |
| shows how often the in motion handling had to request the toolbar's capture |
| readiness state, which is a computationally expensive operation, and could |
| slow down input handling. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.TopToolbar.SnapshotDifference" |
| enum="ToolbarSnapshotDifference" expires_after="2023-05-16"> |
| <owner>skym@chromium.org</owner> |
| <owner>seacow@google.com</owner> |
| <summary> |
| When the allow reason for a bitmap capture was that the snapshots were |
| different, then this histogram is recorded with the reason that the |
| snapshots were different. Often there may be multiple differences but one is |
| arbitrarily and consistently picked. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.View.onDraw.30Seconds" units="count" |
| expires_after="2023-05-07"> |
| <owner>nuskos@chromium.org</owner> |
| <owner>chrometto-team@google.com</owner> |
| <summary> |
| Keeps a counter of each onDraw invoked on the root view and emits the count |
| once every 30 seconds. Thus this is the amount of times android attempted to |
| draw/update a java view in the last 30 seconds. |
| |
| NOTE: 30 second intervals with 0 draws are not reported. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.AndroidX.ApiCall" enum="AndroidXWebkitApiCall" |
| expires_after="2023-10-31"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records calls to WebView APIs from AndroidX. Some AndroidX-originating calls |
| may plumb through the corresponding platform (framework) API if the device |
| OS version supports the platform API. In this case the API call will be |
| logged by the "Android.WebView.ApiCall" histogram instead. This is |
| logged each time an AndroidX API is called through the "boundary |
| interface" code path (see //android_webview/support_library/README.md |
| for more details). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ApiCall" enum="WebViewApiCall" |
| expires_after="2023-10-31"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records calls to WebView APIs through the platform (framework) APIs. This |
| may include AndroidX API calls on OS versions where the AndroidX library |
| just calls through the platform API (see |
| "Android.WebView.AndroidX.ApiCall" for details). This is logged |
| each time an API is called. |
| |
| For historical data (before M99), see "WebView.ApiCall". |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.AppDataDirectory.Size" units="KiB" |
| expires_after="2023-06-01"> |
| <owner>xiaq@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Size on disk taken by the embedding app's data directory, recorded once per |
| WebView startup after a small delay. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.AppDataDirectory.TimeToComputeSize" units="ms" |
| expires_after="2023-06-01"> |
| <owner>xiaq@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Time to compute the size on disk taken by the embedding app's data |
| directory, recorded once per WebView startup after a small delay. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Callback.Counts" enum="WebViewCallbackType" |
| expires_after="2023-10-01"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary>Records the invocation count of WebView callbacks.</summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.CPSDirectorySize" units="KB" |
| expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Size on disk taken by the ComponentsProviderService serving directory. This |
| is logged once per run of the update job in AwComponentUpdateService. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.CUSDirectorySize" units="KB" |
| expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Size on disk taken by the AwComponentUpdateService directory. This is logged |
| once per update job in AwComponentUpdateService. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.GetFilesDuration" units="ms" |
| expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Duration of ComponentsProviderService getFilesForComponent request. This |
| method retrieves FileDescriptors for an installed component. This is logged |
| at the end of every request the service receives. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.GetFilesResult" |
| enum="WebViewComponentUpdaterGetFilesResult" expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Logs the result of ComponentsProviderService getFilesForComponent request. |
| This method retrieves FileDescriptors for an installed component. This is |
| logged once for every request the service receives. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.SafeModeActionExecuted" |
| enum="Boolean" expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Whether a SafeMode action was executed by Component Updater services. This |
| is logged whenever a nonembedded Component Updater service checks whether |
| SafeMode is enabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.UnexpectedExit" |
| enum="Boolean" expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Whether AwComponentUpdateService quit unexpectedly on the previous run. This |
| might indicate a crash occurred during the previous job. This is logged once |
| per run of AwComponentUpdateService. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.UpdateJobDuration" units="ms" |
| expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Duration of AwComponentUpdateService update job. This job is responsible for |
| updating and installing components. This is logged once per run of the job. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ComponentUpdater.UpdateJobFilesChanged" |
| units="count" expires_after="2023-12-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| How many components were updated by AwComponentUpdateService update job. |
| This is logged once per run of the job, and is capped at 1000. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.ForceDarkBehavior" |
| enum="WebViewForceDarkBehavior" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records WebView force dark behavior settings on each main frame navigation |
| entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.ForceDarkMode" |
| enum="WebViewForceDarkMode2" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records WebView force dark mode settings on each main frame navigation entry |
| committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.InDarkMode" enum="Boolean" |
| expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if WebView applies the algorithmic darkening on each main frame |
| navigation entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.InDarkModeVsLightTheme" |
| enum="WebViewInDarkModeVsLightTheme" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if the application has light theme and if WebView applies the |
| algorithmic darkening on each main frame navigation entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.InDarkModeVsNightMode" |
| enum="WebViewInDarkModeVsNightMode" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if the application is in the night mode and if WebView applies the |
| algorithmic darkening on each main frame navigation entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.LightTheme" enum="LightTheme" |
| expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if the application has light theme on each main frame navigation |
| entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.NightMode" enum="NightMode" |
| expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records application's night mode bit related to |
| android.content.res.Configuration.UI_MODE_NIGHT_MASK on each main frame |
| navigation entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.NightModeVsLightTheme" |
| enum="WebViewNightModeVsLightTheme" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if application is in night mode and if it has light theme on each |
| main frame navigation entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.PageDarkenedAccordingToAppTheme" |
| enum="Boolean" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records WebView is darkened or not when the prefers-color-scheme is set to |
| dark according to the app theme not FORCE_DARK_AUTO setting. This histogram |
| is recorded on main frame's color scheme inferred for every committed |
| navigation. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.PrefersDarkFromTheme" |
| enum="BooleanYesNo" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if WebView shall set prefers-color-scheme to dark according to app's |
| theme after FORCE_DARK_AUTO fails. It is recorded on each main frame |
| navigation entry committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.PrimaryTextLuminanceVsLightTheme" |
| enum="WebViewPrimaryTextLuminanceVsLightTheme" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if the application has light theme and if its theme's |
| textColorPrimary attribute is light on each main frame navigation entry |
| committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DarkMode.PrimaryTextLuminanceVsNightMode" |
| enum="WebViewPrimaryTextLuminanceVsNightMode" expires_after="2023-06-01"> |
| <owner>michaelbai@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if the application is in night mode and if its theme's |
| textColorPrimary attribute is light on each main frame navigation entry |
| committed. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.AppLaunch" enum="Boolean" |
| expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of times the developer UI app was launched. This only |
| ever logs the value "true" because we only care about the total |
| count. This is logged in the developer UI app during Activity#onCreate. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.CrashList.CollectionState" |
| enum="AndroidWebViewCrashCollectionState" expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the state of crash collection, as seen by the developer UI. This is |
| recorded when launching the crash UI, but only if the UI is not already |
| showing an error message for another problem (ex. WebView package error). |
| This only logs the first state we detect: ex. if the user has enabled crash |
| reporting by opting in and also with the flag UI, this only logs the flag UI |
| case. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.CrashList.CrashInteraction" |
| enum="AndroidWebViewCrashInteraction" expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the user's interaction with crashes in the developer UI's crash |
| list. Specifically, this tracks how the user interacts with the "hide |
| crash", "upload this crash report" or the "file bug |
| report" buttons and possible subsequent dialogs. Since the latter two |
| buttons are connected (the user must upload a crash before they can file a |
| bug report), we track interaction with both in the same histogram. This is |
| recorded for each button press in the crash list and is not recorded if the |
| user does not interact with any crashes. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.CrashList.NumberShown" |
| units="crash reports" expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of crashes shown in the developer UI. This is logged each |
| time the crash UI is launched and each time its list is refreshed. The UI |
| currently limits the number of crashes at 20, so clients logging the maximum |
| may have more logs sitting on disk. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.DeveloperModeBlockingTime" units="ms" |
| expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the time spent blocking WebView startup to check for developer mode |
| (see "Android.WebView.DevUi.DeveloperModeEnabled"). This is |
| recorded once during WebView startup, regardless of whether developer mode |
| is enabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.DeveloperModeEnabled" |
| enum="BooleanEnabled" expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether or not WebView is starting up in "developer mode." |
| This is a mode where the user has enabled debugging features through the |
| WebView developer UI. This is recorded once during startup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.FlagLoadingBlockingTime" units="ms" |
| expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the time spent blocking WebView startup to load flags from the |
| developer UI. This is recorded only once during WebView startup, and only if |
| we've already detected developer mode is enabled (see |
| "Android.WebView.DevUi.DeveloperModeEnabled"). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.FlagsUi.ToggledFromSearch" |
| enum="Boolean" expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| This is recorded each time a user toggles a flag in the developer UI |
| (changing a flag's state), and logs whether the user found this flag with |
| the search bar ("true" means there was a non-empty search query). |
| This is only recorded when the user toggles an individual flag through the |
| Spinner dialog, not when they press the "reset all flags" button. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.DevUi.FragmentNavigation{Android_WebView_DevUi_NavType}" |
| enum="AndroidWebViewDevUiFragments" expires_after="2024-01-14"> |
| <!-- Name completed by histogram_suffixes |
| name="Android.WebView.DevUi.NavType" --> |
| |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the user's navigation to a Fragment. "FromIntent" tracks |
| navigations triggered by an Intent (ex. navigating to HomeFragment on |
| launch) and "NavBar" tracks user interaction with the bottom |
| navigation bar. "AnyMethod" should be the sum of the other two. |
| {Android_WebView_DevUi_NavType} |
| </summary> |
| <token key="Android_WebView_DevUi_NavType"> |
| <variant name=".AnyMethod" summary="User navigation through any means"/> |
| <variant name=".FromIntent" |
| summary="User navigation through the bottom navigation bar"/> |
| <variant name=".NavBar" summary="User navigation in response to an Intent"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.MenuSelection" |
| enum="AndroidWebViewDevUiMenu" expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the user's selection in the developer UI overflow menu or action |
| bar, recorded after each selection. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.MonochromeIconStateToggled" |
| enum="BooleanEnabled" expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records how the developer UI launcher icon for Monochrome was toggled: was |
| it enabled or disabled? This can be recorded either from WebView's |
| non-embedded processes or Chrome's browser process whenever either changes |
| the icon state (nothing is logged if we don't need to change the icon |
| state). This is only recorded in Monochrome (Android Nougat, Oreo, and Pie), |
| since this logic is only relevant in that case. |
| </summary> |
| </histogram> |
| |
| <histogram base="true" name="Android.WebView.DevUi.SessionDuration2" units="ms" |
| expires_after="2024-01-14"> |
| <!-- Name completed by histogram_suffixes |
| name="AndroidWebViewFragments" --> |
| |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the time spent using a specific tool, from creation to destruction. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.DevUi.ToggledFlagCount" units="flags" |
| expires_after="2024-01-14"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of flags we will toggle for this run of WebView. This is |
| recorded only once during WebView startup, and only if we've already |
| detected developer mode is enabled (see |
| "Android.WebView.DevUi.DeveloperModeEnabled"). If developer mode |
| is disabled, we will not toggle any flags through this mechanism. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ForceDarkBehavior" |
| enum="WebViewForceDarkBehavior" expires_after="2023-06-01"> |
| <owner>peter@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records strategy to be used by force dark in WebView when |
| setForceDarkBehavior API is called by the embedding application. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ForceDarkMode" enum="WebViewForceDarkMode" |
| expires_after="2023-06-01"> |
| <owner>peter@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records WebView's force dark setting and the UI's night mode when |
| setForceDark API is called by the embedding application. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Gfx.GLDrawWasToFBO" units="Boolean" |
| expires_after="2023-12-01"> |
| <owner>blundell@chromium.org</owner> |
| <owner>vasilyt@chromium.org</owner> |
| <summary> |
| For each draw in GL that WebView does on request from HWUI, records whether |
| the draw was done into the FBO or not. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Gfx.HardwareDrawType" |
| enum="WebViewDrawAndSubmissionType" expires_after="2023-10-01"> |
| <owner>vasilyt@chromium.org</owner> |
| <owner>boliu@chromium.org</owner> |
| <summary> |
| Tracks invalidate and frame submission status for WebView hardware draw. |
| Result is enum that represent three flags: did we called invalidate this |
| frame, did renderer submitted compositor frame and whether DrawParams from |
| Android HWUI changed. This is logged once per WebView draw functor call. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Gfx.SaveHWUIStateDuration" units="ms" |
| expires_after="2023-12-01"> |
| <owner>blundell@chromium.org</owner> |
| <owner>vasilyt@chromium.org</owner> |
| <summary> |
| Tracks the amount of time that it took for WebView to save HWUI state. |
| Recorded once per saving of HWUI state. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.InputStreamTime" units="ms" |
| expires_after="2023-10-01"> |
| <owner>jam@chromium.org</owner> |
| <owner>cduvall@chromium.org</owner> |
| <summary> |
| Measures how long InputStreams take from creation to completion. This is |
| emitted for all streams whether they succeed or fail. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.JavaBridge.InvocationIsInPrimaryMainFrame" |
| enum="BooleanMainFrame" expires_after="2023-04-19"> |
| <owner>peter@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether an invocation of a JavaScript method exposed through |
| WebView's Java Bridge happened on a page's main frame or one of its sub |
| frames. Recorded for each invocation of such methods. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.LoadUrl.UrlScheme" enum="WebViewUrlScheme" |
| expires_after="2023-04-19"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the scheme for the URL loaded by a browser-initiated navigation. |
| Specifically, this is the scheme of the URL passed to loadUrl() (and its |
| overloads), postUrl(), and loadData() (this is implicitly |
| "data:"). also records if this value is "empty", which |
| means either null or "about:blank". This intentionally excludes |
| loadDataWithBaseURL(). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Metrics.PackagesAllowList.ParseStatus" |
| enum="AppPackageNameAllowlistParseStatus" expires_after="2023-07-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the result of parsing the apps package names allowlist used to |
| populate the "app_package_name" field in UMA metrics logs. This is |
| recorded when the AwAppsPackageNamesAllowlistComponentLoaderPolicy is |
| successfully loaded by EmbeddedComponentLoader, i.e when ComponentLoaded is |
| called by the loader. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Metrics.PackagesAllowList.RecordStatus" |
| enum="AppPackageNameLoggingRuleStatus" expires_after="2023-09-10"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the status of the apps package names allowlist used to populate the |
| "app_package_name" field in UMA metrics log. The status tracks if |
| a new version is loaded, a cached one is used or if loading the allowlist |
| has failed. It's recorded everytime the app package name is queried when a |
| new metrics log is created. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.Metrics.PackagesAllowList.ResultReceivingDelay" |
| units="ms" expires_after="2023-07-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the time delta between creating a AwMetricsServiceClient instance |
| during WebView startup and the time when the app package names allowlist is |
| loaded and looked up. This only records when a new version of the allowlist |
| is loaded successfully. i.e it's not recorded if the loading the allowlist |
| fails or if a cached version is used. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Metrics.PackagesAllowList.ThrottleStatus" |
| enum="Boolean" expires_after="2023-07-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Whether requests to query the app package names allowlist component is |
| throttled or not. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Metrics.PackagesAllowList.TimeToExpire" |
| units="hours" expires_after="2023-07-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| How long before the app package names allowlist record cached in the client |
| expires. This is only recorded from Apps that are in the app package names |
| allowlist. Recorded every time a metrics log is being created. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.MixedContent.Mode" |
| enum="WebViewMixedContentMode" expires_after="2023-08-25"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>carlosil@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the mixed content mode set when an app uses the |
| WebSettings.setMixedContentMode API. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Nonembedded.FirstServiceInProcess" |
| enum="WebViewNonembeddedService" expires_after="2022-12-11"> |
| <obsolete> |
| We collected the data we need about this, these histograms are no longer |
| needed, see https://crbug.com/1266439#c8. Removed in December 2022. |
| </obsolete> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the first nonembedded WebView Service to run in the nonembedded |
| ":webview_service" process. This excludes ContentProviders because |
| they are always created during the process startup. This is recorded when |
| the service is created (when `onCreate` is called). Also see |
| "Android.WebView.Nonembedded.IsFreshServiceProcessLaunched". |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Nonembedded.IsFreshServiceProcessLaunched" |
| enum="Boolean" expires_after="2022-12-11"> |
| <obsolete> |
| We collected the data we need about this, these histograms are no longer |
| needed, see https://crbug.com/1266439#c8. Removed in December 2022. |
| </obsolete> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Captures if the service is the first service to be created in the process or |
| not. It helps to see how often the nonembedded ":webview_service" |
| process is reused for multiple services. This excludes ContentProviders |
| because they are always created during the process startup. This is recorded |
| when any nonembedded service is created (when `onCreate` is called). Also |
| see "Android.WebView.Nonembedded.FirstServiceInProcess". |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.NonEmbeddedMetrics.HistogramRecordAge" |
| units="minutes" expires_after="2023-10-22"> |
| <owner>hazems@chromium.org</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the time interval between when a histogram is recorded in a |
| non-embedded WebView process and when it's actually sent to the UMA API in |
| an embedded WebView. This is recorded during WebView startup for each |
| histogram retrieved and replayed successfully from WebView non-embedded |
| metrics service. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.NonEmbeddedMetrics.NumHistograms" |
| units="histograms" expires_after="2023-10-22"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of histograms received from WebView's non-embedded |
| histogram service. This is recorded once during WebView startup, after |
| retrieving histograms from the service (if the proto can be parsed). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.NonEmbeddedMetrics.ParsingLogResult" |
| enum="AndroidWebViewNonEmbeddedMetricsParsingLogResult" |
| expires_after="2023-10-22"> |
| <owner>hazems@chromium.org</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether metrics parsing from file in non-embedded histogram service |
| was successful. It's recorded during service startup by adding it to records |
| list. It captures the most recent file parsing result for the last service |
| launch before the client connects to the service. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.NonEmbeddedMetrics.RetrieveMetricsTaskStatus" |
| enum="AndroidWebViewNonEmbeddedMetricsRetrieveMetricsTaskStatus" |
| expires_after="2023-07-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Recorded by the non-embedded histogram service if it's unable to return |
| histograms. This is always recorded when a client connects to retrieve |
| histograms. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.NonEmbeddedMetrics.TransmissionResult" |
| enum="AndroidWebViewDevUiMetricsTransmission" expires_after="2023-09-10"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether metrics transmission from the non-embedded histogram service |
| was successful. This is recorded once during WebView startup, after |
| retrieving histograms from the service. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.onReceivedError.ErrorCode" |
| enum="WebViewClientErrorCode" expires_after="2022-05-10"> |
| <obsolete> |
| Deprecated in April 2022 (milestone M103). |
| </obsolete> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| The WebViewClient error code as returned by the onReceivedError callback |
| This is recorded regardless of whether the network service is enabled or |
| disabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.onReceivedHttpError.StatusCode" |
| enum="HttpResponseCode" expires_after="2023-04-19"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| The WebViewClient HTTP response status code as returned by the |
| onReceivedHttpError callback. This callback is only called for HTTP errors, |
| so this does not include any successful HTTP responses (code 200). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.OnRenderProcessGoneResult" |
| enum="AndroidWebViewRenderProcessGoneResult" expires_after="2023-06-30"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| This captures two pieces of information about renderer crashes: did the app |
| developer handle the renderer crash to recover and what type of crash was |
| this? This is recorded once each time the renderer process dies |
| unexpectedly, and is logged after we have notified the app via the |
| onRenderProcessGone() callback. |
| |
| Prior to M99, this histogram did not distinguish between crashes vs. kills |
| if the renderer crash was handled by the app. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.OptionallyBlockableMixedContentLoaded.Mode" |
| enum="WebViewMixedContentMode" expires_after="2023-08-25"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>carlosil@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the mixed content mode set when an app loads optionally blockable |
| mixed content (images, audio, or video). This histogram is logged on page |
| load, once per subresource (i.e. a single page load can cause multiple |
| records if the page contains multiple mixed content subresources). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.OriginsVisited" units="origins" |
| expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Measures the count of distinct http and https origins visited per day in |
| WebView. The purpose of this metric is to slice it by package name to help |
| characterize the usage of that package. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.PageTimeSpent2.{Scheme}{Party}" units="ms" |
| expires_after="2022-07-01"> |
| <obsolete> |
| Deprecated in March 2022. |
| </obsolete> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Time spent on a page with a {Scheme} scheme. This is measured from |
| navigation commit to the start of the next navigation. For http and https |
| schemes it is additionally recorded whether it is a first or third party |
| page. This uses an optional key, in this case the value is |
| "{Party}". |
| </summary> |
| <token key="Scheme"> |
| <variant name="App"/> |
| <variant name="Blob"/> |
| <variant name="Chrome"/> |
| <variant name="ChromeNative"/> |
| <variant name="Content"/> |
| <variant name="CustomTab"/> |
| <variant name="Data"/> |
| <variant name="Devtools"/> |
| <variant name="Document"/> |
| <variant name="File"/> |
| <variant name="Filesystem"/> |
| <variant name="Ftp"/> |
| <variant name="Http"/> |
| <variant name="Https"/> |
| <variant name="Inline"/> |
| <variant name="Intent"/> |
| <variant name="Jar"/> |
| <variant name="JavaScript"/> |
| <variant name="Other"/> |
| <variant name="Sms"/> |
| <variant name="Tel"/> |
| </token> |
| <token key="Party"> |
| <variant name=""/> |
| <variant name=".FirstParty"/> |
| <variant name=".ThirdParty"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.WebView.RequestedWithHeader.CommittedHeaderMode" |
| enum="CommittedRequestedWithHeaderMode" expires_after="2023-07-01"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the type of X-Requested-With HTTP header that is set on request from |
| WebView. This enum is recorded by |
| |InterceptedRequest::InterceptResponseReceived| for all requests. It may |
| differ from the user settings, as it also captures if the header has been |
| set explicitly on the request by other means, such as javascript or |
| embedding code. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.RequestedWithHeader.HadWebContentsForPartitionOrigin" |
| enum="BooleanAvailable" expires_after="2023-07-01"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether a suitable WebContents was available for use to look up the |
| partition origin for the XRequestedWith deprecation origin trial. This |
| histogram is recorded when the AwProxyingUrlLoader attemps to get the last |
| committed origin of the top frame for partitioning use, which is on all |
| requests that are not top frame navigation requests. If the WebContents is |
| not available, an opaque origin will be used for partitioning, which will |
| result in a failed lookup. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.RequestedWithHeader.OnNavigationHeaderMode" |
| enum="WebViewRequestedWithHeaderMode" expires_after="2023-01-01"> |
| <obsolete> |
| Replaced before launch by |
| Android.WebView.RequestedWithHeader.OnNavigationRequestedWithHeaderAllowListSize |
| </obsolete> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the XRequestedWithHeaderMode that was configured to be used on page |
| navigation to decide how to set the X-Requested-With HTTP header. This is |
| recorded on navigation committed, and records the configured setting. It may |
| be the case that javascript or the embedder has overwritten the header, |
| which will not be reflected by this histogram. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.RequestedWithHeader.OnNavigationRequestedWithHeaderAllowListSize" |
| units="entries" expires_after="2023-07-01"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the size of the XRequestedWithHeaderAllowList that was used on page |
| navigation. This is recorded to gain insight into the distribution of size |
| when used, which will give an idea of the impact to the ecosystem. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.RequestedWithHeader.OriginTrialEnabled" |
| enum="BooleanEnabled" expires_after="2023-07-01"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if the WebViewXRequestedWithDeprecation Origin Trial was enabled on |
| a resource request. This histogram is recorded on every request sent by |
| WebView if Persistent Origin Trials are enabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.RequestedWithHeader.PageSchemeIsCryptographic" |
| enum="BooleanSecure" expires_after="2023-07-01"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records if the WebViewXRequestedWithDeprecation Origin Trial was enabled on |
| a resource request with a scheme that uses cryptography, i.e. HTTPS or WSS. |
| This histogram is recorded on every request sent by WebView if the |
| WebViewXRequestedWithDeprecation trial is enabled and the scheme is either |
| HTTP/HTTPS or WS/WSS. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.RequestedWithHeader.SetRequestedWithHeaderMode" |
| enum="WebViewRequestedWithHeaderMode" expires_after="2023-01-01"> |
| <obsolete> |
| Replaced before launch by |
| Android.WebView.RequestedWithHeader.SetRequestedWithHeaderModeAllowListSize |
| </obsolete> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the parameter passed to WebSettingsCompat#setRequestedWithHeaderMode |
| when called by the embedding app. This reflects explict configuration of the |
| X-Requested-With HTTP header by the app for WebViews. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.RequestedWithHeader.SetRequestedWithHeaderModeAllowListSize" |
| units="entries" expires_after="2023-07-01"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the size of the allow-list passed to |
| WebSettingsCompat#setRequestedWithHeaderOriginAllowList when called by the |
| embedding app. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.RequestedWithHeader.SetServiceWorkerRequestedWithHeaderMode" |
| enum="WebViewRequestedWithHeaderMode" expires_after="2023-01-01"> |
| <obsolete> |
| Replaced before launch by |
| Android.WebView.RequestedWithHeader.SetServiceWorkerRequestedWithHeaderModeAllowListSize |
| </obsolete> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the parameter passed to |
| ServiceWorkerWebSettingsCompat#setRequestedWithHeaderMode when called by the |
| embedding app. This reflects explict configuration of the X-Requested-With |
| HTTP header by the app for WebView service workers. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.RequestedWithHeader.SetServiceWorkerRequestedWithHeaderModeAllowListSize" |
| units="entries" expires_after="2023-07-01"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the size of the allow-list passed to |
| ServiceWorkerWebSettingsCompat#setRequestedWithHeaderOriginAllowList when |
| called by the embedding app. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.SafeMode.CheckStateBlockingTime" units="ms" |
| expires_after="2023-04-28"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the time spent blocking WebView startup to check for SafeMode (see |
| "Android.WebView.SafeMode.SafeModeEnabled"). This is recorded once |
| during WebView startup, regardless of whether SafeMode is enabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.SafeMode.ExecutionResult" |
| enum="AndroidWebViewSafeModeResult" expires_after="2024-01-28"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether SafeMode was able to execute all the specified SafeMode |
| actions or if it encountered an error. This is recorded once during WebView |
| startup and only if SafeMode is enabled (see |
| "Android.WebView.SafeMode.SafeModeEnabled"). If multiple fixes |
| have different statuses, then this will log a single status in the following |
| precedence: a. Unknown error b. Action failed c. Unrecognized action d. |
| Success (If all actions were successful). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.SafeMode.QueryAndExecuteBlockingTime" |
| units="ms" expires_after="2024-01-28"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the time spent blocking WebView startup to both retrieve the list of |
| SafeMode actions from the SafeModeService and to execute those actions. This |
| is recorded once during startup only if SafeMode is enabled (see |
| "Android.WebView.SafeMode.SafeModeEnabled"). This can be |
| interpreted as the additional startup cost caused by enabling SafeMode. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.SafeMode.SafeModeEnabled" |
| enum="BooleanEnabled" expires_after="2024-01-28"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether or not WebView is starting up in SafeMode. This is a mode |
| where WebView takes extra steps during startup to reduce the risk of |
| starting in a bad state. This is recorded once during WebView startup, |
| regardless of whether SafeMode is enabled. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.SecureCookieAction" enum="SecureCookieAction" |
| expires_after="2023-10-01"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the action WebView took (if any) to "fix up" secure |
| cookies for backwards compatibility. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ShouldInterceptRequest.InterceptionType" |
| enum="InterceptionType" expires_after="2022-05-10"> |
| <obsolete> |
| Deprecated in M102. This histogram had a bug which caused it to under-count |
| when the request was not intercepted. This has been fixed in the |
| "Android.WebView.ShouldInterceptRequest.InterceptionType2" |
| histogram. |
| </obsolete> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Whether the request was intercepted by the embedder of Android WebView, and |
| if so which url scheme was used. Intercepted request are requests for which |
| the shouldInterceptRequest() callback returned a non-null response. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.ShouldInterceptRequest.InterceptionType2" |
| enum="InterceptionType" expires_after="2023-03-29"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Whether the network request was intercepted by the embedder of Android |
| WebView, and if so which URL scheme was used for the request. Intercepted |
| requests are requests for which the shouldInterceptRequest() callback |
| returned a non-null response. This is logged each the |
| shouldInterceptRequest() callback API is invoked by WebView, which |
| corresponds to every network request. |
| |
| This histogram was added in M102. Prior milestones logged |
| "Android.WebView.ShouldInterceptRequest.InterceptionType", however |
| that histogram had a bug which caused the "Not intercepted" bucket |
| to be under-reported and for all other buckets to be over-reported. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.SingleOrMultiProcess" |
| enum="AndroidWebViewSingleOrMultiProcess" expires_after="never"> |
| <owner>alexmitra@chromium.org</owner> |
| <owner>nator@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether WebView is being run in a single process or multi-process. |
| This is recorded each time logs are uploaded. This is used as a dashboard |
| filter. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.SitesVisitedWeekly" units="sites" |
| expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Measures the count of distinct sites visited per week in WebView. This is |
| recorded at the time of a navigation when stored hashed site navigations are |
| older than a week. The purpose of this metric is to slice it by package name |
| to help characterize the usage of that package. This histogram uses eTLD+1 |
| as the definition of a site. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Startup.CreationTime.Stage1.FactoryInit" |
| units="ms" expires_after="2023-12-31"> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| How long it takes to initialize a WebViewChromiumFactoryProvider. This is |
| the first major phase of the WebViewChromium construction. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Startup.CreationTime.Stage2.ProviderInit.Cold" |
| units="ms" expires_after="2023-12-31"> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| How long it takes to initialize a WebViewProvider, the first time that one |
| is initialized. WebViewProvider initialization is the second major phase of |
| WebViewChromium construction. The first initialization is recorded |
| separately because it is usually much slower than subsequent ones. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Startup.CreationTime.Stage2.ProviderInit.Warm" |
| units="ms" expires_after="2023-12-31"> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| How long it takes to initialize a WebViewProvider, the first time that one |
| is initialized. WebViewProvider initialization is the second major phase of |
| WebViewChromium construction. When it is not the first time, it is faster |
| and thus recorded separately. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Startup.CreationTime.StartChromiumLocked" |
| units="ms" expires_after="2023-12-31"> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary>How long it takes to run startChromiumLocked.</summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Startup.CreationTime.TotalFactoryInitTime" |
| units="ms" expires_after="2023-12-31"> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| The total time to initialize WebViewChromiumFactoryProvider. |
| |
| This measurement is different from Stage1.FactoryInit as it takes into |
| accout time spent in framework. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.Startup.NonblockingServiceConnectionDelay.{ServiceName}" |
| units="ms" expires_after="2023-09-01"> |
| <owner>hazems@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the delay between calling Context#bindService until the |
| ServiceConnection#onServiceConnected is called. This should give an idea of |
| how long it takes for nonembedded service connections to be established and |
| capture any regressions in this. In the case when a service connection is |
| dropped and then reconnected by the system, the histogram is only recorded |
| for the first connection. |
| </summary> |
| <token key="ServiceName"> |
| <variant name="MetricsBridgeService"/> |
| <variant name="VariationsSeedServer"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.WebView.SupportLibrary.ClientIsCompat" |
| enum="WebViewClientTypeEnum" expires_after="2023-08-23"> |
| <owner>pbirk@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records whether the WebViewClient provided by the app is an instance of |
| WebViewClientCompat (and therefore exposes AndroidX callbacks). This is |
| recorded each time the app sets a new WebViewClient via |
| WebView#setWebViewClient(). |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.TargetSdkVersion" enum="AndroidApiLevel" |
| expires_after="2023-06-30"> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| The version of the target SDK of the app WebView is running in. This is |
| recorded once during startup. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.UniversalAccess.OriginUrlMismatchInHistoryUtil" |
| enum="BooleanAllowed" expires_after="2023-10-08"> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records when we allow a cross origin push state from a file URL solely |
| because AllowUniversalAccessFromFileURLs is enabled. This is logged from the |
| implementation of history. |
| </summary> |
| </histogram> |
| |
| <histogram |
| name="Android.WebView.UniversalAccess.OriginUrlMismatchInRenderFrame" |
| enum="BooleanAllowed" expires_after="2023-06-04"> |
| <owner>torne@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records when we allow a cross origin push state from a file URL solely |
| because AllowUniversalAccessFromFileURLs is enabled. This is logged from the |
| implementation of the frame renderer. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.VariationsHeaderLength" units="bytes" |
| expires_after="2023-07-22"> |
| <owner>cduvall@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the length of the WebView variations header. Recorded every time |
| WebViewCompat.getVariationsHeader() is called. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Visibility.Global" enum="WebViewVisibility" |
| expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the global visibility state of WebView in seconds, updated with |
| every Metrics upload. The Visible bucket counts total seconds that any |
| WebView was visible (the view itself was visible, and was attached to the |
| view hierarchy of a visible window). The NotVisible bucket counts time since |
| WebView initialization for which no WebView was considered visible, or no |
| WebView existed. The total of these two buckets reflects the amount of time |
| covered by metrics collection. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.Visibility.PerWebView" |
| enum="WebViewVisibility" expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records per-WebView visibility duration in seconds, updated with every |
| Metrics upload. The Visible bucket counts the total time in seconds that |
| each WebView was considered visible (the view itself was visible, and was |
| attached to the view hierarchy of a visible window). If more than one |
| WebView is considered visible, then each WebView contributes independently. |
| The NotVisible bucket counts the duration that each WebView exists but not |
| in a visible state. As with the Visible bucket, each WebView contributes |
| independently, and thus this bucket is not incremented when no WebViews |
| exist. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.VisibleScheme.Global" enum="WebViewUrlScheme" |
| expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of seconds any WebView was visible (the view itself was |
| visible, and was attached to the view hierarchy of a visible window) with a |
| particular URL scheme in the primary main frame. Updated with every Metrics |
| upload. Note that the seconds are logged as the count for the scheme enum |
| values. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.VisibleScheme.PerWebView" |
| enum="WebViewUrlScheme" expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@chromium.org</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of seconds each WebView was visible (the view itself was |
| visible, and was attached to the view hierarchy of a visible window) with a |
| particular URL scheme in the primary main frame. Updated with every Metrics |
| upload. Note that the seconds are logged as the count for the scheme enum |
| values. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.VisibleScreenCoverage.Global" units="%" |
| expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@google.com</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of seconds any WebView was visible (the view itself was |
| visible, and was attached to the view hierarchy of a visible window) by |
| screen coverage percentage. The screen coverage of all WebViews is merged so |
| overlaps do not count more than once and do not increase the percentage. |
| Updated with every Metrics upload. Not recorded when there is no visible |
| WebView. Fractional percentages are rounded down. Note that the seconds are |
| logged as the count for the percentages. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.VisibleScreenCoverage.PerWebView" units="%" |
| expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@google.com</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of seconds each WebView was visible (the view itself was |
| visible, and was attached to the view hierarchy of a visible window) by |
| screen coverage percentage. The screen coverage of these WebViews is not |
| merged. Updated with every Metrics upload. Not recorded when there is no |
| visible WebView. Fractional percentages are rounded down. Note that the |
| seconds are logged as the count for the percentages. |
| </summary> |
| </histogram> |
| |
| <histogram name="Android.WebView.VisibleScreenCoverage.PerWebView.{scheme}" |
| units="%" expires_after="2023-12-15"> |
| <owner>mvanouwerkerk@google.com</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of seconds each WebView was visible (the view itself was |
| visible, and was attached to the view hierarchy of a visible window) with a |
| {scheme} scheme in the primary main frame by screen coverage percentage. The |
| screen coverage of these WebViews is not merged. Updated with every Metrics |
| upload. Not recorded when there is no visible WebView. Fractional |
| percentages are rounded down. Note that the seconds are logged as the count |
| for the percentages. |
| </summary> |
| <token key="scheme"> |
| <variant name="about"/> |
| <variant name="blob"/> |
| <variant name="chrome"/> |
| <variant name="content"/> |
| <variant name="data"/> |
| <variant name="empty"/> |
| <variant name="file"/> |
| <variant name="ftp"/> |
| <variant name="http"/> |
| <variant name="https"/> |
| <variant name="intent"/> |
| <variant name="javascript"/> |
| <variant name="unknown"/> |
| </token> |
| </histogram> |
| |
| <histogram name="Android.WebView.WebViewOpenWebVisible.ScreenPortion2" |
| enum="WebViewOpenWebScreenPortion" expires_after="2022-08-01"> |
| <obsolete> |
| Deprecated in March 2022. |
| </obsolete> |
| <owner>idries@google.com</owner> |
| <owner>ntfschr@chromium.org</owner> |
| <owner>peconn@chromium.org</owner> |
| <owner>src/android_webview/OWNERS</owner> |
| <summary> |
| Records the number of seconds that WebView is displaying Open Web Content |
| for each bucket of screen proportion, updated with every Metrics upload. For |
| the purposes of bucketing this is rounded down. A separate bucket is used |
| when the screen coverage is exactly zero. |
| </summary> |
| </histogram> |
| |
| <histogram name="AndroidSearchEngineLogo.Events" |
| enum="AndroidSearchEngineLogoEvents" expires_after="2023-06-01"> |
| <owner>wylieb@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Counts occurences of various events related to the Search Engine Logo |
| feature. When enabled, the feature will show the logo of the default search |
| engine in the omnibox. These events record the performance of fetching |
| non-Google logos. |
| </summary> |
| </histogram> |
| |
| <histogram name="SingleWebsitePreferences.NavigatedFromToReset" |
| enum="SettingsNavigationSources" expires_after="M114"> |
| <owner>peconn@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Logs which way had the user navigated into settings screens when they press |
| "Clear and Reset" button in settings of a single website. |
| </summary> |
| </histogram> |
| |
| </histograms> |
| |
| </histogram-configuration> |