blob: b4cbc38c72b1b9edb6556f3fddfaae7e07f18447 [file] [log] [blame]
<!--
Copyright 2020 The Chromium Authors. All rights reserved.
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 Chrome 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 send CLs to chromium-metrics-reviews@google.com rather than to specific
individuals. These CLs will be automatically reassigned to a reviewer within
about 5 minutes. This approach helps the metrics team to load-balance incoming
reviews. Googlers can read more about this at go/gwsq-gerrit.
-->
<histogram-configuration>
<histograms>
<histogram name="Chrome.MessageLoopProblem" enum="MessageLoopProblems"
expires_after="2021-07-31">
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
Track set of Windows errors inside the meessage loop/pump system, where
system calls fail, and we try to gracefully recover. These errors should
really never happen, so we should be sure to look closer if they do.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.NotifyResult" enum="NotifyResult"
expires_after="2018-08-30">
<owner>gab@chromium.org</owner>
<summary>
The result of every rendez-vous reported once per browser process launch.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.RemoteHungProcessTerminateReason"
enum="RemoteHungProcessTerminateReason" expires_after="M77">
<owner>gab@chromium.org</owner>
<owner>aseren@yandex-team.ru</owner>
<summary>The reason of remote hang processes termination.</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.RemoteProcessInteractionResult"
enum="RemoteProcessInteractionResult" expires_after="M81">
<owner>gab@chromium.org</owner>
<owner>aseren@yandex-team.ru</owner>
<summary>
Used to send the result of interaction with remote process as histograms in
case when remote process influences on start.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.TerminateProcessErrorCode.Posix"
enum="PopularOSErrno" expires_after="M77">
<owner>gab@chromium.org</owner>
<owner>aseren@yandex-team.ru</owner>
<summary>
The error code of remote process termination on Posix in case when remote
process hung.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.TerminateProcessErrorCode.Windows"
enum="WinGetLastError" expires_after="M81">
<owner>gab@chromium.org</owner>
<owner>aseren@yandex-team.ru</owner>
<summary>
The error code of remote process termination on Windows in case when remote
process hung.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.TerminateProcessTime" units="ms"
expires_after="2020-03-08">
<owner>gab@chromium.org</owner>
<owner>aseren@yandex-team.ru</owner>
<summary>
Time it takes from TerminateProcess call to the moment when we stop waiting
for remote process switches to signal state.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.TerminationWaitErrorCode.Windows"
enum="WinGetLastError" expires_after="M81">
<owner>gab@chromium.org</owner>
<owner>aseren@yandex-team.ru</owner>
<summary>
The error code of wating for remote process termination on Windows.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.TimeToCreate" units="ms"
expires_after="2018-08-30">
<owner>gab@chromium.org</owner>
<summary>
Time it takes to grab the process singleton. Reported once per successful
attempt at obtaining the singleton.
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.TimeToFailure" units="ms"
expires_after="2018-08-30">
<owner>gab@chromium.org</owner>
<summary>
Time it takes to return an error from the process singleton algorithm (nor
succeeding in obtaining it, nor in generating a rendez-vous). This does not
include time spent in the fast notification path (chrome_exe_main_win.cc).
</summary>
</histogram>
<histogram name="Chrome.ProcessSingleton.TimeToNotify" units="ms"
expires_after="2018-08-30">
<owner>gab@chromium.org</owner>
<summary>
Time it takes to find the process singleton owner and notify it. Reported
once per successful rendez-vous. This does not include time spent in the
fast notification path (chrome_exe_main_win.cc).
</summary>
</histogram>
<histogram name="Chrome.Tabs.AnimationSmoothness.HoverCard.FadeIn" units="%"
expires_after="2021-08-29">
<owner>yichenz@chromium.org</owner>
<owner>chromeos-wmp@google.com</owner>
<summary>
Tracks the animation smoothness for the fade-in animation of tab hover card.
</summary>
</histogram>
<histogram name="Chrome.Tabs.AnimationSmoothness.HoverCard.FadeOut" units="%"
expires_after="2021-06-04">
<owner>yichenz@chromium.org</owner>
<owner>chromeos-wmp@google.com</owner>
<summary>
Tracks the animation smoothness for the fade-out animation of tab hover
card.
</summary>
</histogram>
<histogram name="Chrome.Tabs.AnimationSmoothness.TabLoading" units="%"
expires_after="2021-10-10">
<owner>yichenz@chromium.org</owner>
<owner>chromeos-wmp@google.com</owner>
<summary>
Tracks the animation smoothness of tab loading animation. A tracker starts
when the first tab loading animation starts and stops after the last one
stops for each browser window. The metric is emitted when the tracker stops.
</summary>
</histogram>
<histogram name="ChromeColors.ColorApplied" enum="ChromeColorsInfo"
expires_after="2021-08-22">
<owner>alexilin@chromium.org</owner>
<owner>jkrcal@chromium.org</owner>
<summary>
Records the theme color every time the user clicks on a color icon in the
color picker.
</summary>
</histogram>
<histogram name="ChromeColors.ColorOnLoad" enum="ChromeColorsInfo"
expires_after="2021-09-19">
<owner>gayane@chromium.org</owner>
<owner>yyushkina@chromium.org</owner>
<summary>
Records installed color id every time theme service is initialized from
prefs. Happens once per profile load.
</summary>
</histogram>
<histogram name="ChromeElf.ApplyHookResult" enum="NTSTATUS" expires_after="M82">
<owner>chrisha@chromium.org</owner>
<owner>pmonette@chromium.org</owner>
<summary>
Records the NTSTATUS result that was returned when attempting to hook
NtMapViewOfSection during chrome_elf.dll initialization. Emitted
asynchronously shortly after startup.
</summary>
</histogram>
<histogram name="ChromeElf.Beacon.RetryAttemptsBeforeSuccess" units="units"
expires_after="M82">
<owner>chrisha@chromium.org</owner>
<owner>pmonette@chromium.org</owner>
<summary>
Records the number of attempts needed before third-party DLL blocking was
properly set up. This is logged immediately after a successful setup. Only
recorded on Windows.
</summary>
</histogram>
<histogram name="ChromeElf.Beacon.SetupStatus" enum="BlacklistSetup"
expires_after="M82">
<owner>chrisha@chromium.org</owner>
<owner>pmonette@chromium.org</owner>
<summary>
Records the successes and failures when running the third-party DLL blocking
setup code, taking into account the safety beacon. Used to determine how
often the third-party DLL blocking is disabled because it failed to
initialize properly twice in a row. Only recorded on Windows.
</summary>
</histogram>
<histogram name="ChromeElf.ThirdPartyStatus" enum="ThirdPartyStatus"
expires_after="M82">
<owner>chrisha@chromium.org</owner>
<owner>pmonette@chromium.org</owner>
<summary>
Records the different status codes that are emitted by chrome_elf.dll while
initializing the NtMapViewOfSection hook used to blocked third-party DLLs.
Multiple status codes can be emitted per initialization since some of those
status codes represent non-fatal failures. E.g. Failure to clear the
previous failure codes. This also means that duplicates are possible. This
is recorded shortly after Chrome launches, since chrome_elf.dll doesn't have
access to the //base API.
</summary>
</histogram>
<histogram name="ChromeGeneratedCustomTab.IntentToFirstNavigationStartTime"
units="ms" expires_after="M81">
<owner>lizeb@chromium.org</owner>
<summary>
For Custom Tabs generated by Chrome itself instead of external apps, this
shows the time between the intent arrival in the CCT and the first
navigation start. Recorded when the page has finished loading.
</summary>
</histogram>
<histogram name="ChromeGeneratedCustomTab.IntentToPageLoadedTime" units="ms"
expires_after="M77">
<owner>lizeb@chromium.org</owner>
<summary>
For Custom Tabs generated by Chrome itself instead of external apps, this
shows time between the intent arrival in the CCT and the first &quot;page
loaded&quot; event, if the navigation is successful.
</summary>
</histogram>
<histogram base="true" name="ChromeMLService.EvaluationLatency" units="ms"
expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>
Measures the model evaluation latency in the Chrome ML Service. This will be
recorded whenever a model evaluation call is invoked on a valid model,
regardless of whether the evaluation result is valid or not.
</summary>
</histogram>
<histogram base="true" name="ChromeMLService.LoadModelResult"
enum="ChromeMLServiceLoadModelResult" expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>
Records the model loading result status from the Chrome ML Service.
</summary>
</histogram>
<histogram name="ChromeMLService.PredictionResult.DecisionTreeModel"
enum="ChromeMLServiceDecisionTreePredictionResult" expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>
Records the decision model prediction result from the Chrome ML Service.
</summary>
</histogram>
<histogram name="ChromeMLService.ServiceAliveDuration" units="ms"
expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>
Measures the duration in which the Chrome ML Service is alive. This is
monitored by a service observer in the browser process, and should be
recorded correctly when the service exits either gracefully or unexpectedly.
</summary>
</histogram>
<histogram name="ChromeMLService.ServiceCrash" enum="Boolean"
expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>Records if the Chrome ML Service crashed.</summary>
</histogram>
<histogram name="ChromeMLService.ServiceLaunch" enum="Boolean"
expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>Records if the Chrome ML Service launched successfully.</summary>
</histogram>
<histogram name="ChromeMLService.ServiceNormalTermination" enum="Boolean"
expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>Records if the Chrome ML Service terminated normally.</summary>
</histogram>
<histogram name="ChromeMLService.ServiceStatusWhenRequested"
enum="ChromeMLServiceRequestStatus" expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>
Whether the ML Service is already running when it is requested.
</summary>
</histogram>
<histogram base="true" name="ChromeMLService.ValidationLatency" units="ms"
expires_after="M91">
<obsolete>
Obsolete as of 04/2021.
</obsolete>
<owner>mcrouse@chromium.org</owner>
<owner>sophiechang@chromium.org</owner>
<summary>
Measures the model validation latency in the Chrome ML Service. This is
recorded when the ML service receives a model and evaluates it, regardless
of whether the model turns out to be valid or not.
</summary>
</histogram>
</histograms>
</histogram-configuration>