blob: 379c384b28623bd1023560625411a85c9336a5e5 [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 Download 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="Download.ApiFunctions" enum="DownloadFunctions"
expires_after="2020-03-08">
<owner>dtrainor@chromium.org</owner>
<summary>Downloads extension API function calls.</summary>
</histogram>
<histogram name="Download.AttachmentServices.Duration" units="ms"
expires_after="2020-02-23">
<owner>dtrainor@chromium.org</owner>
<summary>
Time taken to invoke IAttachmentExecute::Save() excluding the time taken to
instantiate CLSID_AttachmentServices.
</summary>
</histogram>
<histogram name="Download.BandwidthOverallBytesPerSecond" units="units"
expires_after="2021-08-15">
<obsolete>
Deprecated as of 05/2021. Use Download.BandwidthOverallBytesPerSecond2
instead as it has higher bucket range.
</obsolete>
<owner>dtrainor@chromium.org</owner>
<summary>
Overall bandwidth seen for the download. Note that this is measured at the
point at which the file is written, and so will not take into account the
time costs of activities that occur after file write is completed (e.g. safe
browsing scanning).
</summary>
</histogram>
<histogram name="Download.BandwidthOverallBytesPerSecond2" units="bytes/second"
expires_after="2021-12-31">
<owner>qinmin@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>
Overall bandwidth seen for a completed download. This includes all file
downloads going through the download subsystem, but excludes all the page
saves. Note that this is measured at the point at which the file is written,
and so will not take into account the time costs of activities that occur
after file write is completed (e.g. safe browsing scanning). The maximum
bucket range is 200Mbps.
</summary>
</histogram>
<histogram name="Download.CancelReason" enum="DownloadCancelReason"
expires_after="2021-08-09">
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>Records why the download is canceled.</summary>
</histogram>
<histogram name="Download.ContentType.Audio" enum="DownloadAudioType"
expires_after="2021-08-22">
<owner>xingliu@chromium.org</owner>
<summary>Types of audio files that are downloaded.</summary>
</histogram>
<histogram name="Download.ContentType.Image" enum="DownloadImageType"
expires_after="never">
<!-- expires-never: Monitors download system health. -->
<owner>dtrainor@chromium.org</owner>
<summary>Types of images that are downloaded.</summary>
</histogram>
<histogram name="Download.ContentType.Text" enum="DownloadTextType"
expires_after="2021-09-12">
<owner>xingliu@chromium.org</owner>
<summary>Types of text files that are downloaded.</summary>
</histogram>
<histogram name="Download.ContentType.Video" enum="DownloadVideoType"
expires_after="never">
<!-- expires-never: Monitors download system health. -->
<owner>xingliu@chromium.org</owner>
<summary>Types of video files that are downloaded.</summary>
</histogram>
<histogram base="true" name="Download.Counts" enum="DownloadCountType"
expires_after="2021-11-14">
<!-- Name completed by histogram_suffixes name="DownloadSource" -->
<owner>xingliu@chromium.org</owner>
<summary>
Various individual counts in the download system; see DownloadCountType for
details.
</summary>
</histogram>
<histogram name="Download.CountsChrome" enum="ChromeDownloadCountType"
expires_after="2020-10-25">
<owner>dtrainor@chromium.org</owner>
<summary>
Various individual counts in the download system, for example the number of
downloads blocked by throttling from the DownloadRequestLimiter.
</summary>
</histogram>
<histogram name="Download.DangerousFile.DownloadValidatedByType"
enum="SBClientDownloadExtensions" expires_after="2021-12-26">
<owner>drubery@chromium.org</owner>
<owner>chrome-safebrowsing-alerts@chromium.org</owner>
<summary>
User chose to save a download which was marked DANGEROUS_FILE. Grouped by
the type of file.
</summary>
</histogram>
<histogram name="Download.Database.IsAvailable" enum="BooleanAvailable"
expires_after="never">
<!-- expires-never: Helpful to track download database issue. -->
<owner>xingliu@chromium.org</owner>
<owner>qinmin@chromium.org</owner>
<summary>
Records whether the download database is available when database startup
completes, before starting any pending downloads. If the database is
available, it will provide the next download id. Or no download history will
be persisted.
</summary>
</histogram>
<histogram name="Download.DeleteRetentionTime.Audio" units="hours"
expires_after="2020-01-30">
<owner>xingliu@chromium.org</owner>
<summary>
How long users keep downloaded audio files on disk. Recorded when the
downloaded file is deleted.
</summary>
</histogram>
<histogram name="Download.DeleteRetentionTime.Video" units="hours"
expires_after="2020-01-30">
<owner>xingliu@chromium.org</owner>
<summary>
How long users keep downloaded video files on disk. Recorded when the
downloaded file is deleted.
</summary>
</histogram>
<histogram name="Download.DOMEvent" enum="DownloadDOMEvent" expires_after="M77">
<owner>dtrainor@chromium.org</owner>
<summary>User actions in chrome://downloads</summary>
</histogram>
<histogram name="Download.DownloadDangerPrompt"
enum="SBClientDownloadExtensions" expires_after="2021-11-07">
<owner>vakh@chromium.org</owner>
<owner>chrome-safebrowsing-alerts@google.com</owner>
<summary>
Records when user is shown the download danger prompt while attempting to
recover a blocked download from chrome://downloads, grouped by the type of
file.
</summary>
</histogram>
<histogram name="Download.DownloadManager.CreationDelay" units="ms"
expires_after="2020-11-01">
<owner>qinmin@chromium.org</owner>
<owner>dtrainor@chromium.org</owner>
<summary>
Records the delay of creating non-incognito download manager after the
download system is initialized.
</summary>
</histogram>
<histogram name="Download.DownloadManager.MemoryUsage" units="KB"
expires_after="2020-11-01">
<owner>qinmin@chromium.org</owner>
<owner>dtrainor@chromium.org</owner>
<summary>
Records the approximate memory usage from non-incognito download manager,
after all downloads are loaded.
</summary>
</histogram>
<histogram base="true" name="Download.DownloadSize" units="KB"
expires_after="never">
<!-- expires-never: Used for long term download system health monitoring. -->
<!-- Name completed by histogram_suffixes name="Download.Parallelizable" -->
<owner>dtrainor@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>The size of successfully completed downloads.</summary>
</histogram>
<histogram name="Download.DuplicateInProgressDownloadIdCount"
units="duplicates" expires_after="2019-07-30">
<owner>qinmin@chromium.org</owner>
<owner>dtrainor@chromium.org</owner>
<summary>
The total number of download IDs that are duplicate in the in-progress
downloads DB, capped at 10.
</summary>
</histogram>
<histogram name="Download.HistoryPropagatedUpdate" enum="Boolean"
expires_after="2021-06-22">
<obsolete>
Deprecated in June 2021.
</obsolete>
<owner>Please list the metric's owners. Add more owner tags as needed.</owner>
<summary>
Denotes whether the history result should be updated. Recorded when the
download is updated.
</summary>
</histogram>
<histogram name="Download.HttpResponseCode" enum="HttpResponseCode"
expires_after="never">
<!-- expires-never: Used to monitor download system health. -->
<owner>xingliu@chromium.org</owner>
<summary>The count of HTTP Response codes for download requests.</summary>
</histogram>
<histogram name="Download.InitiatedByWindowOpener"
enum="DownloadInitiatedByWindowOpenerType" expires_after="M85">
<owner>meacer@chromium.org</owner>
<owner>jdeblasio@chromium.org</owner>
<summary>
Records the type of the window.opener origin when a download is initiated in
a tab by that tab's opener (crbug.com/121259).
</summary>
</histogram>
<histogram name="Download.InProgressDB.Counts"
enum="DownloadInProgressDBCountType" expires_after="M83">
<owner>qinmin@chromium.org</owner>
<summary>
Various individual counts related to in-progress download DB.
</summary>
</histogram>
<histogram base="true" name="Download.InsecureBlocking.Extensions"
enum="InsecureDownloadExtensions" expires_after="M94">
<owner>jdeblasio@chromium.org</owner>
<owner>estark@chromium.org</owner>
<owner>cthomp@chromium.org</owner>
<summary>
Records file extension of download to support analysis for mixed content
file download blocking.
</summary>
</histogram>
<histogram name="Download.InsecureBlocking.Totals"
enum="InsecureDownloadSecurityStatus" expires_after="2021-11-21">
<owner>jdeblasio@chromium.org</owner>
<owner>estark@chromium.org</owner>
<owner>cthomp@chromium.org</owner>
<summary>
Records security state of downloads to support analysis for mixed content
file download blocking.
</summary>
</histogram>
<histogram base="true" name="Download.InsecureBlocking.Verification"
enum="DownloadContentType" expires_after="M92">
<owner>jdeblasio@chromium.org</owner>
<owner>estark@chromium.org</owner>
<owner>cthomp@chromium.org</owner>
<summary>
Records mime-type of download to support analysis for mixed content file
download blocking. This is a temporary metric for investigating differences
in metrics.
</summary>
</histogram>
<histogram base="true" name="Download.InterruptedReason" enum="InterruptReason"
expires_after="never">
<!-- Name completed by histogram_suffixes name="DownloadSource" -->
<!-- expires-never: Core download metrics, used in go/chrome-download-dashboard. -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>The reason that a download was interrupted.</summary>
</histogram>
<histogram name="Download.IOSDownloadARModelState.USDZ"
enum="DownloadARModelState" expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
Logged at different stages of downloading a USDZ MIME type AR model on iOS.
</summary>
</histogram>
<histogram name="Download.IOSDownloadedFileAction" enum="DownloadedFileAction"
expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
The action that a user takes on a file after it has been successfully
downloaded on iOS.
</summary>
</histogram>
<histogram name="Download.IOSDownloadedFileNetError" enum="NetErrorCodes"
expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
Positive net error codes that happen in the case of download content fetch
failure.
</summary>
</histogram>
<histogram name="Download.IOSDownloadedFileStatusCode" units="units"
expires_after="2020-12-08">
<obsolete>
Deprecated as of 08-2018. Recording code was removed in crrev.com/c/1170128.
</obsolete>
<owner>stkhapugin@chromium.org</owner>
<summary>
HTTP status code returned when file download completes on iOS.
</summary>
</histogram>
<histogram name="Download.IOSDownloadFileInBackground"
enum="DownloadFileInBackground" expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
Logged when the download is completed (successfully or not) or in-progress
download was cancelled because of the app termination. This histogram
includes information whether the download was successful and whether or not
the download task was running while the app was active.
</summary>
</histogram>
<histogram name="Download.IOSDownloadFileResult" enum="DownloadFileResult"
expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>Result when a user attempts to download a file on iOS.</summary>
</histogram>
<histogram name="Download.IOSDownloadFileUI" enum="DownloadFileUI"
expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
Result when a user attempts to present the download UI on iOS. Looged when
download is created.
</summary>
</histogram>
<histogram name="Download.IOSDownloadFileUIGoogleDrive"
enum="DownloadFileUIGoogleDrive" expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
Result when the download UI is prexsented on iOS. Values indicate if Google
Drive is installed and whether or not Install Google Drive promo was shown.
Logged when download is updated.
</summary>
</histogram>
<histogram name="Download.IOSDownloadMimeType" enum="DownloadMimeTypeResult"
expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
MIME type of a download response. Logged when the download UI was offered by
the browser to the user.
</summary>
</histogram>
<histogram name="Download.IOSDownloadMobileConfigFileUI"
enum="DownloadMobileConfigFileUI" expires_after="2022-06-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>gambard@chromium.org</owner>
<summary>
Result when the warning alert is presented before downloading a
.mobileconfig file on iOS. Values indicate if the user has continued the
download workflow after the presentation of the warning alert.
</summary>
</histogram>
<histogram name="Download.IOSDownloadPassKitResult"
enum="DownloadPassKitResult" expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
Recorded when a user attempts to download a PassKit file on iOS.
</summary>
</histogram>
<histogram name="Download.IOSDownloadReplaced" enum="BooleanReplaced"
expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
The user discarded in-progress download and replaced with the new one. Only
recorded after the user interacts with a dialog offering the choice between
replacing an in-progress download versus downloading separately to a new
filename.
</summary>
</histogram>
<histogram name="Download.IOSPresentAddPassesDialogResult"
enum="PresentAddPassesDialogResult" expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>Result of an attempt to present Add Passes dialog on iOS.</summary>
</histogram>
<histogram name="Download.IOSPresentQLPreviewControllerResult"
enum="PresentQLPreviewController" expires_after="2022-03-20">
<owner>sdefresne@chromium.org</owner>
<owner>ewannpv@chromium.org</owner>
<owner>mrefaat@chromium.org</owner>
<summary>
Result when a user attempts to present a USDZ MIME type AR model on iOS.
</summary>
</histogram>
<histogram name="Download.Later.Events" enum="DownloadLaterEvent"
expires_after="2021-11-07">
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
Records events for download later feature in download core code.
</summary>
</histogram>
<histogram name="Download.Later.ScheduledDownloadSize" units="Mb"
expires_after="2021-11-07">
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The size of downloads when the user tries to download at a scheduled time.
Recorded when the positive button in download later dialog is clicked.
</summary>
</histogram>
<histogram base="true" name="Download.Later.UI.DialogChoice"
enum="DownloadLaterDialogChoice" expires_after="2021-11-07">
<!-- Name completed by histogram_suffixes name="DownloadDialogSource" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The user selection in the download later dialog. Recorded when the user
starts a download, or clicking the change button on download infobar and
download home UI.
</summary>
</histogram>
<histogram name="Download.Later.UI.Events" enum="DownloadLaterUiEvent"
expires_after="2021-11-07">
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
Records events for download later feature in download Android UI.
</summary>
</histogram>
<histogram name="Download.MediaMetadata.Event" enum="MediaMetadataEvent"
expires_after="never">
<!-- expires-never: Download media parser stability metrics. -->
<owner>dtrainor@chromium.org</owner>
<owner>qinmin@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>Records events for local media metadata parsing.</summary>
</histogram>
<histogram name="Download.MediaParser.Event" enum="MediaParserEvent"
expires_after="never">
<!-- expires-never: Download media parser stability metrics. -->
<owner>dtrainor@chromium.org</owner>
<owner>qinmin@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>
Records events when using media parser to analyze local media files.
</summary>
</histogram>
<histogram base="true" name="Download.NetworkConnectionType.Complete"
enum="NetworkConnectionType" expires_after="2022-04-30">
<!-- Name completed by histogram_suffixes name="DownloadSource" -->
<owner>dtrainor@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>Network connection type when a download is completed.</summary>
</histogram>
<histogram base="true" name="Download.NetworkConnectionType.StartNew"
enum="NetworkConnectionType" expires_after="2022-04-30">
<!-- Name completed by histogram_suffixes name="DownloadSource" -->
<owner>dtrainor@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>Network connection type when starting a new download.</summary>
</histogram>
<histogram name="Download.OpenDownloads.PerProfileType"
enum="BrowserProfileType" expires_after="2021-12-31">
<owner>sideyilmaz@chromium.org</owner>
<owner>chrome-incognito@google.com</owner>
<summary>
Records the profile type for opening the Downloads page. This may be
triggered by different entry points like mobile menu, notification or info
bar.
</summary>
</histogram>
<histogram name="Download.OpenDownloadsFromMenu.PerProfileType"
enum="BrowserProfileType" expires_after="2021-12-31">
<owner>sideyilmaz@chromium.org</owner>
<owner>chrome-incognito@google.com</owner>
<summary>
Records the profile type for opening the Downloads page from menu.
</summary>
</histogram>
<histogram name="Download.OpenMethod" enum="DownloadOpenMethod"
expires_after="never">
<!-- expires-never: part of top-line metric (internal: go/chrome-browser-nsm) -->
<owner>dtrainor@chromium.org</owner>
<owner>chrome-analysis-team@google.com</owner>
<summary>
Invocation count for methods of opening a download. For some file types,
Chrome defaults to opening the file in the browser instead of invoking the
system handler. The user has the option of overriding this behavior.
This histogram is of special interest to the chrome-analysis-team@. Do not
change its semantics or retire it without talking to them first.
</summary>
</histogram>
<histogram name="Download.OpensOutstanding" units="units" expires_after="M77">
<owner>dtrainor@chromium.org</owner>
<summary>The number of unopened downloads, when one is opened.</summary>
</histogram>
<histogram name="Download.OverwrittenDownloadRemovedFromHistory"
units="downloads" expires_after="2021-12-05">
<owner>qinmin@chromium.org</owner>
<owner>chrome-downloads@google.com</owner>
<summary>
Records the number of overwritten downloads that are cleaned up from
Chrome://downloads history. Recorded after loading all the downloads from
history DB.
</summary>
</histogram>
<histogram name="Download.ParallelDownload.CreationEvent"
enum="ParallelDownloadCreationEvent" expires_after="2020-12-06">
<obsolete>
Deprecated as of 10/2020
</obsolete>
<owner>xingliu@chromium.org</owner>
<summary>
When parallel downloading feature is enabled, a download may be created as
parallel download or fall back to normal download based on various factors.
Records the total number of parallel and non-parallel downloads created when
parallel downloading feature is enabled. Also records the reason why a
parallel download falls back to normal download. The reasons are not
mutually exclusive.
</summary>
</histogram>
<histogram name="Download.ParallelDownload.CreationFailureReason"
enum="InterruptReason" expires_after="2021-04-25">
<owner>qinmin@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>
Records the received failure reason after sending a parallel download
request.
</summary>
</histogram>
<histogram name="Download.ParallelDownloadAddStreamSuccess"
enum="BooleanSuccess" expires_after="2020-10-25">
<obsolete>
Depcreated 10/2020
</obsolete>
<owner>xingliu@chromium.org</owner>
<summary>
Records if the byte stream reader of a subsequent request is successfully
added to the download sink.
</summary>
</histogram>
<histogram name="Download.ParallelDownloadRequestCount" units="requests"
expires_after="2022-04-01">
<owner>qinmin@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>
The total number of requests sent for a parallel download, including the
initial request.
</summary>
</histogram>
<histogram name="Download.Parallelizable.DownloadTime" units="ms"
expires_after="2020-12-28">
<obsolete>
Removed 2021/02
</obsolete>
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>The download time for a parallelizable download.</summary>
</histogram>
<histogram name="Download.Parallelizable.FileSize" units="KB"
expires_after="2021-08-09">
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>The download size of a parallelizable download.</summary>
</histogram>
<histogram base="true" name="Download.ParallelizableDownloadBandwidth"
units="bytes/second" expires_after="2020-12-13">
<obsolete>
Deprecated as of 12/2020.
</obsolete>
<owner>qinmin@chromium.org</owner>
<summary>
For parallelizable download, average disk bandwidth seen for different
settings. If a download was ever paused, this is not recorded.
</summary>
</histogram>
<histogram base="true" name="Download.PathGenerationEvent"
enum="DownloadPathGenerationEvent" expires_after="never">
<!-- expires-never: Monitors download system health. -->
<!-- Name completed by histogram_suffixes name="DownloadType" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The download path generation behavior which happens before download path
validation in download target determination process.
</summary>
</histogram>
<histogram base="true" name="Download.PathValidationResult"
enum="DownloadPathValidationResult" expires_after="never">
<!-- expires-never: Monitors download system health. -->
<!-- Name completed by histogram_suffixes name="DownloadType" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The download path validation result before the final download target is
determined.
</summary>
</histogram>
<histogram name="Download.QuarantineService.ConnectionError"
enum="BooleanConnectionError" expires_after="M80">
<owner>pmonette@chromium.org</owner>
<owner>alewoolf@microsoft.com</owner>
<summary>
Whether a connection error has happened for the QuarantineService.
</summary>
</histogram>
<histogram name="Download.ResultsRenderedTime" units="ms" expires_after="M90">
<owner>calamity@chromium.org</owner>
<owner>dbeam@chromium.org</owner>
<summary>
Records the time taken to load the downloads Web UI and render (at least) a
screen full of items. This is roughly equivalent to 'time to first
meaningful paint' for the downloads page.
</summary>
</histogram>
<histogram name="Download.Resume.AutoResumeLimitReached" enum="Boolean"
expires_after="2021-01-10">
<owner>shaktisahu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
Records whenever max auto-resumption limit was reached for a download.
</summary>
</histogram>
<histogram name="Download.Resume.AutoResumeLimitReached.LastReason"
enum="InterruptReason" expires_after="2021-01-10">
<owner>shaktisahu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
Records the last interrupt reason for this download when the download
reaches auto-resumption limit.
</summary>
</histogram>
<histogram name="Download.Resume.LastReason" enum="InterruptReason"
expires_after="2021-01-03">
<owner>shaktisahu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>Records the last interrupt reason for this download.</summary>
</histogram>
<histogram name="Download.Resume.UserResume" enum="Boolean"
expires_after="2020-11-01">
<owner>shaktisahu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>Records whether a resumption was due to user.</summary>
</histogram>
<histogram name="Download.ResumptionRestart.Reason" enum="InterruptReason"
expires_after="2021-02-28">
<owner>qinmin@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>
Records the interrupt reason when download is restarting from the beginning
during resumption.
</summary>
</histogram>
<histogram name="Download.SavePackage" enum="DownloadSavePackageEvent"
expires_after="M77">
<owner>dtrainor@chromium.org</owner>
<summary>
Events (e.g. Started, Cancelled, Finished, Write to Completed file, Write to
Failed file) occuring within the state machine of a SavePackage operation.
</summary>
</histogram>
<histogram name="Download.Service.Db.Operation.Failure"
enum="Download.Service.ModelAction" expires_after="never">
<!-- expires-never: Monitor background download system database stability. -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>Records a failed database operation.</summary>
</histogram>
<histogram name="Download.Service.Db.Operation.Success"
enum="Download.Service.ModelAction" expires_after="never">
<!-- expires-never: Monitor background download system database stability. -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>Records a successful database operation.</summary>
</histogram>
<histogram base="true" name="Download.Service.Db.Records" units="records"
expires_after="never">
<!-- expires-never: Monitors download service system health. -->
<!-- Name completed by histogram_suffixes
name="Download.Service.EntryState" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The total number of database records used by download service, and the
number of records in each entry state.
</summary>
</histogram>
<histogram name="Download.Service.Driver.InterruptReason"
enum="InterruptReason" expires_after="never">
<!-- expires-never: Monitor background download system errors. -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The interrupt reason for failed downloads in download service.
</summary>
</histogram>
<histogram name="Download.Service.Entry.Event"
enum="Download.Service.EntryEvent" expires_after="M88">
<owner>dtrainor@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>An action the download service took on an active download.</summary>
</histogram>
<histogram name="Download.Service.Entry.RetryCount" units="attempts"
expires_after="M88">
<owner>dtrainor@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>
Records how many attempts have taken place at the time of a retry for a
download in the Download Service. This differs from
Download.Service.Entry.ResumptionCount, which records resumptions not
complete restarts.
</summary>
</histogram>
<histogram base="true" name="Download.Service.Files.CleanUp.External"
units="files" expires_after="never">
<!-- expires-never: Monitors download service system health. -->
<!-- Name completed by histogram_suffixes
name="Download.Service.CleanupReason" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The number of files that have been deleted by external application or the
user, when performing clean up tasks in download service.
</summary>
</histogram>
<histogram base="true" name="Download.Service.Files.CleanUp.Failure"
units="attempts" expires_after="never">
<!-- expires-never: Monitors download service system health. -->
<!-- Name completed by histogram_suffixes
name="Download.Service.CleanupReason" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The number of failed file deletion attempts, when performing clean up tasks
in download service.
</summary>
</histogram>
<histogram base="true" name="Download.Service.Files.CleanUp.Success"
units="files" expires_after="never">
<!-- expires-never: Monitors download service system health. -->
<!-- Name completed by histogram_suffixes
name="Download.Service.CleanupReason" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The number of files successfully deleted, when performing clean up tasks in
download service.
</summary>
</histogram>
<histogram name="Download.Service.Files.DirCreationError"
enum="PlatformFileError" expires_after="never">
<!-- expires-never: Download service stability metric. -->
<owner>xingliu@chromium.org</owner>
<summary>
The error code when failed to create the download directory.
</summary>
</histogram>
<histogram name="Download.Service.Files.FreeDiskSpace" units="%"
expires_after="2021-09-05">
<owner>xingliu@chromium.org</owner>
<summary>
The percentage of free disk space to total disk space. Recorded during
initialization of the file monitor.
</summary>
</histogram>
<histogram name="Download.Service.Files.LifeTime" units="ms"
expires_after="never">
<!-- expires-never: Download service stability metric. -->
<owner>xingliu@chromium.org</owner>
<summary>
The lifestime of a download file, which begins from the download completion
to the file being deleted by the clean up task.
</summary>
</histogram>
<histogram base="true" name="Download.Service.Finish.Time" units="ms"
expires_after="M85">
<!-- Name completed by histogram_suffixes
name="Download.Service.CompletionType" -->
<owner>xingliu@chromium.org</owner>
<summary>The time to complete the download in download service.</summary>
</histogram>
<histogram name="Download.Service.Finish.Type"
enum="Download.Service.CompletionType" expires_after="2021-12-05">
<owner>xingliu@chromium.org</owner>
<summary>The completion type for downloads in download service.</summary>
</histogram>
<histogram name="Download.Service.OnUploadDataReceived.PauseReason"
enum="Download.Service.PauseReason" expires_after="never">
<!-- expires-never: Used for detecting anomalies in background download service. -->
<owner>shaktisahu@chromium.org</owner>
<summary>
The reason for suspending a download right after the upload data is received
from the client. Every pause will result in two entries in the histogram:
ANY and a more specific reason.
</summary>
</histogram>
<histogram name="Download.Service.PauseReason"
enum="Download.Service.PauseReason" expires_after="never">
<!-- expires-never: Used for detecting anomalies in background download service. -->
<owner>shaktisahu@chromium.org</owner>
<summary>
The reason for pausing an in-progress download. Every pause will result in
two entries in the histogram: ANY and a more specific reason.
</summary>
</histogram>
<histogram base="true" name="Download.Service.Request.ClientAction"
enum="Download.Service.ServiceApiAction" expires_after="never">
<!-- expires-never: Monitors download service system health. -->
<!-- Name completed by histogram_suffixes
name="Download.Service.Client" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>Records the API calls on download service.</summary>
</histogram>
<histogram base="true" name="Download.Service.StartUpStatus"
enum="Download.Service.StartUpResult" expires_after="never">
<!-- Name completed by histogram_suffixes
name="Download.Service.StartUpStep" -->
<!-- expires-never: Monitors download service system health. -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>The start up result of the download service.</summary>
</histogram>
<histogram base="true" name="Download.Service.TaskScheduler.Status"
enum="Download.Service.ScheduledTaskStatus" expires_after="never">
<!-- expires-never: Monitors download service system health. -->
<!-- Name completed by histogram_suffixes
name="Download.Service.TaskType" -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The platform background tasks used by download service will invoke native
functions after being scheduled. The tasks may be aborted or canceled. This
metric records the status of background tasks when native functions are
invoked.
</summary>
</histogram>
<histogram name="Download.Service.Upload.EntryNotFound" enum="BooleanHit"
expires_after="M85">
<owner>shaktisahu@chromium.org</owner>
<summary>
Records if the entry has been deleted for some reason while we are waiting
for the client to respond with the upload data.
</summary>
</histogram>
<histogram base="true" name="Download.Service.Upload.HasUploadData"
enum="BooleanUpload" expires_after="2021-01-31">
<!-- Name completed by histogram_suffixes
name="Download.Service.Client" -->
<owner>shaktisahu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The download service uses a single code path for both downloading and
uploading data. This metric records whether a given request includes upload
data. It is recorded upon starting a download or upload, immediately after
the client indicates whether the request includes upload data.
</summary>
</histogram>
<histogram name="Download.Shelf.DragEvent" enum="Download.Shelf.DragEvent"
expires_after="M77">
<owner>sdy@chromium.org</owner>
<summary>
Events related to dragging a completed download from the shelf, which
represents dragging a reference to the downloaded file.
</summary>
</histogram>
<histogram name="Download.Shelf.WebUI.LoadCompletedTime" units="ms"
expires_after="M97">
<owner>kerenzhu@chromium.org</owner>
<owner>robliao@chromium.org</owner>
<owner>romanarora@chromium.org</owner>
<owner>yuhengh@chromium.org</owner>
<summary>
The amount of time between the render frame host StartProvisionalLoad event
and the render frame DocumentOnLoadCompleted event for the download shelf
WebUI page.
</summary>
</histogram>
<histogram name="Download.Shelf.WebUI.LoadDocumentTime" units="ms"
expires_after="M97">
<owner>kerenzhu@chromium.org</owner>
<owner>robliao@chromium.org</owner>
<owner>romanarora@chromium.org</owner>
<owner>yuhengh@chromium.org</owner>
<summary>
The amount of time between the render frame host StartProvisionalLoad and
DidFinishDocumentLoad events for the download shelf WebUI page.
</summary>
</histogram>
<histogram name="Download.Shelf.{Framework}.FirstDownloadPaintTime" units="ms"
expires_after="M97">
<owner>kerenzhu@chromium.org</owner>
<owner>robliao@chromium.org</owner>
<owner>romanarora@chromium.org</owner>
<owner>yuhengh@chromium.org</owner>
<summary>
The amount of time it took from the moment the {Framework} download shelf
was called to show the first download on the shelf view to when the
associated download item is visible.
</summary>
<token key="Framework">
<variant name="Views"/>
<variant name="WebUI"/>
</token>
</histogram>
<histogram name="Download.Shelf.{Framework}.NotFirstDownloadPaintTime"
units="ms" expires_after="M97">
<owner>kerenzhu@chromium.org</owner>
<owner>robliao@chromium.org</owner>
<owner>romanarora@chromium.org</owner>
<owner>yuhengh@chromium.org</owner>
<summary>
The amount of time it took from the moment the {Framework} download shelf
was called to show a download on the shelf view other than the first one to
when the associated download item is visible.
</summary>
<token key="Framework">
<variant name="Views"/>
<variant name="WebUI"/>
</token>
</histogram>
<histogram name="Download.Shelf.{Framework}.ShowContextMenuTime" units="ms"
expires_after="M97">
<owner>kerenzhu@chromium.org</owner>
<owner>robliao@chromium.org</owner>
<owner>romanarora@chromium.org</owner>
<owner>yuhengh@chromium.org</owner>
<summary>
The amount of time it took from pressing a {Framework} download item's
chevron button to immediately before the context menu is shown.
</summary>
<token key="Framework">
<variant name="Views"/>
<variant name="WebUI"/>
</token>
</histogram>
<histogram name="Download.ShowDangerousDownloadConfirmationPrompt"
enum="DownloadItem.DangerType" expires_after="M77">
<owner>dtrainor@chromium.org</owner>
<summary>
User saw the confirm prompt to save a download which was marked dangerous.
Grouped by the type of danger.
</summary>
</histogram>
<histogram name="Download.ShowedDownloadWarning" enum="DownloadItem.DangerType"
expires_after="2022-03-08">
<owner>drubery@chromium.org</owner>
<owner>chrome-safebrowsing-alerts@chromium.org</owner>
<summary>
A download warning was shown in the shelf. Note that some downloads may not
be shown on the shelf, e.g., if chrome://downloads is already open when the
download completes, or if an extension is using the downloads API. Grouped
by the type of danger. This histogram is logged on ChromeOS since M93.
This metric is used to populate a dashboard on go/crsb-site.
</summary>
</histogram>
<histogram name="Download.SourcesChrome" enum="ChromeDownloadSource"
expires_after="never">
<!-- expires-never: Monitors download system health. -->
<owner>xingliu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
The initiation source (if initiated within the above-content layer of
chrome) for a download.
</summary>
</histogram>
<histogram name="Download.Start.ContentType" enum="DownloadContentType"
expires_after="M85">
<owner>shaktisahu@chromium.org</owner>
<summary>Content types of the downloads.</summary>
</histogram>
<histogram name="Download.Start.ContentType.NormalProfile"
enum="DownloadContentType" expires_after="2022-01-02">
<owner>shaktisahu@chromium.org</owner>
<owner>clank-downloads@google.com</owner>
<summary>
Content types of the downloads that are started in non-incognito profile.
</summary>
</histogram>
<histogram name="Download.Start.PerProfileType" enum="BrowserProfileType"
expires_after="2021-12-31">
<owner>sideyilmaz@chromium.org</owner>
<owner>chrome-incognito@google.com</owner>
<summary>
The browser profile type for each download started, recorded just after
download successfully started.
</summary>
</histogram>
<histogram name="Download.UserValidatedDangerousDownload"
enum="DownloadItem.DangerType" expires_after="2022-03-08">
<owner>drubery@chromium.org</owner>
<owner>chrome-safebrowsing-team@chromium.org</owner>
<summary>
User chose to save a download which was marked dangerous. Grouped by the
type of danger.
This metric is used to populate a dashboard on go/crsb-site.
</summary>
</histogram>
<histogram name="Download.VideoThumbnail.Event" enum="VideoThumbnailEvent"
expires_after="never">
<!-- expires-never: Download media parser stability metrics. -->
<owner>dtrainor@chromium.org</owner>
<owner>qinmin@chromium.org</owner>
<owner>xingliu@chromium.org</owner>
<summary>Records events for local video thumbnail retrieval.</summary>
</histogram>
<histogram name="Download.WinFileMoveError" enum="WinIFileOperationError"
expires_after="2020-07-31">
<owner>dtrainor@chromium.org</owner>
<owner>qinmin@chromium.org</owner>
<summary>Records the OS error code when moving a file on windows.</summary>
</histogram>
</histograms>
</histogram-configuration>