| <!-- |
| Copyright 2017 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 Chrome UKM metrics |
| along with a detailed description for each metric. |
| |
| See the following doc for details on how to add entries to this file: |
| https://chromium.googlesource.com/chromium/src.git/+/main/services/metrics/ukm_api.md |
| |
| Events may be marked with the attribute singular="True" to indicate that |
| the event will only occur once per source, and multiple entries will just |
| be describing additional metrics about the same event. |
| --> |
| |
| <ukm-configuration> |
| |
| <event name="AboutThisSiteStatus"> |
| <owner>olesiamarukhnno@google.com</owner> |
| <summary> |
| Recorded on each page info bubble open when "About this site" data |
| is fetched. |
| </summary> |
| <metric name="Status" enum="AboutThisSiteStatus"> |
| <summary> |
| The status of the "About this site" info, including if the data |
| is available and whether the proto is valid. See |
| |page_info::about_this_site_validation::AboutThisSiteStatus| for enum |
| elements. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="AbusiveExperienceHeuristic"> |
| <owner>csharrison@chromium.org</owner> |
| <owner>yaoxia@chromium.org</owner> |
| <summary> |
| Obsolete. Various metrics recording experiences which are commonly used for |
| abusive purposes. |
| </summary> |
| <metric name="DidTabUnder"> |
| <summary> |
| True if the page attempted a tab-under navigation. |
| </summary> |
| </metric> |
| <metric name="DidWindowOpenFromAdScript"> |
| <summary> |
| True if the page called window.open with an ad script in the stack. |
| </summary> |
| </metric> |
| <metric name="DidWindowOpenFromAdSubframe"> |
| <summary> |
| True if the page called window.open() from an ad subframe. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AbusiveExperienceHeuristic.JavaScriptDialog"> |
| <owner>yaoxia@chromium.org</owner> |
| <metric name="DismissalCause"> |
| <summary> |
| An enum that specifies the dismissal reason for JavaScript popup dialog |
| that can be triggered by window.alert(), window.confirm() or |
| window.prompt(). See JavaScriptDialogTabHelper::DismissalCause for the |
| enum elements. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AbusiveExperienceHeuristic.TabUnder"> |
| <owner>csharrison@chromium.org</owner> |
| <metric name="DidTabUnder"> |
| <summary> |
| True if the page attempted a tab-under navigation. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AbusiveExperienceHeuristic.WindowOpen"> |
| <owner>yaoxia@chromium.org</owner> |
| <summary> |
| Recorded whenever window.open() is called when AdTagging is enabled. |
| </summary> |
| <metric name="FromAdScript"> |
| <summary> |
| True if the page called window.open() with an ad script in the stack. |
| </summary> |
| </metric> |
| <metric name="FromAdSubframe"> |
| <summary> |
| True if the page called window.open() from an ad subframe. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Accessibility.ImageDescriptions"> |
| <owner>dtseng@chromium.org</owner> |
| <owner>nektar@chromium.org</owner> |
| <summary> |
| Tracks automatic image descriptions provided to blind users. |
| </summary> |
| <metric name="Description" enum="Boolean"> |
| <summary> |
| Whether the image description included a description. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ImageAlreadyHasLabel" enum="Boolean"> |
| <summary> |
| Whether the image already had label text before it was augmented with an |
| additional description. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="OCR" enum="Boolean"> |
| <summary> |
| Whether the image description included OCR text. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Accessibility.PageZoom"> |
| <owner>aldietz@google.com</owner> |
| <owner>mschillaci@google.com</owner> |
| <owner>chrome-a11y-core@google.com</owner> |
| <summary> |
| Tracks usage of Page Zoom on Chrome for Android. Recorded each time the |
| slider is dismissed if the user changed the zoom level on this page before |
| dismissal. |
| </summary> |
| <metric name="SliderZoomValue"> |
| <summary> |
| For users who changed the individual zoom level on this page, tracks what |
| zoom level has been set on the page at slider dismissal. There may be |
| multiple instances where the slider is opened on the same page, so there |
| may be multiple values logged per page. The value will be an integer |
| between 25 and 500, inclusive, bucketed in intervals of 5. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Accessibility.Renderer"> |
| <owner>aleventhal@chromium.org</owner> |
| <owner>nektar@chromium.org</owner> |
| <summary> |
| Tracks the amount of time sending accessibility events from web renderers. |
| </summary> |
| <metric name="CpuTime.SendPendingAccessibilityEvents"> |
| <summary> |
| The amount of time spent in |
| RenderAccessibilityImpl.SendPendingAccessibilityEvents |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Accessibility.ScreenAI"> |
| <owner>abigailbklein@google.com</owner> |
| <owner>rhalavati@google.com</owner> |
| <owner>kyungjunlee@google.com</owner> |
| <summary> |
| Records the time taken to distill a web page. |
| </summary> |
| <metric name="Screen2xDistillationTime.Failure"> |
| <summary> |
| The amount of time (ms) required to distill a web page if distillation |
| failed. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Screen2xDistillationTime.Success"> |
| <summary> |
| The amount of time (ms) required to distill a web page if distillation |
| succeeded. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="AccuracyTipDialog"> |
| <obsolete> |
| Deprecated as of 12/2022. |
| </obsolete> |
| <owner>dullweber@chromium.org</owner> |
| <owner>eokoyomon@chromium.org</owner> |
| <summary> |
| Recorded when an action on the accuracy tip dialog is taken. |
| </summary> |
| <metric name="Interaction" enum="AccuracyTipInteraction"> |
| <summary> |
| Records an enum value representing which action in the accuracy tip was |
| taken. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TimeSpent"> |
| <summary> |
| The amount of time spent on the dialog until it was closed. In seconds. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="AccuracyTipStatus"> |
| <obsolete> |
| Deprecated as of 12/2022. |
| </obsolete> |
| <owner>dullweber@chromium.org</owner> |
| <owner>eokoyomon@chromium.org</owner> |
| <summary> |
| Recorded on each page load when the AccuracyService determines whether an |
| accuracy tip should be shown or the reason why it was not shown. |
| </summary> |
| <metric name="Status" enum="AccuracyTipStatus"> |
| <summary> |
| The accuracy tip status that was determined for a pageload. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="AdFrameLoad"> |
| <owner>johnidel@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| Records metrics associated with a single ad frame for a page load. An ad |
| frame includes itself and all of its child frames. Only recorded for frames |
| with non-zero bytes. Recorded when a page is destroyed or when the app is |
| backgrounded on mobile. |
| </summary> |
| <metric name="CpuTime.PeakWindowedPercent"> |
| <summary> |
| The peak percentage of CPU utilization attributed to the frame in any 30 |
| second window prior to user activation. Frames that exist for less than 30 |
| seconds still use 30 seconds as the denominator for the calculation. |
| </summary> |
| </metric> |
| <metric name="CpuTime.PreActivation"> |
| <summary> |
| Wall time of tasks attributed to the frame after the frame received user |
| activation. Measured in millseconds. |
| </summary> |
| </metric> |
| <metric name="CpuTime.Total"> |
| <summary> |
| Total wall time of tasks attributed to the frame. Measured in |
| milliseconds. |
| </summary> |
| </metric> |
| <metric name="FrameDepth"> |
| <summary> |
| The depth of this frame's frame tree. There is no set limit on a frame's |
| maximum depth. |
| </summary> |
| </metric> |
| <metric name="Loading.CacheBytes"> |
| <obsolete> |
| Deprecated 09/2019. Replaced with Loading.CacheBytes2. |
| </obsolete> |
| <summary> |
| Bytes loaded from the cache for all resources loaded within the frame. |
| This is rounded down to the nearest exponential bucket (with a bucket |
| ratio of 1.3). |
| </summary> |
| </metric> |
| <metric name="Loading.CacheBytes2"> |
| <summary> |
| Bytes loaded from the cache for all resources loaded within the frame. |
| This includes bytes loaded from both the HTTP cache and memory cache. This |
| is rounded down to the nearest exponential bucket (with a bucket ratio of |
| 1.3). |
| </summary> |
| </metric> |
| <metric name="Loading.ImageBytes"> |
| <summary> |
| Network bytes loaded for resources with an image mime type within the |
| frame. Includes header bytes. This is rounded down to the nearest |
| exponential bucket (with a bucket ratio of 1.3). |
| </summary> |
| </metric> |
| <metric name="Loading.JavascriptBytes"> |
| <summary> |
| Network bytes loaded for resources with a javascript mime type within the |
| frame. Includes header bytes. This is rounded down to the nearest |
| exponential bucket (with a bucket ratio of 1.3). |
| </summary> |
| </metric> |
| <metric name="Loading.NetworkBytes"> |
| <summary> |
| Network bytes loaded for all resources within the frame. Includes header |
| bytes. This is rounded down to the nearest exponential bucket (with a |
| bucket ratio of 1.3). |
| </summary> |
| </metric> |
| <metric name="Loading.NumResources"> |
| <summary> |
| Total number of resources loaded by the frame, including incomplete |
| resources. |
| </summary> |
| </metric> |
| <metric name="Loading.VideoBytes"> |
| <summary> |
| Network bytes loaded for resources with a video/ mime type within the |
| frame. Includes header bytes. This is rounded down to the nearest |
| exponential bucket (with a bucket ratio of 1.3). |
| </summary> |
| </metric> |
| <metric name="Status.CrossOrigin"> |
| <summary> |
| An enum representing whether the frame was Cross-Origin or Same-Origin to |
| its parent frame. See FrameData::OriginStatus. |
| </summary> |
| </metric> |
| <metric name="Status.Media"> |
| <summary> |
| An enum representing whether media was played in the frame. See |
| FrameData::MediaStatus. |
| </summary> |
| </metric> |
| <metric name="Status.UserActivation"> |
| <summary> |
| An enum representing whether the frame received user activation. See |
| FrameData::UserActivationStatus. |
| </summary> |
| </metric> |
| <metric name="Timing.FirstContentfulPaint"> |
| <summary> |
| Number of milliseconds before FirstContentfulpaint was reached in the |
| frame. This is relative to subframe navigation start. |
| </summary> |
| </metric> |
| <metric name="Timing.Interactive"> |
| <summary> |
| Number of millseconds before Time-To-Interactive was reached in the frame. |
| This is relative to subframe navigation start. |
| </summary> |
| </metric> |
| <metric name="Timing.PreActivationForegroundDuration"> |
| <obsolete> |
| Deprecated 07/2020. |
| </obsolete> |
| <summary> |
| Number of millseconds that the current web contents spent in the |
| foreground prior to the frame receiving user activation. |
| </summary> |
| </metric> |
| <metric name="Visibility.FrameHeight"> |
| <summary> |
| Last known height of the iframe in pixels. Not reported accurately when |
| "Visibility.Hidden" is true. This is rounded down to the nearest |
| exponential bucket (with a bucket ratio of 1.15). |
| </summary> |
| </metric> |
| <metric name="Visibility.FrameWidth"> |
| <summary> |
| Last known width of the iframe in pixels. Not reported accurately when |
| "Visibility.Hidden" is true. This is rounded down to the nearest |
| exponential bucket (with a bucket ratio of 1.15). |
| </summary> |
| </metric> |
| <metric name="Visibility.Hidden"> |
| <summary> |
| A 0 or 1 values representing whether the frame had a display=none styling |
| set. Records the last known value. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AdPageLoad" singular="True"> |
| <owner>johnidel@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| Recorded when a page has loaded non-zero ad bytes, and the page is being |
| destroyed/navigated. |
| </summary> |
| <metric name="AdBytes"> |
| <summary> |
| Amount of network bytes used to load ad resource on the page. Includes |
| resources that did not finish, and top-level ads. Measured in kilobytes. |
| </summary> |
| </metric> |
| <metric name="AdBytesPerSecond"> |
| <obsolete> |
| Deprecated 01/2020. |
| </obsolete> |
| <summary> |
| Amount of network bytes used to load ad resources on the page, per second |
| the page was alive after commit. Measured in kilobytes per second. |
| </summary> |
| </metric> |
| <metric name="AdBytesPerSecondAfterInteractive"> |
| <obsolete> |
| Deprecated 01/2020. |
| </obsolete> |
| <summary> |
| Amount of network bytes used to load ad resources on the page per second |
| after the page was interactive. Measured in kilobytes. |
| </summary> |
| </metric> |
| <metric name="AdCpuTime"> |
| <summary> |
| Amount of CPU wall time inside of ad iframes over the duration of a page |
| load, while the page is in the foreground. Measured in milliseconds. |
| </summary> |
| </metric> |
| <metric name="AdJavascriptBytes"> |
| <summary> |
| Amount of network bytes used to load ad resources with a supported |
| javascript mime type on the page. Measured in kilobytes. |
| </summary> |
| </metric> |
| <metric name="AdVideoBytes"> |
| <summary> |
| Amount of network bytes used to load ad resources with a video mime type |
| on the page. Measured in kilobytes. |
| </summary> |
| </metric> |
| <metric name="MainframeAdBytes"> |
| <summary> |
| Amount of network bytes used to load ad resources in the main frame. |
| Includes resources that did not finish but does not include resources in |
| subframes. Measured in bytes. This is rounded to the nearest exponential |
| bucket (with a bucket ratio of 1.3). |
| </summary> |
| </metric> |
| <metric name="MaxAdDensityByArea"> |
| <summary> |
| The estimated maximum density of ads on a page by area. Calculated as the |
| area of ads on the page * 100 / page area. This counts each overlapping |
| area once, it may be inaccurate due to updates and calculations being |
| throttled. |
| </summary> |
| </metric> |
| <metric name="MaxAdDensityByHeight"> |
| <summary> |
| The estimated maximum density of ads on a page by height. Calculated as |
| the combined height of ads on the page * 100 / page height. This counts |
| each overlapping area once, it may be inaccurate due to updates and |
| calculations being throttled. |
| </summary> |
| </metric> |
| <metric name="TotalBytes"> |
| <summary> |
| Amount of network bytes used to load resources on the page. Includes |
| resources that did not finish. Measured in kilobytes. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AdPageLoadCustomSampling" singular="True"> |
| <obsolete> |
| Removed 2022/10 in favor of AdPageLoadCustomSampling2 |
| </obsolete> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>johnidel@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| Recorded when a page has loaded non-zero ad bytes, and the page is being |
| destroyed/navigated away or when the app enters the background on mobile. |
| This is separate from the `AdPageLoad` event to allow a potentially |
| different sampling. |
| </summary> |
| <metric name="AverageViewportAdDensity"> |
| <summary> |
| The estimated average viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the average |
| of the densities accumulated over the page load time rounded to the |
| nearest integer. |
| </summary> |
| </metric> |
| <metric name="KurtosisViewportAdDensity"> |
| <summary> |
| The estimated kurtosis of the viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the kurtosis |
| of the densities accumulated over the page load time rounded to the |
| nearest exponential bucket integer with bucket spacing 1.3. For negative |
| values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| <metric name="SkewnessViewportAdDensity"> |
| <summary> |
| The estimated skewness of the viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the skewness |
| of the densities accumulated over the page load time rounded to the |
| nearest exponential bucket integer with bucket spacing 1.3. For negative |
| values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| <metric name="VarianceViewportAdDensity"> |
| <summary> |
| The estimated variance of the viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the variance |
| of the densities accumulated over the page load time rounded to the |
| nearest exponential bucket integer with bucket spacing 1.3. For negative |
| values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AdPageLoadCustomSampling2" singular="True"> |
| <obsolete> |
| Removed 2022/12 in favor of AdPageLoadCustomSampling3 |
| </obsolete> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>johnidel@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| Recorded when the page is being destroyed/navigated away or when the app |
| enters the background on mobile. This is separate from the `AdPageLoad` |
| event to allow it to be recorded on all pages (i.e. not only pages that have |
| loaded non-zero ad byte), and to allow a potentially different sampling. |
| </summary> |
| <metric name="AverageViewportAdDensity"> |
| <summary> |
| The estimated average viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the average |
| of the densities accumulated over the page load time rounded to the |
| nearest integer. |
| </summary> |
| </metric> |
| <metric name="KurtosisViewportAdDensity"> |
| <summary> |
| The estimated kurtosis of the viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the kurtosis |
| of the densities accumulated over the page load time rounded to the |
| nearest exponential bucket integer with bucket spacing 1.3. For negative |
| values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| <metric name="SkewnessViewportAdDensity"> |
| <summary> |
| The estimated skewness of the viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the skewness |
| of the densities accumulated over the page load time rounded to the |
| nearest exponential bucket integer with bucket spacing 1.3. For negative |
| values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| <metric name="VarianceViewportAdDensity"> |
| <summary> |
| The estimated variance of the viewport ad density. Each density value is |
| calculated as the area of ads within the viewport * 100 / viewport area, |
| where each overlapping area is counted once. And this returns the variance |
| of the densities accumulated over the page load time rounded to the |
| nearest exponential bucket integer with bucket spacing 1.3. For negative |
| values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AdPageLoadCustomSampling3" singular="True"> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>johnidel@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| Recorded when the page is being destroyed/navigated away or when the app |
| enters the background on mobile. This is separate from the `AdPageLoad` |
| event to allow it to be recorded on all pages (i.e. not only pages that have |
| loaded non-zero ad byte), and to allow a potentially different sampling. |
| Both iframe and img ads are covered. |
| </summary> |
| <metric name="AverageViewportAdDensity"> |
| <summary> |
| The estimated average viewport ad density. Each density value is |
| calculated as the area of (iframe and img) ads within the viewport * 100 / |
| viewport area, where each overlapping area is counted once. And this |
| returns the average of the densities accumulated over the page load time |
| rounded to the nearest integer. |
| </summary> |
| </metric> |
| <metric name="KurtosisViewportAdDensity"> |
| <summary> |
| The estimated kurtosis of the viewport ad density. Each density value is |
| calculated as the area of (iframe and img) ads within the viewport * 100 / |
| viewport area, where each overlapping area is counted once. And this |
| returns the kurtosis of the densities accumulated over the page load time |
| rounded to the nearest exponential bucket integer with bucket spacing 1.3. |
| For negative values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| <metric name="SkewnessViewportAdDensity"> |
| <summary> |
| The estimated skewness of the viewport ad density. Each density value is |
| calculated as the area of (iframe and img) ads within the viewport * 100 / |
| viewport area, where each overlapping area is counted once. And this |
| returns the skewness of the densities accumulated over the page load time |
| rounded to the nearest exponential bucket integer with bucket spacing 1.3. |
| For negative values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| <metric name="VarianceViewportAdDensity"> |
| <summary> |
| The estimated variance of the viewport ad density. Each density value is |
| calculated as the area of (iframe and img) ads within the viewport * 100 / |
| viewport area, where each overlapping area is counted once. And this |
| returns the variance of the densities accumulated over the page load time |
| rounded to the nearest exponential bucket integer with bucket spacing 1.3. |
| For negative values, the bucketing will be taken on its magnitude part. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AdsInterestGroup.AuctionLatency"> |
| <owner>orrb@google.com</owner> |
| <owner>chrome-ads-core@google.com</owner> |
| <summary> |
| Captures latency-relevant metrics associated with a single FLEDGE auction. |
| Many of these metrics are latency measurements, aggregated (mean/max) for |
| parts of the auction flow that happen multiple times in an auction, e.g. |
| calls to GenerateBid. Others are potentially latency-impacting measures of |
| the auction, e.g. the number of InterestGroups, buyers, component auctions, |
| bids that were scored either together or separately for the enforced and |
| non-enforced KAnon modes. Finally, some of these metrics look at points in |
| the auction flow where multiple inputs come together to assess which of |
| these inputs most frequently appears on the latency critical path. |
| </summary> |
| <metric name="EndToEndLatencyInMillis"> |
| <summary> |
| Time in ms between AdAuctionServiceImpl::RunAdAuction and |
| AdAuctionServiceImpl::OnAuctionComplete. Roughly equivalent to UMA metric, |
| Ads.InterestGroup.Auction.AuctionWithWinnerTime. |
| </summary> |
| </metric> |
| <metric name="KAnonymityBidMode" enum="KAnonymityBidMode"> |
| <summary> |
| Indicates the KAnonymityBidMode used for this auction. |
| </summary> |
| </metric> |
| <metric name="LoadInterestGroupPhaseLatencyInMillis"> |
| <summary> |
| The latency in milliseconds between the initial call to |
| InterestGroupAuction::StartLoadInterestGroupsPhase (not the recursive |
| calls issued for component auctions in a multi-seller auction), and the |
| call to AuctionRunner::OnLoadInterestGroupsComplete. This is related to |
| UMA metric, Ads.InterestGroup.Auction.LoadGroupsTime, except that, in a |
| multi-seller auction, the UMA metric is recorded once per component |
| auction and then again for the top-level auction, whereas this metric is |
| recorded only once, for the top-level auction. This metric also isn't |
| limited to those cases where there were InterestGroups to load, Since we |
| can independently filter this based on the value of NumInterestGroups. |
| </summary> |
| </metric> |
| <metric name="MaxBidForOneInterestGroupLatencyInMillis"> |
| <summary> |
| Aggregated across all components for a multi-seller auctions, this records |
| the max latency in millis between BuyerHelper::StartGeneratingBids and |
| BuyerHelper::OnGenerateBidComplete, counting each BidState once. As such, |
| this includes starting the BidderWorklet in that latency. This latency |
| window is intentionally terminated in OnGenerateBidComplete, and not in |
| OnGenerateBidCompleteInternal, so that this *excludes* bids filtered |
| during reprioritization, as well as those that failed because of some |
| fatal error, except that we explicitly *include* those that timed out. |
| </summary> |
| </metric> |
| <metric name="MaxComponentAuctionLatencyInMillis"> |
| <summary> |
| Only for multi-seller auctions, this is the highest latency of the bidding |
| and scoring phase, observed across all of the component auctions. This |
| latency is measured as the time between the call to |
| StartBiddingAndScoringPhase and the call to OnComponentAuctionComplete. |
| This metric only has a value for entries that represent multi-seller |
| auctions, as indicated by a value for the NumSellersWithBidders metric of |
| two or greater. |
| </summary> |
| </metric> |
| <metric name="MaxGenerateSingleBidLatencyInMillis"> |
| <summary> |
| Aggregated across all components for a multi-seller auctions, this records |
| the max latency in millis of calls to GenerateSingleBid. This is related |
| to UMA metric, Ads.InterestGroup.Auction.GenerateBidTime, except that it's |
| already aggregated across all GenerateSingleBid calls for this auction. |
| Like the UMA metric, this measures each distinct call to |
| GenerateSingleBid, for which there could be two for a given InterestGroup, |
| one that satisfies the kAnon threshold, and one that doesn't. |
| </summary> |
| </metric> |
| <metric name="MeanBidForOneInterestGroupLatencyInMillis"> |
| <summary> |
| Aggregated across all components for a multi-seller auctions, this records |
| the mean latency in millis between BuyerHelper::StartGeneratingBids and |
| BuyerHelper::OnGenerateBidComplete, counting each BidState once. As such, |
| this includes starting the BidderWorklet in that latency. This latency |
| window is intentionally terminated in OnGenerateBidComplete, and not in |
| OnGenerateBidCompleteInternal, so that this *excludes* bids filtered |
| during reprioritization, as well as those that failed because of some |
| fatal error, except that we explicitly *include* those that timed out. |
| </summary> |
| </metric> |
| <metric name="MeanComponentAuctionLatencyInMillis"> |
| <summary> |
| Only for multi-seller auctions, this is the mean latency of the bidding |
| and scoring phase, aggregated across each of the component auctions. This |
| latency is measured as the time between the call to |
| StartBiddingAndScoringPhase and the call to OnComponentAuctionComplete. |
| This metric only has a value for entries that represent multi-seller |
| auctions, as indicated by a value for the NumSellersWithBidders metric of |
| two or greater. |
| </summary> |
| </metric> |
| <metric name="MeanGenerateSingleBidLatencyInMillis"> |
| <summary> |
| Aggregated across all components for a multi-seller auctions, this records |
| the mean latency in millis of calls to GenerateSingleBid. This is related |
| to UMA metric, Ads.InterestGroup.Auction.GenerateBidTime, except that it's |
| already aggregated across all GenerateSingleBid calls for this auction. |
| Like the UMA metric, this measures each distinct call to |
| GenerateSingleBid, for which there could be two for a given InterestGroup, |
| one that satisfies the kAnon threshold, and one that doesn't. |
| </summary> |
| </metric> |
| <metric name="NumBidderWorklets"> |
| <summary> |
| The number of distinct BidderWorklets. Interest groups with the same owner |
| can only share worklets if they have the same bidding script URL and KV |
| server URL. As such, we might observe a non-standard setup in which, for |
| example, a buyer has used a different bidding script URL for each |
| InterestGroup, causing performance issues because of the fragmentation of |
| BidderWorklets. BidderWorklets are shared across component auctions, and |
| this measure counts the number of distinct BidderWorklets used within the |
| scope of the scope of an entire auction, either single- or multi-seller. |
| This may imply that the number of BidderWorklets created in the context of |
| this auction is actually less than this number, because of reuse. However, |
| it also means that this metric can be compared against the |
| NumDistinctOwnersWithInterestGroups metric, which (unlike |
| NumOwnersWithInterestGroups) counts each buyer involved in a multi-seller |
| auction once, even if that buyer participates in multiple components. |
| </summary> |
| </metric> |
| <metric name="NumBidsAbortedByBidderWorkletFatalError"> |
| <summary> |
| Total number of bids aborted because the BidderWorklet encountered a fatal |
| error, such as a crash, a JS fetch error, or any other fatal error - |
| excluding timeouts, which are counted by the metric below - aggregated |
| across all Owners and component auctions. |
| </summary> |
| </metric> |
| <metric name="NumBidsAbortedByBuyerCumulativeTimeout"> |
| <summary> |
| Total number of InterestGroups aborted because the per-buyer cumulative |
| timeout was reached, aggregated across all Owners and component auctions. |
| </summary> |
| </metric> |
| <metric name="NumBidsFilteredByPerBuyerLimits"> |
| <summary> |
| Total number of InterestGroups filtered as per-buyer limits are applied, |
| aggregated across all Owners and component auctions. |
| </summary> |
| </metric> |
| <metric name="NumBidsFilteredDuringInterestGroupLoad"> |
| <summary> |
| Total number of InterestGroups filtered based on priority during the |
| loading of InterestGroups, aggregated across all Owners and component |
| auctions. This specifically excludes InterestGroups filtered during load |
| for other reasons, such as failing to satisfy requested seller |
| capabilities. |
| </summary> |
| </metric> |
| <metric name="NumBidsFilteredDuringReprioritization"> |
| <summary> |
| Total number of InterestGroups filtered during bid reprioritization, which |
| happens once bidding signals are available, aggregated across all Owners |
| and component auctions. Related to UMA metric, |
| Ads.InterestGroup.Auction.BidFiltered, except that it's aggregated. To |
| determine the fraction of bids filtered, compare this against the |
| NumInterestGroups metric. |
| </summary> |
| </metric> |
| <metric name="NumDistinctOwnersWithInterestGroups"> |
| <summary> |
| The number of buyers with InterestGroups participating in an auction, |
| aggregated across all component auctions. This number excludes buyers with |
| no ads or no script URL, and also those filtered because the priority for |
| all InterestGroups calculated in the BuyerHelper constructor was negative. |
| Unlike NumOwnersWithInterestGroups, it only counts each buyer once, even |
| if it appears in multiple component auctions of a multi-seller auction. |
| Also unlike NumOwnersWithInterestGroups, this metric has a value even if |
| there are no bidders eligible to participate in this auction, though, in |
| this case, that value is likely to be zero. |
| </summary> |
| </metric> |
| <metric name="NumInterestGroups"> |
| <summary> |
| Total number of InterestGroups aggregated across all owners and component |
| auctions, equivalent to UMA metric, |
| Ads.InterestGroup.Auction.NumInterestGroups. This is the number of |
| InterestGroups loaded, before per-buyer limits are applied. Excluded from |
| this (and all other metrics counting InterestGroups) are InterestGroups |
| that are incapable of participating in an auction, e.g. those with no |
| bidding logic URLs, or with no ads. No value is defined for this metric if |
| there are no bidders eligible to participate in this auction. |
| </summary> |
| </metric> |
| <metric name="NumInterestGroupsWithNoBids"> |
| <summary> |
| Number of instances in which the BidderWorklet doesn't bid, maybe because |
| it failed to load or crashed. Because there's no bid, ScoreAd won't be |
| called for these. |
| </summary> |
| </metric> |
| <metric name="NumInterestGroupsWithOnlyNonKAnonBid"> |
| <summary> |
| Number of instances in which the BidderWorklet only generates one bid. If |
| the KAnonymityBidMode is Simulate or Enforce, this means that the |
| InterestGroup's top generated bid didn't satisfy the kAnonymity threshold, |
| and no separate bid could be generated that did satisfy the kAnonymity |
| threshold. If the KAnonymityBidMode is None, this just means that a bid |
| was successfully generated. For each of these, ScoreAd will be called |
| once. |
| </summary> |
| </metric> |
| <metric name="NumInterestGroupsWithSameBidForKAnonAndNonKAnon"> |
| <summary> |
| Number of instances in which an InterestGroup's top generated bid did |
| satisfy the kAnonymity threshold, and so no separate bid was needed. For |
| each of these, ScoreAd will be called once. If the KAnonymityBidMode is |
| None, this metric will be 0, because there won't be a separate kAnon bid. |
| </summary> |
| </metric> |
| <metric name="NumInterestGroupsWithSeparateBidsForKAnonAndNonKAnon"> |
| <summary> |
| Number of instances in which an InterestGroup's top generated bid didn't |
| satisfy the kAnonymity threshold, and a separate bid was generated that |
| did satisfy the kAnonymity threshold. For each of these, ScoreAd will be |
| called twice, once for each of these bids, which has latency and |
| performance implications. If the KAnonymityBidMode is None, this metric |
| will be 0, because there won't be a separate kAnon bid. |
| </summary> |
| </metric> |
| <metric name="NumOwnersWithInterestGroups"> |
| <summary> |
| The number of buyers with InterestGroups participating in an auction, |
| aggregated across all component auctions. Equivalent to UMA metric, |
| Ads.InterestGroup.Auction.NumInterestGroups. This number excludes buyers |
| with no ads or no script URL, and also those filtered because the priority |
| for all InterestGroups calculated in the BuyerHelper constructor was |
| negative. However, it counts a buyer repeatedly for each component auction |
| that buyer participates in. No value is defined for this metric if there |
| are no bidders eligible to participate in this auction. |
| </summary> |
| </metric> |
| <metric name="NumSellersWithBidders"> |
| <summary> |
| This is either the number of component auctions *plus one* for a |
| multi-seller auction, or 1 for a single-seller auction. Equivalent to UMA |
| metric, Ads.InterestGroup.Auction.NumSellersWithBidders. No value is |
| defined for this metric if there are no bidders eligible to participate in |
| this auction. |
| </summary> |
| </metric> |
| <metric name="Result" enum="AuctionResult"> |
| <summary> |
| How the auction concluded, whether that's successfully selecting an ad to |
| be shown, or finding no InterestGroups to load, or getting no bids that |
| outbid the contextual bid, or any other outcome. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AdsIntervention.LastIntervention" singular="True"> |
| <owner>yaoxia@google.com</owner> |
| <owner>chrome-ads-core@google.com</owner> |
| <summary> |
| Recorded after computing the subresource filter activation for a page at |
| process response time during navigation. This is only recorded when there |
| has previously been an ads intervention triggered on the page within the |
| site data's lifetime (currently 7 days). Clearing site data will reset |
| intervention information. |
| </summary> |
| <metric name="InterventionStatus" enum="AdsInterventionStatus"> |
| <summary> |
| Records the status of the ads intervention, whether the intervention lead |
| to subresource filter activation, measured during page load. |
| </summary> |
| </metric> |
| <metric name="InterventionType" enum="AdsViolations"> |
| <summary> |
| Records the last measured intervention recorded for the page, measured |
| during page load. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AmpPageLoad" singular="True"> |
| <owner>sullivan@chromium.org</owner> |
| <metric name="MainFrameAmpPageLoad"> |
| <summary> |
| True if the page loaded in the main frame is an AMP document (has an amp |
| attribute in the html element). Will not be recorded for non-AMP frames. |
| Note that most AMP documents are loaded in a subframe from a reader like |
| Google Search; this metric measures sites that are using AMP as a |
| site-wide framework and not a reader experience. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.AverageUserInteractionLatencyOverBudget.MaxEventDuration2"> |
| <summary> |
| The average value of user interaction latency above budget of a page load |
| in AMP subframes, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.MaxEventDuration and we |
| deduct a budget from the original value. If the latency value is below the |
| budget, it will be treated as 0 ms. Each type of interaction has its own |
| budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.AverageUserInteractionLatencyOverBudget.TotalEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The average value of user interaction latency above budget of a page load |
| in AMP subframes, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.TotalEventDuration and we |
| deduct a budget from the original value. If the latency value is below the |
| budget, it will be treated as 0 ms. Each type of interaction has its own |
| budget. |
| </summary> |
| </metric> |
| <metric name="SubFrame.InteractiveTiming.FirstInputDelay3"> |
| <obsolete> |
| Removed July 2019 in favor of FirstInputDelay4. |
| </obsolete> |
| <summary> |
| Measures First Input Delay, the duration between the hardware timestamp |
| and the start of event processing on the main thread for the first |
| meaningful input per navigation, in the AMP subframe. See |
| https://goo.gl/tr1oTZ for a detailed explanation. In milliseconds. |
| </summary> |
| </metric> |
| <metric name="SubFrame.InteractiveTiming.FirstInputDelay4"> |
| <summary> |
| Measures First Input Delay, the duration between the hardware timestamp |
| and the start of event processing on the main thread for the first |
| meaningful input per navigation, in the AMP subframe. See |
| https://goo.gl/tr1oTZ for a detailed explanation. In milliseconds. |
| </summary> |
| </metric> |
| <metric name="SubFrame.InteractiveTiming.NumInteractions"> |
| <summary> |
| The number of distinct user interactions in an AMP subframe. See |
| definition of user interaction: |
| https://web.dev/better-responsiveness-metric/#group-events-into-interactions |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile.MaxEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page load in AMP subframes, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile.TotalEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page load in AMP subframes, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile2.MaxEventDuration2"> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page load in AMP subframes, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile2.TotalEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page load in AMP subframes, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.SumOfUserInteractionLatencyOverBudget.MaxEventDuration2"> |
| <summary> |
| The sum of user interaction latency above budget of a page load in AMP |
| subframes, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.MaxEventDuration and we |
| deduct a budget from the original value. If the latency value is below the |
| budget, it will be treated as 0 ms. Each type of interaction has its own |
| budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.SumOfUserInteractionLatencyOverBudget.TotalEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The sum of user interaction latency above budget of a page load in AMP |
| subframes, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.TotalEventDuration and we |
| deduct a budget from the original value. If the latency value is below the |
| budget, it will be treated as 0 ms. Each type of interaction has its own |
| budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.UserInteractionLatency.HighPercentile2.MaxEventDuration"> |
| <summary> |
| An approximation of a high percentile of user interaction latency of an |
| AMP subframe, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.MaxEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.WorstUserInteractionLatency.MaxEventDuration2"> |
| <summary> |
| The maximum value of high percentile of user interaction latency above |
| budget of a page load in AMP subframes, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.WorstUserInteractionLatency.TotalEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of high percentile of user interaction latency above |
| budget of a page load in AMP subframes, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.WorstUserInteractionLatencyOverBudget.MaxEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency above budget of a page load |
| in AMP subframes, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.MaxEventDuration and we |
| deduct a budget from the original value. If the latency value is below the |
| budget, it will be treated as 0 ms. Each type of interaction has its own |
| budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.InteractiveTiming.WorstUserInteractionLatencyOverBudget.TotalEventDuration2"> |
| <obsolete> |
| Removed March 2022 in favor of |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency above budget of a page load |
| in AMP subframes, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.TotalEventDuration and we |
| deduct a budget from the original value. If the latency value is below the |
| budget, it will be treated as 0 ms. Each type of interaction has its own |
| budget. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.LayoutInstability.AverageCumulativeShiftScore.SessionWindow.Gap5000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the average cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, in the AMP subframe. The gap between two |
| consecutive shifts in a window is not bigger than 5000ms. This metric's |
| integral value is 100x the fractional cumulative layout shift score |
| described in the explainer. |
| </summary> |
| </metric> |
| <metric name="SubFrame.LayoutInstability.CumulativeShiftScore"> |
| <summary> |
| Deprecated as of 04/23. It is still reported, but most users should use |
| AmpPageLoad.SubFrame.LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms.Max5000ms. |
| |
| Measures the cumulative layout shift (bit.ly/lsm-explainer) that has |
| occurred during the session, in the AMP subframe. This metric's integral |
| value is 100x the fractional cumulative layout shift score described in |
| the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.LayoutInstability.CumulativeShiftScore.BeforeInputOrScroll"> |
| <summary> |
| Measures the cumulative layout shift (bit.ly/lsm-explainer) that has |
| occurred in the AMP subframe, before any user input or document scroll. |
| This metric's integral value is 100x the fractional cumulative layout |
| shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, in the AMP subframe. The gap between two |
| consecutive shifts in a window is not bigger than 1000ms. This metric's |
| integral value is 100x the fractional cumulative layout shift score |
| described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms.Max5000ms"> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, in the AMP subframe. The gap between two |
| consecutive shifts in a window is not bigger than 1000ms and the maximum |
| window size is 5000ms. This metric's integral value is 100x the fractional |
| cumulative layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.LayoutInstability.MaxCumulativeShiftScore.SessionWindowByInputs.Gap1000ms.Max5000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, in the AMP subframe. The gap between two |
| consecutive shifts in a window is not bigger than 1000ms and the maximum |
| window size is 5000ms. We start a new window whenever there's a user |
| input. This metric's integral value is 100x the fractional cumulative |
| layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.LayoutInstability.MaxCumulativeShiftScore.SlidingWindow.Duration1000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a 1000ms sliding window, in the AMP subframe. This |
| metric's integral value is 100x the fractional cumulative layout shift |
| score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.LayoutInstability.MaxCumulativeShiftScore.SlidingWindow.Duration300ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a 300ms sliding window, in the AMP subframe. This metric's |
| integral value is 100x the fractional cumulative layout shift score |
| described in the explainer. |
| </summary> |
| </metric> |
| <metric name="SubFrame.LayoutStability.JankScore"> |
| <obsolete> |
| Removed July 2019 in favor of |
| SubFrame.LayoutInstability.CumulativeShiftScore. |
| </obsolete> |
| <summary> |
| Measures the amount of layout jank (bit.ly/lsm-explainer) that has |
| occurred during the session, in the AMP subframe. This metric's integral |
| value is 100x the fractional jank score described in the explainer. |
| </summary> |
| </metric> |
| <metric name="SubFrame.MainFrameToSubFrameNavigationDelta"> |
| <summary> |
| Measures the time in milliseconds from the navigation in the main frame to |
| the navigation in the AMP subframe. Will be negative in cases where the |
| AMP subframe was prerendered. Will be positive in cases where the main |
| frame was a non-same-document navigation. Should be near-zero when the |
| main frame navigation is a same-document navigation and the AMP subframe |
| was not prerendered. |
| </summary> |
| </metric> |
| <metric name="SubFrame.MobileFriendliness.AllowUserZoom" enum="Boolean"> |
| <obsolete> |
| Deprecated 12/2022. |
| </obsolete> |
| <summary> |
| Whether the page allows the user to zoom in/out, in the AMP subframe. |
| </summary> |
| </metric> |
| <metric name="SubFrame.MobileFriendliness.BadTapTargetsRatio"> |
| <obsolete> |
| Deprecated 12/2022. |
| </obsolete> |
| <summary> |
| Percentage of tap targets whose center position is within another tap |
| target (expanded by a margin), in the AMP subframe. The detail of the |
| algorithm is go/bad-tap-target-ukm. If evaluation time budget exceeded, |
| this will be is -2. |
| </summary> |
| </metric> |
| <metric name="SubFrame.MobileFriendliness.SmallTextRatio"> |
| <obsolete> |
| Deprecated 12/2022. |
| </obsolete> |
| <summary> |
| Percentage of small font text area in total text area, in the AMP |
| subframe. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.MobileFriendliness.TextContentOutsideViewportPercentage"> |
| <obsolete> |
| Deprecated 12/2022. |
| </obsolete> |
| <summary> |
| Percentage of pixels of text and images horizontally outside the viewport, |
| relative to the frame width, in the AMP subframe. |
| </summary> |
| </metric> |
| <metric name="SubFrame.MobileFriendliness.ViewportDeviceWidth" enum="Boolean"> |
| <obsolete> |
| Deprecated 12/2022. |
| </obsolete> |
| <summary> |
| Whether the width of the viewport is specified as device-width or not, in |
| the AMP subframe. |
| </summary> |
| </metric> |
| <metric name="SubFrame.MobileFriendliness.ViewportHardcodedWidth"> |
| <obsolete> |
| Deprecated 12/2022. |
| </obsolete> |
| <summary> |
| Specified hardcoded viewport width in CSS pixels, in the AMP subframe. |
| </summary> |
| </metric> |
| <metric name="SubFrame.MobileFriendliness.ViewportInitialScaleX10"> |
| <obsolete> |
| Deprecated 12/2022. |
| </obsolete> |
| <summary> |
| Specified initial viewport scaling, in the AMP subframe, multiplied by 10. |
| 1 means 0.1, 100 means 10. [1-100]. |
| </summary> |
| </metric> |
| <metric |
| name="SubFrame.PaintTiming.NavigationToExperimentalLargestContentfulPaint"> |
| <obsolete> |
| Replaced by SubFrame.PaintTiming.NavigationToLargestContentfulPaint2 on |
| Oct 2020. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the experimental largest |
| content (text or image) within viewport, in the AMP subframe. See |
| http://bit.ly/largest_contentful_paint_explainer for more details. Differs |
| from the non-experimental version in that removed content is still |
| considered a valid candidate. |
| </summary> |
| </metric> |
| <metric name="SubFrame.PaintTiming.NavigationToFirstContentfulPaint"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints content, in the AMP subframe. |
| A contentful paint includes a paint of text, image, SVG, or canvas. |
| </summary> |
| </metric> |
| <metric name="SubFrame.PaintTiming.NavigationToFirstPaint"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time the first paint is performed, in the AMP subframe. |
| </summary> |
| </metric> |
| <metric name="SubFrame.PaintTiming.NavigationToLargestContentfulPaint"> |
| <obsolete> |
| Replaced by SubFrame.PaintTiming.NavigationToLargestContentfulPaint2. No |
| longer reported from Nov 2021. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, in the AMP subframe. See |
| http://bit.ly/largest_contentful_paint_explainer for more details. Note: |
| Will be replaced by |
| SubFrame.PaintTiming.NavigationToLargestContentfulPaint2. |
| </summary> |
| </metric> |
| <metric name="SubFrame.PaintTiming.NavigationToLargestContentfulPaint2"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the experimental largest |
| content (text or image) within viewport, in the AMP subframe. See |
| http://bit.ly/largest_contentful_paint_explainer for more details. Differs |
| from SubFrame.PaintTiming.NavigationToLargestContentfulPaint in that |
| removed content is still considered a valid candidate. |
| </summary> |
| </metric> |
| <metric name="SubFrame.PaintTiming.NavigationToLargestContentPaint"> |
| <obsolete> |
| Deprecated 7/2019 |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, in the AMP subframe. See |
| http://bit.ly/largest_contentful_paint_explainer for more details. |
| </summary> |
| </metric> |
| <metric name="SubFrameAmpPageLoad"> |
| <summary> |
| True if the page loaded in any subframe is an AMP document (has an amp |
| attribute in the html element). Will not be recorded for non-AMP frames. |
| Note that most AMP documents are loaded in a subframe from a reader like |
| Google Search; this metric measures usage of such readers. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Android.DarkTheme.AutoDarkMode"> |
| <owner>nemco@google.com</owner> |
| <owner>wenyufu@chromium.org</owner> |
| <summary> |
| Recorded when the user changes auto-dark theming for a site through the app |
| menu. |
| </summary> |
| <metric name="DisabledByUser" enum="Boolean"> |
| <summary> |
| A boolean signaling that auto-dark theming has been disabled. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Android.MultiWindowChangeActivity"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Records when the activity enter or exit Android N+ multi-window mode. |
| </summary> |
| <metric name="ActivityType" enum="AndroidMultiWindowActivityType"> |
| <summary> |
| Enter or exit the multi-window mode. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Android.MultiWindowState"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Records the multi window state when the activity is shown. |
| </summary> |
| <metric name="WindowState" enum="AndroidMultiWindowState"> |
| <summary> |
| The state of the multi-window mode, single or multi-window. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Android.NonDefaultRdsPageLoad"> |
| <owner>shuyng@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <summary> |
| Records on each page load when the User Agent is overridden with site |
| exception. |
| </summary> |
| <metric name="UserAgentType" enum="UserAgentRequestType"> |
| <summary> |
| An enum that records the type of user agent. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Android.ScreenRotation"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Records when a user rotates the device triggering a screen orientation |
| change. |
| </summary> |
| <metric name="TargetDeviceOrientation" enum="DeviceOrientation2"> |
| <summary> |
| The orientation of the device rotated to. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Android.UserRequestedUserAgentChange"> |
| <owner>gangwu@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <summary> |
| Records when a user pressed 'Request Desktop Site' in the app menu. |
| </summary> |
| <metric name="UserAgentType" enum="UserAgentRequestType"> |
| <summary> |
| An enum that records the type of user agent. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="AppListAppClickData"> |
| <owner>pdyson@chromium.org</owner> |
| <summary> |
| AppListAppClickData events contain click history metrics for an app. These |
| events are recorded when an app is launched from the launcher on ChromeOS, |
| but may be for an app different from the app launched. See event |
| AppListAppLaunch for more detail on the keys used. |
| </summary> |
| <metric name="AppLaunchId"> |
| <summary> |
| The ID of the app launch event. |
| </summary> |
| </metric> |
| <metric name="AppType"> |
| <summary> |
| The type of app. 1: CHROME, 2: PLAY, 3: PWA/Bookmark app. |
| </summary> |
| </metric> |
| <metric name="ClickRank"> |
| <summary> |
| Rank apps by total number of clicks. The app with the most clicks has rank |
| 1. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour00"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 12:00am and 1:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour01"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 1:00am and 2:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour02"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 2:00am and 3:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour03"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 3:00am and 4:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour04"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 4:00am and 5:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour05"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 5:00am and 6:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour06"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 6:00am and 7:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour07"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 7:00am and 8:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour08"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 8:00am and 9:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour09"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 9:00am and 10:00am. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour10"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 10:00am and 11:00am. Bucketing: values above 20 rounded down to |
| the nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour11"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 11:00am and 12:00pm. Bucketing: values above 20 rounded down to |
| the nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour12"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 12:00pm and 1:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour13"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 1:00pm and 2:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour14"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 2:00pm and 3:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour15"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 3:00pm and 4:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour16"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 4:00pm and 5:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour17"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 5:00pm and 6:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour18"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 6:00pm and 7:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour19"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 7:00pm and 8:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour20"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 8:00pm and 9:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour21"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 9:00pm and 10:00pm. Bucketing: values above 20 rounded down to the |
| nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour22"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 10:00pm and 11:00pm. Bucketing: values above 20 rounded down to |
| the nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksEachHour23"> |
| <summary> |
| The number of clicks on this app in the current session that occurred |
| between 11:00pm and 12:00am. Bucketing: values above 20 rounded down to |
| the nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksLast24Hours"> |
| <summary> |
| The number of clicks on this app in the last 24 hours. Accurate to 15 |
| minutes. Bucketing: values above 20 rounded down to the nearest 10. |
| Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="ClicksLastHour"> |
| <summary> |
| The number of clicks on this app in the last hour. Accurate to one minute. |
| Bucketing: values above 20 rounded down to the nearest 10. Maximum value |
| of 200. |
| </summary> |
| </metric> |
| <metric name="LastLaunchedFrom"> |
| <summary> |
| Where the app was last launched from. 1: GRID, 2: SUGGESTED, 3: SHELF. |
| </summary> |
| </metric> |
| <metric name="MostRecentlyUsedIndex"> |
| <summary> |
| Index recording when in the sequence of app launch clicks the app was last |
| clicked on. 0: most recent app clicked on, 1: app clicked immediately |
| before the most recent, etc. |
| </summary> |
| </metric> |
| <metric name="SequenceNumber"> |
| <summary> |
| The sequence number of the AppListAppLaunch event that corresponds to this |
| AppListAppClickData event. There will be six AppListAppClickData events |
| for each sequence number. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastClick"> |
| <summary> |
| Time since this app was last clicked on to launch. In seconds, bucketed: |
| [1, 59] to the nearest second, [60, 599] to the nearest minute, [600, |
| 1199] to the nearest 5 minutes, [1200, 3599] to the nearest 10 minutes, |
| [3600, 17999] to the nearest 30 minutes, [18000, 86400] to the nearest |
| hour. |
| </summary> |
| </metric> |
| <metric name="TotalClicks"> |
| <summary> |
| Total number of clicks launching this app in this sesion. Bucketing: |
| values above 20 rounded down to the nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AppListAppLaunch"> |
| <owner>pdyson@chromium.org</owner> |
| <summary> |
| Recorded when an app is launched from the launcher on ChromeOS. This can be |
| from the suggestion chip, or from the grid of apps. The UKM metrics are not |
| keyed by navigational urls. Instead, for Chrome apps the keys are based upon |
| the app id, for Play apps the keys are based upon a hash of the package name |
| and for PWAs the keys are the urls associated with the PWA. |
| </summary> |
| <metric name="AllClicksLast24Hours"> |
| <summary> |
| Total number of clicks launching logged apps in the last 24 hours. |
| Accurate to the nearest 15 minutes. Bucketing: values above 20 rounded |
| down to the nearest 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="AllClicksLastHour"> |
| <summary> |
| Total number of clicks launching logged apps in the last hour. Accurate to |
| the nearest minute. Bucketing: values above 20 rounded down to the nearest |
| 10. Maximum value of 200. |
| </summary> |
| </metric> |
| <metric name="AppType"> |
| <summary> |
| The type of app. 1: CHROME, 2: PLAY, 3: PWA/Bookmark app. |
| </summary> |
| </metric> |
| <metric name="ClickMethod"> |
| <summary> |
| Click method. 1: MOUSE, 2: TOUCH, 3: SYTLUS, 4: KEYBOARD. |
| </summary> |
| </metric> |
| <metric name="DayOfWeek"> |
| <summary> |
| An enum representing the day of the week that the data was logged in the |
| local time zone. Sunday = 0. |
| </summary> |
| </metric> |
| <metric name="DeviceMode"> |
| <summary> |
| The mode of the device. 1: CLOSED_LID (Lid is closed), 2: LAPTOP (Lid is |
| open, tablet mode off or unsupported) , 3: TABLET (Lid is open, tablet |
| mode on or no lid at all). |
| </summary> |
| </metric> |
| <metric name="DeviceType"> |
| <summary> |
| The type of the device. 1: TABLET, 2: LAPTOP. |
| </summary> |
| </metric> |
| <metric name="HourOfDay"> |
| <summary> |
| The hour of the day when the data is logged. Hours since midnight in the |
| local time zone. |
| </summary> |
| </metric> |
| <metric name="LaunchedFrom"> |
| <summary> |
| Where the app was launched from. 1: GRID, 2: SUGGESTED, 3: SHELF. |
| </summary> |
| </metric> |
| <metric name="PositionIndex"> |
| <summary> |
| The position of the app within the grid/suggested apps/shelf. 0 is the |
| first position. |
| </summary> |
| </metric> |
| <metric name="TotalHours"> |
| <summary> |
| Number of hours in the current session up to this event. Bucketing: |
| exponential buckets, increasing in size by 25%, rounded to the nearest |
| integer. i.e. 0, 1, 2, 3, 4, 5, 6, 7, 9, 12, 15, 18, 23, 28, 36, 44... |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="AppListNonAppImpression"> |
| <obsolete> |
| Deprecated March 2021. |
| </obsolete> |
| <owner>jiameng@chromium.org</owner> |
| <owner>thanhdng@chromium.org</owner> |
| <owner>tby@chromium.org</owner> |
| <summary> |
| Records details of impressions and launches of non-apps in the ChromeOS |
| launcher, such as files, omnibox results, and answer cards. |
| </summary> |
| <metric name="Category" enum="AppListNonAppImpressionCategory"> |
| <summary> |
| The kind of launcher item. Corresponds to the value of |
| ChromeSearchResult::result_[sub]type. |
| </summary> |
| </metric> |
| <metric name="DayOfWeek"> |
| <summary> |
| The day of the week that the event was logged on, in the local time zone. |
| Sunday is 0. |
| </summary> |
| </metric> |
| <metric name="DeviceMode" enum="AppListNonAppImpressionDeviceMode"> |
| <summary> |
| The mode of the device. |
| </summary> |
| </metric> |
| <metric name="EventId"> |
| <summary> |
| An ID linking together events within a single set of launcher search |
| results. One of these may be a launch, and the rest impressions. |
| </summary> |
| </metric> |
| <metric name="FileExtension" enum="AppListNonAppImpressionFileExtension"> |
| <summary> |
| An enum representing the file extension if this event represents a local |
| or DriveFS file. |
| </summary> |
| </metric> |
| <metric name="HourOfDay"> |
| <summary> |
| The hour of the day that the event was logged in. Hours measured from |
| midnight in the local timezone. |
| </summary> |
| </metric> |
| <metric name="IsLaunched" enum="Boolean"> |
| <summary> |
| True if the item represented by this event was launched, false otherwise. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour00"> |
| <summary> |
| The number of launches within the last 24 hours at hour 0. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour01"> |
| <summary> |
| The number of launches within the last 24 hours at hour 1. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour02"> |
| <summary> |
| The number of launches within the last 24 hours at hour 2. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour03"> |
| <summary> |
| The number of launches within the last 24 hours at hour 3. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour04"> |
| <summary> |
| The number of launches within the last 24 hours at hour 4. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour05"> |
| <summary> |
| The number of launches within the last 24 hours at hour 5. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour06"> |
| <summary> |
| The number of launches within the last 24 hours at hour 6. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour07"> |
| <summary> |
| The number of launches within the last 24 hours at hour 7. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour08"> |
| <summary> |
| The number of launches within the last 24 hours at hour 8. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour09"> |
| <summary> |
| The number of launches within the last 24 hours at hour 9. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour10"> |
| <summary> |
| The number of launches within the last 24 hours at hour 10. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour11"> |
| <summary> |
| The number of launches within the last 24 hours at hour 11. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour12"> |
| <summary> |
| The number of launches within the last 24 hours at hour 12. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour13"> |
| <summary> |
| The number of launches within the last 24 hours at hour 13. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour14"> |
| <summary> |
| The number of launches within the last 24 hours at hour 14. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour15"> |
| <summary> |
| The number of launches within the last 24 hours at hour 15. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour16"> |
| <summary> |
| The number of launches within the last 24 hours at hour 16. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour17"> |
| <summary> |
| The number of launches within the last 24 hours at hour 17. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour18"> |
| <summary> |
| The number of launches within the last 24 hours at hour 18. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour19"> |
| <summary> |
| The number of launches within the last 24 hours at hour 19. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour20"> |
| <summary> |
| The number of launches within the last 24 hours at hour 20. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour21"> |
| <summary> |
| The number of launches within the last 24 hours at hour 21. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour22"> |
| <summary> |
| The number of launches within the last 24 hours at hour 22. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesAtHour23"> |
| <summary> |
| The number of launches within the last 24 hours at hour 23. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="LaunchesThisSession"> |
| <summary> |
| How many times this item has been launched during this session. Rounded |
| down to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="Position"> |
| <summary> |
| The index of this item in the search results list. Indices start at 0. |
| </summary> |
| </metric> |
| <metric name="QueryLength"> |
| <summary> |
| The length of the raw search query with whitespace trimmed. Rounded down |
| to the nearest exponential bucket, with a bucket ratio of 1.15. |
| </summary> |
| </metric> |
| <metric name="RelevanceScore"> |
| <summary> |
| The raw relevance score returned by the relevant search provider for this |
| item. |
| </summary> |
| </metric> |
| <metric name="TimeOfLastLaunch"> |
| <summary> |
| The hour when the previous launch of this item occurred. Hours measured |
| from midnight in the local timezone. This can be any value 0-23, as the |
| last launch could have been on a previous day. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastLaunch"> |
| <summary> |
| Seconds since this item was last launched in this session. Rounded down to |
| the nearest exponential bucket, with a bucket ratio of 1.045. This makes |
| the bucket at 24 hour mark approximately 1 hour long. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.AddressProfileImport"> |
| <owner>vidhanj@google.com</owner> |
| <owner>koerber@google.com</owner> |
| <summary> |
| Recorded after a form submission that either resulted in a save prompt for |
| addresses or in a silent update of an already existing profile. |
| </summary> |
| <metric name="AutocompleteUnrecognizedImport" enum="Boolean"> |
| <summary> |
| Logs if data was imported from a field that has autocomplete=UNRECOGNIZED. |
| </summary> |
| </metric> |
| <metric name="ImportType" enum="AutofillProfileImportType"> |
| <summary> |
| Logs the import type of the storage prompt. An import type can be either |
| the import of a new profile, an update of an existing profile that results |
| in a confirmation dialog, or a silent update that only changes the |
| structure of an already stored address but does not affect any |
| settings-visible stored data. |
| </summary> |
| </metric> |
| <metric name="NumberOfEditedFields"> |
| <summary> |
| Logs the count for the number of fields that have been edited by the user |
| in the storage dialog before the storage was confirmed. |
| </summary> |
| </metric> |
| <metric name="PhoneNumberStatus" enum="AutofillPhoneImportValidity"> |
| <summary> |
| Logs the phone number validity status based on whether the phone number |
| was imported in the profile or not or removed beforehand. |
| </summary> |
| </metric> |
| <metric name="UserDecision" enum="AutofillProfileImportDecision"> |
| <summary> |
| Logs the user decision based on the storage prompt. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.CardUploadDecision"> |
| <owner>sebsg@chromium.org</owner> |
| <metric name="UploadDecision"> |
| <summary> |
| Whether the upload was proposed to the user or the reasons why it was not. |
| The value is a bitmask of |CardUploadDecisionMetric|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.CreditCardFill"> |
| <owner>schwering@google.com</owner> |
| <summary> |
| Recorded when a credit card form is autofilled. |
| </summary> |
| <metric name="Fillable.AfterSecurity.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill would have filled if the credit card |
| on file was complete. |
| </summary> |
| </metric> |
| <metric name="Fillable.AfterSecurity.Qualitative" |
| enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill would have |
| filled if the credit card on file was complete. |
| </summary> |
| </metric> |
| <metric name="Fillable.AfterSecurity.Visible.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill would have filled into visible fields |
| if the credit card on file was complete. |
| </summary> |
| </metric> |
| <metric name="Fillable.AfterSecurity.Visible.Qualitative" |
| enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill would have |
| filled into visible fields if the credit card on file was complete. |
| </summary> |
| </metric> |
| <metric name="Fillable.BeforeSecurity.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill would have filled if the credit card |
| on file was complete and there was no security policy. |
| </summary> |
| </metric> |
| <metric name="Fillable.BeforeSecurity.Qualitative" |
| enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill would have |
| filled if the credit card on file was complete and there was no security |
| policy. |
| </summary> |
| </metric> |
| <metric name="Fillable.BeforeSecurity.Visible.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill would have filled into visible fields |
| if the credit card on file was complete and there was no security policy. |
| </summary> |
| </metric> |
| <metric name="Fillable.BeforeSecurity.Visible.Qualitative" |
| enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill would have |
| filled into visible fields if the credit card on file was complete and |
| there was no security policy. |
| </summary> |
| </metric> |
| <metric name="Filled.AfterSecurity.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill actually filled. |
| </summary> |
| </metric> |
| <metric name="Filled.AfterSecurity.Qualitative" enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill actually |
| filled. |
| </summary> |
| </metric> |
| <metric name="Filled.AfterSecurity.Visible.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill actually filled into visible fields. |
| </summary> |
| </metric> |
| <metric name="Filled.AfterSecurity.Visible.Qualitative" |
| enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill actually |
| filled into visible fields. |
| </summary> |
| </metric> |
| <metric name="Filled.BeforeSecurity.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill would have filled if there was no |
| security policy. |
| </summary> |
| </metric> |
| <metric name="Filled.BeforeSecurity.Qualitative" |
| enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill would have |
| filled if there was no security policy. |
| </summary> |
| </metric> |
| <metric name="Filled.BeforeSecurity.Visible.Bitmask" |
| enum="AutofillCreditCardSeamlessnessBitmask"> |
| <summary> |
| Logs the field types which Autofill would have filled into visible fields |
| if there was no security policy. |
| </summary> |
| </metric> |
| <metric name="Filled.BeforeSecurity.Visible.Qualitative" |
| enum="CreditCardSeamlessFill"> |
| <summary> |
| Logs a qualitative summary of the field types which Autofill would have |
| filled into visible fields if there was no security policy. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| An approximately 10-bit hash of the form's actual signature. |
| </summary> |
| </metric> |
| <metric name="SharedAutofill" enum="Boolean"> |
| <summary> |
| Missing shared-autofill feature prevented a cross-origin credit-card field |
| from being filled. Shared-autofill is a policy-controlled feature by which |
| a frame can allow a child-frame to be autofilled across origin. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.DeveloperEngagement"> |
| <owner>jiahuiguo@google.com</owner> |
| <summary> |
| Recorded when we parse a form to log whether developer has used autocomplete |
| markup or UPI-VPA hints. The value is a bitmask of |
| |DeveloperEngagementMetric|. |
| </summary> |
| <metric name="DeveloperEngagement"/> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. This is the hash identifier used to denote this |
| form for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="FormTypes"> |
| <summary> |
| Type of form. Stored as bitvector. A set ith bit implies enum FormType's |
| ith type was detected. Multiple types are possible. |
| </summary> |
| </metric> |
| <metric name="IsForCreditCard"> |
| <summary> |
| True for credit card forms, false for address/profile forms. See |
| |FormStructure::IsCompleteCreditCardForm()|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.EditedAutofilledFieldAtSubmission"> |
| <owner>koerber@google.com</owner> |
| <owner>battre@google.com</owner> |
| <summary> |
| Records when a user edits a value that was filled by autofill. |
| </summary> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field. This is the hash identifier used to denote |
| this field for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. This is the hash identifier used to denote this |
| form for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="OverallType" enum="AutofillServerFieldType"> |
| <summary> |
| Field's overall |ServerFieldType|. See: autofill::ServerFieldType |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.FastCheckoutFormStatus"> |
| <owner>bwolfgang@google.com</owner> |
| <owner>jkeitel@google.com</owner> |
| <owner>vizcay@google.com</owner> |
| <summary> |
| Recorded at the end of a Fast Checkout run. |
| </summary> |
| <metric name="Filled" enum="Boolean"> |
| <summary> |
| 1 if the form was filled by Fast Checkout, 0 otherwise. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| An approximately 10-bit hash of the form's actual signature. |
| </summary> |
| </metric> |
| <metric name="FormTypes"> |
| <summary> |
| Type of form. Stored as bitvector. A set i-th bit implies enum FormType's |
| i-th type was detected. Multiple types are possible. |
| </summary> |
| </metric> |
| <metric name="RunId"> |
| <summary> |
| Unique run ID for linking to other UKM events. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.FastCheckoutRunOutcome"> |
| <owner>bwolfgang@google.com</owner> |
| <owner>jkeitel@google.com</owner> |
| <owner>vizcay@google.com</owner> |
| <summary> |
| Recorded at the end of a Fast Checkout run. |
| </summary> |
| <metric name="RunId"> |
| <summary> |
| Unique run ID for linking to other UKM events. |
| </summary> |
| </metric> |
| <metric name="RunOutcome" enum="FastCheckoutRunOutcome"> |
| <summary> |
| States if the run was successful or why it was not. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.FieldFillStatus"> |
| <owner>rogerm@chromium.org</owner> |
| <summary> |
| Recorded when Chrome validates field type predictions (on submit, on leaving |
| a form, on receiving a form with autocomplete attributes). |
| </summary> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field. This is the hash identifier used to denote |
| this field for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. This is the hash identifier used to denote this |
| form for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="IsAutofilled"> |
| <summary> |
| The field is currently autofilled. |
| </summary> |
| </metric> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Time since form parse. |
| </summary> |
| </metric> |
| <metric name="PredictionSource"> |
| <summary> |
| The system which generated the prediction: heuristics, server, overall. |
| </summary> |
| </metric> |
| <metric name="ValidationEvent"> |
| <summary> |
| The event which triggered the validation: Submission, Left Form, Form has |
| Autocomplete attributes. |
| </summary> |
| </metric> |
| <metric name="WasPreviouslyAutofilled"> |
| <summary> |
| The field was autofilled and subsequently edited. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.FieldTypeValidation"> |
| <owner>rogerm@chromium.org</owner> |
| <summary> |
| Recorded when Chrome validates field type predictions (on submit, on leaving |
| a form, on receiving a form with autocomplete attributes). |
| </summary> |
| <metric name="ActualType" enum="AutofillServerFieldType"> |
| <summary> |
| The observed type of the field. See: autofill::ServerFieldType |
| </summary> |
| </metric> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. |
| </summary> |
| </metric> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Time since form parse. |
| </summary> |
| </metric> |
| <metric name="PredictedType" enum="AutofillServerFieldType"> |
| <summary> |
| The predicted type of the field. See: autofill::ServerFieldType |
| </summary> |
| </metric> |
| <metric name="PredictionSource" enum="AutofillPredictionSource"> |
| <summary> |
| The system which generated the prediction: heuristics, server, overall. |
| </summary> |
| </metric> |
| <metric name="ValidationEvent" enum="AutofillQualitiyMetricType"> |
| <summary> |
| The event which triggered the validation: Submission, Left Form, Form has |
| Autocomplete attributes. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.FormEvent"> |
| <owner>dlkumar@google.com</owner> |
| <summary> |
| Recorded when user interacted with autofill. |
| </summary> |
| <metric name="AutofillFormEvent"> |
| <summary> |
| Logs autofill form events funnel. See |FormEvent|. |
| </summary> |
| </metric> |
| <metric name="FormTypes"> |
| <summary> |
| Type of form. Stored as bitvector. A set ith bit implies enum FormType's |
| ith type was detected. Multiple types are possible. |
| </summary> |
| </metric> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Time since form parse. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.FormFillSuccessIOS"> |
| <owner>kazinova@google.com</owner> |
| <summary> |
| Records whether the form was successfully filled by Autofill on iOS. The |
| metric is used to measure silent renderer fails when the filling request is |
| executed successfully but the results reported in a callback are empty. |
| </summary> |
| <metric name="FormFillSuccess" enum="Boolean"> |
| <summary> |
| A boolean indicating success or failure. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.FormSubmitted"> |
| <owner>jiahuiguo@google.com</owner> |
| <summary> |
| Recorded when user submits a form. |
| </summary> |
| <metric name="AutocompleteFills"> |
| <summary> |
| Number of Autocomplete fills invoked by the user on the current form. |
| </summary> |
| </metric> |
| <metric name="AutofillAssistantIntent" enum="AutofillAssistantIntent"> |
| <summary> |
| Describes the trigger source that invoked Autofill. Only recorded if |
| AutofillAssistantIntent was not undefined. |
| </summary> |
| </metric> |
| <metric name="AutofillFills"> |
| <summary> |
| Number of Autofill fills invoked by the user on the current form. |
| </summary> |
| </metric> |
| <metric name="AutofillFormSubmittedState"> |
| <summary> |
| Whether form's fields were all autofilled, some fields were autofilled, or |
| none of the field were autofilled. See |AutofillFormSubmittedState|. |
| </summary> |
| </metric> |
| <metric name="FormElementUserModifications"> |
| <summary> |
| Number of times a user focused on a form element and changed its value. |
| Consecutive value changes on the same form element are not counted, |
| neither are JS invoked changes. Also, re-focusing a form element and |
| changing its value is only counted if another form element's value was |
| changed in the meantime. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| FormSignature is approximately 10 bit hash of form structure. |
| </summary> |
| </metric> |
| <metric name="FormTypes"> |
| <summary> |
| Type of form. Stored as bitvector. A set ith bit implies enum FormType's |
| ith type was detected. Multiple types are possible. |
| </summary> |
| </metric> |
| <metric name="HasUpiVpaField"> |
| <summary> |
| True for forms containing a UPI/VPA field. |
| </summary> |
| </metric> |
| <metric name="IsForCreditCard"> |
| <summary> |
| True for credit card forms, false for address/profile forms. See |
| |FormStructure::IsCompleteCreditCardForm()|. |
| </summary> |
| </metric> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Time since form parse. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.HiddenRepresentationalFieldSkipDecision"> |
| <owner>parastoog@chromium.org</owner> |
| <summary> |
| Recorded while trying to fill or preview a hidden or a representational |
| field. |
| </summary> |
| <metric name="FieldOverallType"> |
| <summary> |
| Field's overall |ServerFieldType|. See |AutofillField.GetStorableType()|. |
| </summary> |
| </metric> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field. This is the hash identifier used to denote |
| this field for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="FieldTypeGroup"> |
| <summary> |
| Field's |FieldTypeGroup|. See |AutofillType.group()|. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. This is the hash identifier used to denote this |
| form for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="HeuristicType"> |
| <summary> |
| Field's |ServerFieldType| based on heuristics. See |
| |AutofillField.heuristic_type()|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldMode"> |
| <summary> |
| Whether the field's autocomplete hint specified 'billing' or 'shipping'. |
| See |AutofillField.html_mode()|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldType"> |
| <summary> |
| Field's autocomplete field type hint. See |AutofillField.html_type()|. |
| </summary> |
| </metric> |
| <metric name="IsSkipped"> |
| <summary> |
| True if the field was skipped while filling or previewing the form, |
| because it was hidden or representational, but not a 'select' one. |
| </summary> |
| </metric> |
| <metric name="ServerType"> |
| <summary> |
| Field's |ServerFieldType| returned by server. See |
| |AutofillField.server_type()|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.InteractedWithForm"> |
| <owner>jiahuiguo@google.com</owner> |
| <summary> |
| Recorded when we parse a form to log form metadata and autofill settings |
| that apply to all subsequent events for this form. |
| </summary> |
| <metric name="FormSignature"> |
| <summary> |
| FormSignature is approximately 10 bit hash of form structure. |
| </summary> |
| </metric> |
| <metric name="FormTypes"> |
| <summary> |
| Type of form. Stored as bitvector. A set ith bit implies enum FormType's |
| ith type was detected. Multiple types are possible. |
| </summary> |
| </metric> |
| <metric name="IsForCreditCard"> |
| <summary> |
| True for credit card forms, false for address/profile forms. |
| </summary> |
| </metric> |
| <metric name="LocalRecordTypeCount"> |
| <summary> |
| Number of local credit cards or local autofill profiles. |
| </summary> |
| </metric> |
| <metric name="ServerRecordTypeCount"> |
| <summary> |
| Number of masked and full server credit cards or server autofill profiles. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.KeyMetrics"> |
| <owner>battre@chromium.org</owner> |
| <owner>kolos@chromium.org</owner> |
| <owner>nepper@chromium.org</owner> |
| <summary> |
| These metrics are a clone of Autofill's UMA key metrics to measure Autofill |
| quality. They are recorded on navigation if a form was submitted before. |
| </summary> |
| <metric name="AutofillAssistantIntent" enum="AutofillAssistantIntent"> |
| <summary> |
| Obsolete. Used to describe the trigger source that invoked Autofill. Was |
| only recorded if AutofillAssistantIntent was not undefined. |
| </summary> |
| </metric> |
| <metric name="AutofillFills"> |
| <summary> |
| Number of Autofill fills invoked by the user on the current form. |
| </summary> |
| </metric> |
| <metric name="FastCheckoutRunId"> |
| <summary> |
| Optional, only set if a form was filled by Fast Checkout. Unique ID of a |
| Fast Checkout run. |
| </summary> |
| </metric> |
| <metric name="FillingAcceptance"> |
| <summary> |
| Has value 1 if user accepted the suggestion to fill values on a submitted |
| form, 0 otherwise. This is counted as 1 if the user accepted such a |
| suggestion at any time, regardless whether other suggestions were ignored |
| or whether the accepted suggestion was reverted afterwards. Only recorded |
| if suggestions were shown to the user. |
| </summary> |
| </metric> |
| <metric name="FillingAssistance"> |
| <summary> |
| Has value 1 if the user filled any fields via Autofill on a submitted |
| form, 0 otherwise. |
| |
| If the user reverts the filling, the form is still counted as filled. |
| |
| This metric is different from FillingAcceptance in the sense that the |
| latter is only recorded if the user has actually seen a prompt to fill |
| data. |
| </summary> |
| </metric> |
| <metric name="FillingCorrectness"> |
| <summary> |
| Has value 1 for submitted and autofilled forms if user edited at least one |
| filled value before submitting the form, 0 otherwise. Only recorded if any |
| suggestion was filled. |
| </summary> |
| </metric> |
| <metric name="FillingReadiness"> |
| <summary> |
| Has value 1 for submitted forms when Chromium had any address or payments |
| data to fill, 0 otherwise. |
| |
| It does not matter whether the user actually requested to fill the data. |
| It does not matter either whether the data available for filling |
| corresponded to the submitted data. |
| </summary> |
| </metric> |
| <metric name="FlowId"> |
| <summary> |
| Hashed GUID linking together multiple emissions of this event if emitted |
| within a 20 minutes timeframe. |
| </summary> |
| </metric> |
| <metric name="FormElementUserModifications"> |
| <summary> |
| Number of times a user focused on a form element and changed its value. |
| Consecutive value changes on the same form element are not counted, |
| neither are JS invoked changes. Also, re-focusing a form element and |
| changing its value is only counted if another form element's value was |
| changed in the meantime. |
| </summary> |
| </metric> |
| <metric name="FormTypes"> |
| <summary> |
| Type of form. Stored as bitvector. A set ith bit implies enum FormType's |
| ith type was detected. Multiple types are possible. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.RepeatedServerTypePredictionRationalized"> |
| <owner>parastoog@chromium.org</owner> |
| <summary> |
| Recorded when a field type predicted by server is rationalized because of |
| repetition. |
| </summary> |
| <metric name="FieldNewOverallType"> |
| <summary> |
| Field's overall |ServerFieldType| after rationalization. See |
| |AutofillField.GetStorableType()|. |
| </summary> |
| </metric> |
| <metric name="FieldOldOverallType"> |
| <summary> |
| Field's overall |ServerFieldType| before rationalization. See |
| |AutofillField.GetStorableType()|. |
| </summary> |
| </metric> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field. This is the hash identifier used to denote |
| this field for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="FieldTypeGroup"> |
| <summary> |
| Field's |FieldTypeGroup|. See |AutofillType.group()|. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. This is the hash identifier used to denote this |
| form for query and voting purposes. See |
| components/autofill/core/common/signatures_util.cc for more details. |
| </summary> |
| </metric> |
| <metric name="HeuristicType"> |
| <summary> |
| Field's |ServerFieldType| based on heuristics. See |
| |AutofillField.heuristic_type()|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldMode"> |
| <summary> |
| Whether the field's autocomplete hint specified 'billing' or 'shipping'. |
| See |AutofillField.html_mode()|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldType"> |
| <summary> |
| Field's autocomplete field type hint. See |AutofillField.html_type()|. |
| </summary> |
| </metric> |
| <metric name="ServerType"> |
| <summary> |
| Field's |ServerFieldType| returned by server. See |
| |AutofillField.server_type()|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.Sectioning"> |
| <owner>fleimgruber@google.com</owner> |
| <owner>schwering@google.com</owner> |
| <summary> |
| Recorded after sectioning is performed when the server classification |
| arrived, and only when `AutofillUseParameterizedSectioning` is enabled. |
| </summary> |
| <metric name="FormSignature"> |
| <summary> |
| A 10-bit hash of the form's signature. |
| </summary> |
| </metric> |
| <metric name="SectioningSignature"> |
| <summary> |
| A 10-bit hash of the form's computed sections. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.SelectedMaskedServerCard"> |
| <obsolete> |
| Deprecated 2/2019 |
| </obsolete> |
| <owner>jiahuiguo@google.com</owner> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Obsolete. |
| |
| Time since form parse. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.SuggestionFilled"> |
| <owner>jiahuiguo@google.com</owner> |
| <summary> |
| Recorded when user selects a suggestion and we fill the form with that |
| suggestion. |
| </summary> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. |
| </summary> |
| </metric> |
| <metric name="IsForCreditCard"> |
| <summary> |
| True for credit card forms, false for address/profile forms. |
| </summary> |
| </metric> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Time since form parse. |
| </summary> |
| </metric> |
| <metric name="RecordType"> |
| <summary> |
| Whether the suggestion was from a local card/autofill profile or from a |
| server card/autofill profile. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.SuggestionsShown"> |
| <owner>jiahuiguo@google.com</owner> |
| <summary> |
| Recorded when a suggestion is shown to user. |
| </summary> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. |
| </summary> |
| </metric> |
| <metric name="HeuristicType"> |
| <summary> |
| Field's |ServerFieldType| based on heuristics. See |
| |AutofillField.heuristic_type()|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldType"> |
| <summary> |
| Field's autocomplete field type hint. See |AutofillField.html_type()|. |
| </summary> |
| </metric> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Time since form parse. |
| </summary> |
| </metric> |
| <metric name="ServerType"> |
| <summary> |
| Field's |ServerFieldType| returned by server. See |
| |AutofillField.server_type()|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill.TextFieldDidChange"> |
| <owner>jiahuiguo@google.com</owner> |
| <summary> |
| Recorded when user edits a text field. The text field may have been |
| autofilled. |
| </summary> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field |
| </summary> |
| </metric> |
| <metric name="FieldTypeGroup"> |
| <summary> |
| Field's |FieldTypeGroup|. See |AutofillType.group()|. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form. |
| </summary> |
| </metric> |
| <metric name="HeuristicType"> |
| <summary> |
| Field's |ServerFieldType| based on heuristics. See |
| |AutofillField.heuristic_type()|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldMode"> |
| <summary> |
| Whether the field's autocomplete hint specified 'billing' or 'shipping'. |
| See |AutofillField.html_mode()|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldType"> |
| <summary> |
| Field's autocomplete field type hint. See |AutofillField.html_type()|. |
| </summary> |
| </metric> |
| <metric name="IsAutofilled"> |
| <summary> |
| True if the field was autofilled. See |AutofillField.is_autofilled|. |
| </summary> |
| </metric> |
| <metric name="IsEmpty"> |
| <summary> |
| True if the field was empty. See |AutofillField.IsEmpty()|. |
| </summary> |
| </metric> |
| <metric name="MillisecondsSinceFormParsed"> |
| <summary> |
| Time since form parse. |
| </summary> |
| </metric> |
| <metric name="ServerType"> |
| <summary> |
| Field's |ServerFieldType| returned by server. See |
| |AutofillField.server_type()|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill2.FieldInfo"> |
| <owner>battre@chromium.org</owner> |
| <owner>chrome-autofill-team@google.com</owner> |
| <summary> |
| All information about a specific field, recorded at form submission or form |
| destruction time (whatever comes first). |
| </summary> |
| <metric name="AutofillSkippedStatus"> |
| <summary> |
| Whether filling the field was skipped during autofill, and if it was |
| skipped, what the skipping reasons were. Recorded as a DenseSet of |
| |SkipStatus|. |
| </summary> |
| </metric> |
| <metric name="FieldSessionIdentifier"> |
| <summary> |
| A random variable assigned to a specific instance of a form control (e.g. |
| a HTML input element). This should be globally unique and suitable for |
| distinguishing fields. Two different users would have different values. |
| For the same user, the same field in the same form in two different tabs |
| would have two different values. |
| </summary> |
| </metric> |
| <metric name="FieldSignature"> |
| <summary> |
| The signature of the field, a 10 bit hash value (0-1021) of the field name |
| and field type used to denote this field for query and voting purposes. |
| </summary> |
| </metric> |
| <metric name="FilledValueWasModified" enum="Boolean"> |
| <summary> |
| Whether the user modified a field after autofilling/autocompleting it. |
| </summary> |
| </metric> |
| <metric name="FormControlType" enum="AutofillFormControlType"> |
| <summary> |
| A form control type of a web form-associated element. We only list the |
| very common ones that are seen in autofill, such as text, textarea, |
| checkbox, radio, select-one, see |autofill::FormControlType|. |
| </summary> |
| </metric> |
| <metric name="FormSessionIdentifier"> |
| <summary> |
| A random variable assigned to a specific instance of a HTML form in a |
| specific renderer. This should be globally unique and suitable for |
| counting distinct forms. Two different users would have different values. |
| A single user loading the same form in two different tabs would have two |
| different values. This is used to link the fields to a form in |
| Autofill2.FormSummary. |
| </summary> |
| </metric> |
| <metric name="HadTypedOrFilledValueAtSubmission" enum="Boolean"> |
| <summary> |
| Whether there was a value after user typed or autofilled in the field at |
| form submission or form destruction time. |
| </summary> |
| </metric> |
| <metric name="HadValueBeforeFilling" enum="Boolean"> |
| <summary> |
| Whether there was a value before autofill in the field. |
| </summary> |
| </metric> |
| <metric name="HeuristicType" enum="AutofillServerFieldType"> |
| <summary> |
| There are multiple heuristic classification strategies working in |
| parallel. This type is predicted from the active pattern source. |
| </summary> |
| </metric> |
| <metric name="HeuristicTypeDefault" enum="AutofillServerFieldType"> |
| <summary> |
| The type of the field predicted from the source of local heuristics on the |
| client, which uses patterns applied for most users, the types are from |
| |autofill::ServerFieldType|. |
| </summary> |
| </metric> |
| <metric name="HeuristicTypeExperimental" enum="AutofillServerFieldType"> |
| <summary> |
| The type of the field predicted from the heuristics that uses experimental |
| patterns, the types are from |autofill::ServerFieldType|. |
| </summary> |
| </metric> |
| <metric name="HeuristicTypeLegacy" enum="AutofillServerFieldType"> |
| <summary> |
| The type of the field predicted from patterns whose stability is above |
| suspicion, the types are from |autofill::ServerFieldType|. |
| </summary> |
| </metric> |
| <metric name="HeuristicTypeNextGen" enum="AutofillServerFieldType"> |
| <summary> |
| The type of the field predicted from the heuristics that uses patterns |
| only for non-user-visible metrics, one step before experimental, the types |
| are from |autofill::ServerFieldType|. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldMode" enum="AutocompleteHtmlFieldMode"> |
| <summary> |
| The mode according to the autocomplete attribute of a field. Only set if a |
| field has a valid autocomplete attribute. Currently this is used to |
| specify if the field is part of the billing or shipping address. See |
| autofill::mojom::HtmlFieldMode. |
| </summary> |
| </metric> |
| <metric name="HtmlFieldType" enum="AutocompleteHtmlFieldType"> |
| <summary> |
| The field type specified in the autocomplete attribute of the field. Only |
| set if a field has a valid autocomplete attribute. See |
| autofill::mojom::HtmlFieldType. |
| </summary> |
| </metric> |
| <metric name="IsFocusable" enum="Boolean"> |
| <summary> |
| Whether the field is focusable to the user. This is an approximation of |
| visibility with false positives. |
| </summary> |
| </metric> |
| <metric name="OverallType" enum="AutofillServerFieldType"> |
| <summary> |
| The final field type from the list of |autofill::ServerFieldType| that we |
| choose after rationalization, which is used to determine the autofill |
| suggestion when the user triggers autofilling. |
| </summary> |
| </metric> |
| <metric name="RankInFieldSignatureGroup"> |
| <summary> |
| If multiple fields have the same signature, this indicates the position |
| within this set of fields. This allows us to understand problems related |
| to duplicated field signatures. |
| </summary> |
| </metric> |
| <metric name="SectionId"> |
| <summary> |
| A single HTML form can consist of multiple sections. A section is a set of |
| fields that are filled together. For example a single form can contain a |
| shipping and a billing address. Each of those corresponds to one section. |
| The sections are mapped to consecutive natural numbers starting at 1. The |
| section IDs are unique per form. |
| </summary> |
| </metric> |
| <metric name="ServerPredictionSource1" enum="AutofillServerPredictionSource"> |
| <summary> |
| The major source of predictions from the Autofill crowdsourced server, see |
| AutofillQueryResponse::FormSuggestion::FieldSuggestion::FieldPrediction::Source. |
| </summary> |
| </metric> |
| <metric name="ServerPredictionSource2" enum="AutofillServerPredictionSource"> |
| <summary> |
| The additional source of predictions from the Autofill crowdsourced server |
| if there is an additional prediction, see |
| AutofillQueryResponse::FormSuggestion::FieldSuggestion::FieldPrediction::Source. |
| </summary> |
| </metric> |
| <metric name="ServerType1" enum="AutofillServerFieldType"> |
| <summary> |
| The type of the field predicted from the Autofill crowdsourced server from |
| majority voting (and some more complex stuff). The types are from |
| |autofill::ServerFieldType|. |
| </summary> |
| </metric> |
| <metric name="ServerType2" enum="AutofillServerFieldType"> |
| <summary> |
| The additional type of the field predicted from the Autofill crowdsourced |
| server if there is an additional prediction. The types are from |
| |autofill::ServerFieldType|. |
| </summary> |
| </metric> |
| <metric name="ServerTypeIsOverride" enum="Boolean"> |
| <summary> |
| This is an annotation for server predicted field types which indicates |
| that a manual override defines the server type. This allows us to assess |
| the impact of server overrides and detect possible problems with it. |
| </summary> |
| </metric> |
| <metric name="SuggestionWasAccepted" enum="Boolean"> |
| <summary> |
| Whether the suggestion was accepted. This is only set for a field where a |
| suggestion was shown and accepted by the user. It is not the same as |
| autofilled, which is true for all the fields that were filled. More than |
| one field can have an accepted suggestion because the form can be split |
| into multiple sections (e.g. shipping and billing address) or because the |
| user triggers autofill multiple times. |
| </summary> |
| </metric> |
| <metric name="SuggestionWasAvailable" enum="Boolean"> |
| <summary> |
| Whether there was a suggestion available for the field from user data. |
| This is only set for a field that was focused by the user. |
| </summary> |
| </metric> |
| <metric name="SuggestionWasShown" enum="Boolean"> |
| <summary> |
| Whether a suggestion popup was ever shown on this field (i.e. the field |
| had focus and user had data on file). |
| </summary> |
| </metric> |
| <metric name="TypeChangedByRationalization" enum="Boolean"> |
| <summary> |
| Whether the field's type was changed by running the rationalization. |
| </summary> |
| </metric> |
| <metric name="UserTypedIntoField" enum="Boolean"> |
| <summary> |
| Whether the user ever typed into the field (regardless of autofill). |
| </summary> |
| </metric> |
| <metric name="WasAutofilled" enum="Boolean"> |
| <summary> |
| Whether the field was ever filled by autofill. This applies to all the |
| fields that were autofilled, not just the field that was clicked. If a |
| fill operation did not change the value of a field because the old value |
| matches the filled value, this is still recorded as a WasAutofilled = |
| true. |
| </summary> |
| </metric> |
| <metric name="WasFocused" enum="Boolean"> |
| <summary> |
| Whether the user ever focused on the field. |
| </summary> |
| </metric> |
| <metric name="WasRefill" enum="Boolean"> |
| <summary> |
| Whether the form was refilled by autofill. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Autofill2.FormSummary"> |
| <owner>battre@chromium.org</owner> |
| <owner>chrome-autofill-team@google.com</owner> |
| <summary> |
| Information recorded for a HTML form element on the HTML page, recorded at |
| form submission or form destruction time (whatever comes first). |
| </summary> |
| <metric name="AutofillFormEvents"> |
| <summary> |
| A bit vector of some autofill form events that records a funnel of this |
| autofill form. The autofill form events are from an enum list specifying |
| the possible status of the autofill forms, such as if a dropdown with |
| suggestions was shown, if the user interacted with a field in the form. |
| Some of the events are triggered separately for address and credit card |
| forms, e.g. if all the fillable fields in the credit card forms were |
| filled. New form events can be added over time and a form can have |
| multiple form events. This bit vector stored only events 0..63. |
| </summary> |
| </metric> |
| <metric name="AutofillFormEvents2"> |
| <summary> |
| A bit vector of some autofill form events that records a funnel of this |
| autofill form. This contains the entries 64...127 shifted right by 64 |
| bits. |
| </summary> |
| </metric> |
| <metric name="FormSessionIdentifier"> |
| <summary> |
| A random variable assigned to a specific instance of a HTML form in a |
| specific renderer. This should be globally unique and suitable for |
| counting distinct forms. Two different users would have different values. |
| A single user loading the same form in two different tabs would have two |
| different values. This is used to link the fields in this form in |
| Autofill2.FieldInfo. |
| </summary> |
| </metric> |
| <metric name="FormSignature"> |
| <summary> |
| The signature of the form, which is a 10-bit hash of the form's domain, |
| name and all the supported form fields (including empty names). |
| </summary> |
| </metric> |
| <metric name="IsInMainframe" enum="Boolean"> |
| <summary> |
| This indicates whether the form is located in the main frame or in an |
| iframe. A cross-origin autofill is prevented only because shared-autofill |
| is disabled in the field's frame. Shared-autofill is a policy-controlled |
| feature by which a frame can allow a child-frame to be autofilled across |
| origin. We record the url of the main frame not the iframe even if the |
| form is in the iframe. |
| </summary> |
| </metric> |
| <metric name="MillisecondsFromFirstInteratctionUntilSubmission"> |
| <summary> |
| The time interval from first interaction on the form to form submission in |
| ms in exponential buckets from |GetSemanticBucketMinForDurationTiming()|. |
| </summary> |
| </metric> |
| <metric name="MillisecondsFromFormParsedUntilSubmission"> |
| <summary> |
| The time interval from form parse to form submission in ms in exponential |
| buckets from |GetSemanticBucketMinForDurationTiming()|. |
| </summary> |
| </metric> |
| <metric name="SampleRate"> |
| <summary> |
| A sampling rate is a precomputed positive integer and is applied to each |
| form and adaptive to the popularity of forms. The most popular forms are |
| classified into a `very popular` category and maybe apply a 1:100 sampling |
| while the less popular forms have a sampling of 1:1. If the sampling is |
| 1:X, this sample rate value stores the `X`. |
| </summary> |
| </metric> |
| <metric name="WasSubmitted" enum="Boolean"> |
| <summary> |
| Whether the form was submitted. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BackForwardCacheDisabledForRenderFrameHostReason"> |
| <owner>altimin@chromium.org</owner> |
| <owner>hajimehoshi@chromium.org</owner> |
| <summary> |
| Recorded at a history commit for each reason passed to |
| BackForwardCache::DisableForRenderFrameHost. The source IDs match with the |
| source IDs of HistoryNavigation events. |
| </summary> |
| <metric name="Reason" |
| enum="BackForwardCacheDisabledForRenderFrameHostReasonShort"> |
| <obsolete> |
| Deprecated as of 03/2021. Replaced with Reason2. |
| </obsolete> |
| <summary> |
| For history navigations, records the reason passed to |
| BackForwardCache::DisableForRenderFrameHost calls. |
| |
| The metric is recorded when a history navigation commits and emits a |
| sample for each reason. One history navigation can emit multiple reasons, |
| and these reasons are recorded as multiple events with the same source ID |
| based on the navigation ID. |
| </summary> |
| </metric> |
| <metric name="Reason2" |
| enum="BackForwardCacheDisabledForRenderFrameHostReason2"> |
| <summary> |
| For history navigations, records the reason passed to |
| BackForwardCache::DisableForRenderFrameHost calls. The reason is specified |
| as a 48-bit int representing the source (blink or an embedder) and a |
| source-specific 16-bit int representing the reason specific to that |
| source. |
| |
| The metric is recorded when a history navigation commits and emits a |
| sample for each reason. One history navigation can emit multiple reasons, |
| and these reasons are recorded as multiple events with the same source ID |
| based on the navigation ID. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BackForwardCacheDisallowActivationReason"> |
| <owner>altimin@chromium.org</owner> |
| <owner>hajimehoshi@chromium.org</owner> |
| <owner>fergal@chromium.org</owner> |
| <summary> |
| Recorded at a history commit for each reason passed to |
| RenderFrameHost::IsInactiveAndDisallowActivation. The source IDs match with |
| the source IDs of HistoryNavigation events. |
| </summary> |
| <metric name="Reason" enum="InactiveFrameDisallowActivationReason"> |
| <summary> |
| For history navigations, records the reason passed to |
| RenderFrameHost::IsInactiveAndDisallowActivation. |
| |
| The metric is recorded when a history navigation commits and emits a |
| sample for each reason. One history navigation can emit multiple reasons, |
| and these reasons are recorded as multiple events with the same source ID |
| based on the navigation ID. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BackgroundFetch"> |
| <owner>nator@chromium.org</owner> |
| <owner>rayankans@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| A BackgroundFetch event is logged before a background fetch is started from |
| a document context. |
| </summary> |
| <metric name="DeniedDueToPermissions"> |
| <summary> |
| Boolean for whether the background fetch was denied due to permission. |
| This includes only the content setting permission. |
| </summary> |
| </metric> |
| <metric name="DownloadTotal"> |
| <summary> |
| The value of downloadTotal provided with the background fetch. This is the |
| number of bytes that the developer expects to be downloaded with the |
| background fetch. This number is exponentially bucketed for privacy |
| reasons, and uses the UKM GetExponentialBucketMin method with a value of |
| 2.0 for spacing. |
| </summary> |
| </metric> |
| <metric name="HasTitle"> |
| <summary> |
| Boolean for whether a title was provided with the background fetch. |
| </summary> |
| </metric> |
| <metric name="NumIcons"> |
| <summary> |
| Count of icons provided with the background fetch. |
| </summary> |
| </metric> |
| <metric name="NumRequestsInFetch"> |
| <summary> |
| Number of requests in the background fetch. This number is exponentially |
| bucketed for privacy reasons, and uses the UKM GetExponentialBucketMin |
| method with a value of 2.0 for spacing. |
| </summary> |
| </metric> |
| <metric name="RatioOfIdealToChosenIconSize"> |
| <summary> |
| Ratio of the ideal icon to the chosen icon size, times hundred. This will |
| be set to -1 if either ideal icon size is 0, or if none of the provided |
| icons are suitable. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BackgroundFetchDeletingRegistration"> |
| <owner>nator@chromium.org</owner> |
| <owner>rayankans@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| A BackgroundFetchDeletingRegistration event is logged when a background |
| fetch job is being deleted. |
| </summary> |
| <metric name="UserInitiatedAbort"> |
| <summary> |
| Boolean for whether the background fetch job was cancelled from the UI. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BackgroundSyncCompleted"> |
| <owner>nator@chromium.org</owner> |
| <owner>rayankans@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Logged when a Background Sync one-shot registration is completed. |
| </summary> |
| <metric name="MaxAttempts"> |
| <summary> |
| Integer value of the maximum number of allowed retries. |
| </summary> |
| </metric> |
| <metric name="NumAttempts"> |
| <summary> |
| Integer value of the number of retries / sync events dispatched. |
| </summary> |
| </metric> |
| <metric name="Status"> |
| <summary> |
| The enum value of the completion status, defined in |
| blink::ServiceWorkerStatusCode. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BackgroundSyncRegistered"> |
| <owner>nator@chromium.org</owner> |
| <owner>rayankans@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Logged when a one-shot Background Sync registration is created. |
| </summary> |
| <metric name="CanFire"> |
| <summary> |
| Boolean for whether a sync event can be immediately dispatched for this |
| registration. |
| </summary> |
| </metric> |
| <metric name="IsReregistered"> |
| <summary> |
| Boolean for whether this is a duplicate registration. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Badging"> |
| <owner>phillis@chromium.org</owner> |
| <owner>cmumford@chromium.org</owner> |
| <summary> |
| Metrics that measure the use of Badging API |
| </summary> |
| <metric name="UpdateAppBadge" enum="UpdateAppBadgeTypes"> |
| <summary> |
| Logged when navigator.setAppBadge or navigator.clearAppBadge is called. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Blink.AutomaticLazyLoadFrame" singular="True"> |
| <owner>chikamune@google.com</owner> |
| <owner>sisidovski@google.com</owner> |
| <owner>kouhei@google.com</owner> |
| <summary> |
| Records metrics for LazyAds and LazyEmbeds Interventions. LazyAds and |
| LazyEmbeds Interventions will automatically apply lazy loading to ad's |
| frames and embedded web applications so that we can automatically improve |
| Core Web Vitals for many sites. These metrics help us to know to what degree |
| these Interventions can improve Core Web Vitals when the sites are eligible |
| for LazyAds or LazyEmbeds. |
| </summary> |
| <metric name="LazyAdsFrameCount"> |
| <summary> |
| Records the total number of per-page ad frames that are eligible for the |
| LazyAds interventions by AutomaticLazyFrameLoadingToAds. The exponential |
| bucketing is applied for privacy reasons by using |
| ukm::GetExponentialBucketMinForCounts1000(). |
| </summary> |
| </metric> |
| <metric name="LazyEmbedsFrameCount"> |
| <summary> |
| Records the total number of per-page frames that are eligible for the |
| LazyEmbeds interventions by AutomaticLazyFrameLoadingToEmbeds. The |
| exponential bucketing is applied for privacy reasons by using |
| ukm::GetExponentialBucketMinForCounts1000(). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.ContextMenu.ImageSelection"> |
| <obsolete> |
| No longer recorded after August 2022 launch of the feature. |
| </obsolete> |
| <owner>flackr@chromium.org</owner> |
| <owner>blink-interactions-team@google.com</owner> |
| <summary> |
| Sent when a user long presses or right clicks a document (and that an image |
| is found). Requires that the `EnablePenetratingImageSelection` feature is |
| enabled together with a `logUkm` specific finch param. |
| </summary> |
| <metric name="Outcome" enum="ImageSelectionOutcome"> |
| <summary> |
| Emits an integer id for a selection corresponding to the |
| ImageSelectionOutcome enum defined in Blink's context_menu_controller.h. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.DeveloperMetricsRare"> |
| <owner>schenney@chromium.org</owner> |
| <owner>chrome-webdev-metrics@google.com</owner> |
| <summary> |
| Collects data for a subset of UseCounter features of interest to the Web |
| Platform Developer Metrics team due to their recent launch or potential for |
| spec changes. Features reported in this set should be rare, appearing in |
| fewer than 5% of page loads. |
| </summary> |
| <metric name="Feature" enum="FeatureObserver"> |
| <summary> |
| Opt-in UseCounter feature, listed in |
| components/page_load_metrics/browser/observers/use_counter/webdev_metrics_ukm_features.cc |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IsMainFrameFeature" enum="Boolean"> |
| <summary> |
| Emits True(1) or False(0) to indicate whether the Feature recorded is in |
| the main frame or not. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.FedCm"> |
| <owner>yigu@chromium.org</owner> |
| <owner>web-identity-eng@google.com</owner> |
| <summary> |
| Records performance metrics for FedCM(Federated Credential Management) API. |
| </summary> |
| <metric name="AutoReauthn.BlockedByContentSettings" enum="Boolean"> |
| <summary> |
| Records whether the FedCM auto re-authn call is blocked because the auto |
| re-authn content settings permission is disabled. Records at most one |
| sample per FedCM API with auto re-authn enabled: some failures could occur |
| before this metric is recorded. |
| </summary> |
| </metric> |
| <metric name="AutoReauthn.BlockedByEmbargo" enum="Boolean"> |
| <summary> |
| Records whether the FedCM auto re-authn call is blocked because the auto |
| re-authn is under embargo, i.e. due to cooldown. Records at most one |
| sample per FedCM API with auto re-authn enabled: some failures could occur |
| before this metric is recorded. |
| </summary> |
| </metric> |
| <metric name="AutoReauthn.ReturningAccounts" enum="FedCmReturningAccounts"> |
| <summary> |
| Records whether there was zero, one, or multiple returning accounts when a |
| site calls the FedCM API with autoReauthn: true. Records at most one |
| sample per failed API call: some failures could occur before this metric |
| is recorded. |
| </summary> |
| </metric> |
| <metric name="AutoReauthn.Succeeded" enum="Boolean"> |
| <summary> |
| Records whether auto re-authn checks succeeded or not. The count would |
| provide roughly the number of FedCM re-authn attempts, the true count |
| would provide the number of times the re-authn UI is shown to the user, |
| and the false count would provide the number of attempts where auto |
| re-authn was blocked for some non-network related reason. Records at most |
| one sample per FedCM API with auto re-authn enabled: some failures could |
| occur before this metric is recorded. |
| </summary> |
| </metric> |
| <metric name="AutoReauthn.TimeFromEmbargoWhenBlocked"> |
| <summary> |
| Records the amount of time that has passed from the time the FedCM auto |
| re-authn API was embargoed to the time in which the next call occurs. Only |
| records a sample when there is an auto re-authn FedCM API call which is |
| blocked due to embargo. Samples are exponentially bucketed, with a max |
| bucket of 10 minutes, the embargo duration (see |
| `kFederatedIdentityAutoReauthnEmbargoDuration`). |
| </summary> |
| </metric> |
| <metric name="FedCmSessionID"> |
| <summary> |
| Records the session ID associated to the FedCM call for which this event |
| is recording metrics. Each FedCM call gets a random integer session id, |
| which helps group UKM events by the session id. |
| </summary> |
| </metric> |
| <metric name="Status.RequestIdToken" enum="FedCmRequestIdTokenStatus"> |
| <summary> |
| Records the status of a request id token call to the FedCM API. |
| </summary> |
| </metric> |
| <metric name="Status.Revoke" enum="FedCmRevokeStatus"> |
| <obsolete> |
| Removed June 2022 with the removal of the revoke() method. |
| </obsolete> |
| <summary> |
| Records the status of a revoke call to the FedCM API. |
| </summary> |
| </metric> |
| <metric name="Timing.CancelOnDialog"> |
| <summary> |
| Records the time (in milliseconds) from when the accounts dialog is shown |
| to when the user closes the dialog without selecting any account. |
| </summary> |
| </metric> |
| <metric name="Timing.ContinueOnDialog"> |
| <summary> |
| Records the time (in milliseconds) from when the accounts dialog is shown |
| to when the user presses the Continue button. |
| </summary> |
| </metric> |
| <metric name="Timing.IdTokenResponse"> |
| <summary> |
| Records the time (in milliseconds) from when the user presses the Continue |
| button to when the id token response is received. |
| </summary> |
| </metric> |
| <metric name="Timing.ShowAccountsDialog"> |
| <summary> |
| Records the time (in milliseconds) from when a call to the API was made to |
| when the accounts dialog is shown. |
| </summary> |
| </metric> |
| <metric name="Timing.TurnaroundTime"> |
| <summary> |
| Records the overall time (in milliseconds) from when the API is called to |
| when the id token response is received. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.FedCmIdp"> |
| <owner>npm@chromium.org</owner> |
| <owner>web-identity-eng@google.com</owner> |
| <summary> |
| Records performance metrics for FedCM (Federated Credential Management) API. |
| Recorded when the web developer calls the FedCM API. Individual metrics are |
| recorded eagerly, whenever the value has been computed. |
| |
| This event uses the specific WEB_IDENTITY ukm_source_id which is generated |
| from the identity provider's origin. |
| </summary> |
| <metric name="FedCmSessionID"> |
| <summary> |
| Records the session ID associated to the FedCM call for which this event |
| is recording metrics. Each FedCM call gets a random integer session id, |
| which helps group UKM events by the session id. |
| </summary> |
| </metric> |
| <metric name="Status.RequestIdToken" enum="FedCmRequestIdTokenStatus"> |
| <summary> |
| Records the status of a request id token call to the FedCM API. |
| </summary> |
| </metric> |
| <metric name="Status.SignInStateMatch" enum="FedCmSignInStateMatchStatus"> |
| <summary> |
| Records whether user sign-in states between IDP and browser match after |
| browser receives an account list from IDP prior to showing UI. |
| </summary> |
| </metric> |
| <metric name="Timing.CancelOnDialog"> |
| <summary> |
| Records the time (in milliseconds) from when the accounts dialog is shown |
| to when the user closes the dialog without selecting any account. |
| </summary> |
| </metric> |
| <metric name="Timing.ContinueOnDialog"> |
| <summary> |
| Records the time (in milliseconds) from when the accounts dialog is shown |
| to when the user presses the Continue button. |
| </summary> |
| </metric> |
| <metric name="Timing.IdTokenResponse"> |
| <summary> |
| Records the time (in milliseconds) from when the user presses the Continue |
| button to when the id token response is received. |
| </summary> |
| </metric> |
| <metric name="Timing.ShowAccountsDialog"> |
| <summary> |
| Records the time (in milliseconds) from when a call to the API was made to |
| when the accounts dialog is shown. |
| </summary> |
| </metric> |
| <metric name="Timing.TurnaroundTime"> |
| <summary> |
| Records the overall time (in milliseconds) from when the API is called to |
| when the id token response is received. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.FindInPage" singular="True"> |
| <owner>vmpstr@chromium.org</owner> |
| <owner>chrishtr@chromium.org</owner> |
| <owner>paint-dev@chromium.org</owner> |
| <summary> |
| Logged once per page; indicates the type of find-in-page behaviors users |
| utilizied. |
| </summary> |
| <metric name="BeforematchExpandedHiddenMatchable"> |
| <summary> |
| Boolean indicating that a find-in-page match was hidden but became visible |
| after the beforematch event was fired. |
| </summary> |
| </metric> |
| <metric name="DidHaveRenderSubtreeMatch"> |
| <summary> |
| Boolean indicating whether there was an active match in content-visibility |
| unrendered elements. |
| </summary> |
| </metric> |
| <metric name="DidSearch"> |
| <summary> |
| Boolean indicating that find-in-page happened. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.HTMLParsing"> |
| <owner>schenney@chromium.org</owner> |
| <owner>dom-dev@chromium.org</owner> |
| <summary> |
| Logged once per page load, to capture information about invocation of the |
| HTMLDocumentParser for the initial document load. Does not include other |
| aspects of document parsing, such as style sheet parsing or script execution |
| during parsing. Also does not include innerText parsing. |
| |
| This event is not recorded on machines with low-resolution clocks. |
| </summary> |
| <metric name="ChunkCount"> |
| <summary> |
| The number of chunks parsed while loading the page. Each chunk represents |
| a piece of the HTML content that can be loaded without blocking or |
| yielding. |
| </summary> |
| </metric> |
| <metric name="ParsingTimeMax"> |
| <summary> |
| The maximum time used to parse a single chunk before being blocked, |
| yielding or completing, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ParsingTimeMin"> |
| <summary> |
| The minimum time used to parse a single chunk before being blocked, |
| yielding or completing, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ParsingTimeTotal"> |
| <summary> |
| The total amount of time spent in the HTMLDocumentParser parsing the page, |
| in microseconds. |
| </summary> |
| </metric> |
| <metric name="TokensParsedAverage"> |
| <summary> |
| The average number of tokens parsed across all chunks. |
| </summary> |
| </metric> |
| <metric name="TokensParsedMax"> |
| <summary> |
| The maximum number of tokens parsed as a chunk. |
| </summary> |
| </metric> |
| <metric name="TokensParsedMin"> |
| <summary> |
| The minimum number of tokens parsed as a chunk. |
| </summary> |
| </metric> |
| <metric name="TokensParsedTotal"> |
| <summary> |
| The total number of tokens parsed across all chunks. |
| </summary> |
| </metric> |
| <metric name="YieldedTimeAverage"> |
| <summary> |
| The average time between parsing of two chunks, in microseconds. Will be |
| zero if only one chunk was parsed. |
| </summary> |
| </metric> |
| <metric name="YieldedTimeMax"> |
| <summary> |
| The minimum time between parsing of two chunks, in microseconds. Will be |
| zero if only one chunk was parsed. |
| </summary> |
| </metric> |
| <metric name="YieldedTimeMin"> |
| <summary> |
| The maximum time between parsing of two chunks, in microseconds. Will be |
| zero if only one chunk was parsed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.PageLoad"> |
| <owner>schenney@chromium.org</owner> |
| <owner>paint-dev@chromium.org</owner> |
| <summary> |
| The aggregated time spent in each metric's component from creation of the |
| local frame view to the First Contentful Paint signal. The event is reported |
| once per page load when First Contentful Paint is signaled. |
| |
| This event is not recorded on machines with low-resolution clocks. |
| </summary> |
| <metric name="Accessibility"> |
| <summary> |
| The time spent in accessibility tree code, between navigation and First |
| Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="AnchorElementMetricsIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for anchor elements, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="Animate"> |
| <summary> |
| The time spent in main frame animation, between navigation and First |
| Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="Compositing"> |
| <obsolete> |
| Obsolete as of http://crrev.com/794384 and M86. |
| </obsolete> |
| <summary> |
| The time spent in main thread compositing, between navigation and First |
| Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="CompositingAssignments"> |
| <obsolete> |
| No longer recorded after M97 with the launch of CompositeAfterPaint. |
| </obsolete> |
| <summary> |
| The time spent in main thread compositing assignments, between navigation |
| and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="CompositingCommit"> |
| <summary> |
| The time spent committing main thread compositing results, between |
| navigation and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="CompositingInputs"> |
| <summary> |
| The time spent in main thread compositing inputs, between navigation and |
| First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ContentDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to update sub-document |
| content, between navigation and First Contentful Paint, in microseconds. |
| Includes SVG, Canvas and Plugins. |
| </summary> |
| </metric> |
| <metric name="DisplayLockIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for |
| DisplayLockDocumentState, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ForcedStyleAndLayout"> |
| <summary> |
| The time spent in forced style recalc and layouts, between navigation and |
| First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="HandleInputEvents"> |
| <summary> |
| The time spent in processing rAF-aligned input for the main frame, between |
| navigation and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="HitTestDocumentUpdate"> |
| <summary> |
| The time spent updating the document in preparation for a hit test for the |
| main frame, between navigation and First Contentful Paint, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="ImplCompositorCommit"> |
| <summary> |
| The time spent committing layer tree impl data in the compositor thread, |
| between navigation and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservation"> |
| <summary> |
| The time spent computing intersection observer state, between navigation |
| and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservationInternalCount"> |
| <summary> |
| The total number of times a blink-internal IntersectionObservation was |
| recomputed between navigation and First Contentful Paint. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservationJavascriptCount"> |
| <summary> |
| The total number of times a javascript-instantiated |
| IntersectionObservation was recomputed between navigation and First |
| Contentful Paint. |
| </summary> |
| </metric> |
| <metric name="JavascriptDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to generic Javascript API |
| requests, between navigation and First Contentful Paint, in microseconds. |
| Note this primarily captures Javascript that explicitly requires Style and |
| Layout, but not implicit requests such as through setting focus or scroll |
| position. |
| </summary> |
| </metric> |
| <metric name="JavascriptIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for javascript observers, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="Layout"> |
| <summary> |
| The time spent in layout document lifecycle work, between navigation and |
| First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="LazyLoadIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for lazy loading, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="MainFrame"> |
| <summary> |
| The time spent in ProxyMain::BeginMainFrame, between navigation and First |
| Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="MediaIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for media elements, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="Paint"> |
| <summary> |
| The time spent in paint document lifecycle work, between navigation and |
| First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ParseStyleSheet"> |
| <summary> |
| The time spent parsing style sheets. |
| </summary> |
| </metric> |
| <metric name="PrePaint"> |
| <summary> |
| The time spent in pre-paint document lifecycle work, between navigation |
| and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ProxyCommit"> |
| <obsolete> |
| Removed in M84 in favor of separate ImplCompositorCommit and WaitForCommit |
| metrics. |
| </obsolete> |
| <summary> |
| The time spent committing main thread to impl layer tree information, |
| between navigation and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ScrollingCoordinator"> |
| <obsolete> |
| Merged into CompositingCommit in http://crrev.com/815947 in M88. |
| </obsolete> |
| <summary> |
| The time spent in ScrollingCoordinator, between navigation and First |
| Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ServiceDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to browser requested |
| actions, such as accessibility, intersection observer or spell checking, |
| between navigation and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="Style"> |
| <summary> |
| The time spent in style document lifecycle work, between navigation and |
| First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="StyleAndLayout"> |
| <obsolete> |
| Removed January 2020 in favor of separate Style and Layout metrics. |
| </obsolete> |
| <summary> |
| The time spent in layout and style document lifecycle work, between |
| navigation and First Contentful Paint, in microseconds. Will be obsolete |
| in M-82. |
| </summary> |
| </metric> |
| <metric name="UpdateLayers"> |
| <summary> |
| The time spent in for LayerTreeHost::UpdateLayers, between navigation and |
| First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="UpdateViewportIntersection"> |
| <summary> |
| Time spent computing internal geometry information about iframes, between |
| navigation and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="UserDrivenDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to a user action such as |
| input, find-in-page or printing, between navigation and First Contentful |
| Paint, in microseconds. |
| |
| As of 04/2023, updates for scrolling are included in this metric. |
| </summary> |
| </metric> |
| <metric name="VisualUpdateDelay"> |
| <summary> |
| Time elapsed, in microseconds, between when an animation update is first |
| scheduled and when the resulting BeginMainFrame starts. |
| </summary> |
| </metric> |
| <metric name="WaitForCommit"> |
| <summary> |
| The time spent waiting for the compositor thread to begin processing a |
| commit, between navigation and First Contentful Paint, in microseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.PaintTiming" singular="True"> |
| <owner>npm@chromium.org</owner> |
| <owner>sullivan@chromium.org</owner> |
| <summary> |
| Paint timing metrics recorded in Blink, usually used as debugging metrics |
| for PaintTiming metrics in the PageLoad event. |
| </summary> |
| <metric name="LCPDebugging.HasViewportImage" enum="Boolean"> |
| <summary> |
| Records whether a page has an image whose size equals the full viewport. |
| Recorded when the LCP algorithm has stopped. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.Script.AsyncScripts" singular="True"> |
| <owner>dom@chromium.org</owner> |
| <owner>chrome-loading@google.com</owner> |
| <summary> |
| Metrics associated with the async script count associated with a document, |
| recorded when the HTML parsing of a mainframe has completed. |
| </summary> |
| <metric name="AsyncScriptCount"> |
| <obsolete> |
| Deprecated 04/2022. |
| </obsolete> |
| <summary> |
| The total number of async scripts associated with a document at the time |
| parsing has finished. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.UpdateTime"> |
| <owner>schenney@chromium.org</owner> |
| <owner>paint-dev@chromium.org</owner> |
| <summary> |
| Metrics that measure various update times in Blink. This includes paint, |
| compositing, and layout update times. This event is reported once in the |
| first main frame update after First Contentful Paint, with data from a |
| randomly chosen frame up to and including First Contentful Paint, and once |
| on LocalFrameView destruction with data from a random frame between |
| FirstContentfulPaint and shutdown. |
| |
| This event is not recorded on machines with low-resolution clocks. |
| </summary> |
| <metric name="Accessibility"> |
| <summary> |
| The time taken for accessibility for the main frame in microseconds during |
| the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="AccessibilityBeginMainFrame"> |
| <summary> |
| The total main frame time used in accessibility, in microseconds. |
| </summary> |
| </metric> |
| <metric name="AnchorElementMetricsIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for anchor elements, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="AnchorElementMetricsIntersectionObserverBeginMainFrame"> |
| <summary> |
| The total main frame time used to compute IntersectionObservations for |
| anchor elements, in microseconds. |
| </summary> |
| </metric> |
| <metric name="Animate"> |
| <summary> |
| The time taken for main frame animation in microseconds during the sampled |
| frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Animate.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken for main frame animation in microseconds in the |
| event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Animate.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken for main frame animation to the total time for the main frame. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="Animate.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken for main frame animation in microseconds in |
| the event period. |
| </summary> |
| </metric> |
| <metric name="Animate.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever used for main frame animation |
| within the sample window. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="AnimateBeginMainFrame"> |
| <summary> |
| The total main frame time used by by main thread animations, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="AnimatePercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with AnimateBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used by main thread animations. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="Compositing"> |
| <obsolete> |
| Obsolete as of http://crrev.com/794384. |
| </obsolete> |
| <summary> |
| The time taken by the compositing phase in microseconds during the sampled |
| frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Compositing.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken by the compositing phase in microseconds in the |
| event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Compositing.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken in the compositing phase to the total time for the main frame. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="Compositing.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken by the compositing phase in microseconds in |
| the event period. |
| </summary> |
| </metric> |
| <metric name="Compositing.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever used by the compositing phase |
| within the sample window. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="CompositingAssignments"> |
| <obsolete> |
| No longer recorded after M97 with the launch of CompositeAfterPaint. |
| </obsolete> |
| <summary> |
| The time taken by compositing assignments in microseconds during the |
| sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositingAssignmentsBeginMainFrame"> |
| <obsolete> |
| No longer recorded after M97 with the launch of CompositeAfterPaint. |
| </obsolete> |
| <summary> |
| The total main frame time used by the compositing assignments phase, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="CompositingAssignmentsPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with |
| CompositingAssignmentsBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used by the compositing assignments |
| phase. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="CompositingCommit"> |
| <summary> |
| The time taken by the compositing commit in microseconds during the |
| sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositingCommit.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken by the compositing commit at the end of the blink |
| lifecycle, in microseconds in the event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositingCommit.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken by the compositing commit at the end of the blink lifecycle to the |
| total time for the main frame. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="CompositingCommit.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken by the compositing commit at the end of the |
| blink lifecycle, in microseconds in the event period. |
| </summary> |
| </metric> |
| <metric name="CompositingCommit.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever taken by the compositing commit at |
| the end of the blink lifecycle to the total time for the main frame. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="CompositingCommitBeginMainFrame"> |
| <summary> |
| The total main frame time used by the compositing commit, in microseconds. |
| </summary> |
| </metric> |
| <metric name="CompositingCommitPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with CompositingCommitBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used by the compositing commit. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="CompositingInputs"> |
| <summary> |
| The time taken by the compositing inputs phase in microseconds during the |
| sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositingInputsBeginMainFrame"> |
| <summary> |
| The total main frame time used by the compositing inputs phase, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="CompositingInputsPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with CompositingInputsBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used by the compositing inputs |
| phase. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="CompositingPercentage"> |
| <obsolete> |
| Obsolete as of http://crrev.com/794384. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used by the compositing phase. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ContentDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to update sub-document |
| content, during a sampled frame, in microseconds. Includes SVG, Canvas and |
| Plugins. |
| </summary> |
| </metric> |
| <metric name="ContentDocumentUpdateBeginMainFrame"> |
| <summary> |
| The time spent doing forced document updates due to update sub-document |
| content, during the BeginMainFrame block of a sampled frame, in |
| microseconds. Includes SVG, Canvas and Plugins. |
| </summary> |
| </metric> |
| <metric name="DisplayLockIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for |
| DisplayLockDocumentState, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DisplayLockIntersectionObserverBeginMainFrame"> |
| <summary> |
| The total main frame time used to compute IntersectionObservations for |
| DisplayLockDocumentState, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ForcedStyleAndLayout"> |
| <summary> |
| The time taken by forced style recalc and layouts in microseconds between |
| the end of the last main frame update and the current sampled frame, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ForcedStyleAndLayout.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken by all forced style recalcs and layouts in |
| microseconds in the event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ForcedStyleAndLayout.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken by forced style recalc and layouts at the end of the blink lifecycle |
| to the total time for the main frame. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ForcedStyleAndLayout.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken by a forced style recalc and layout in |
| microseconds in the event period. |
| </summary> |
| </metric> |
| <metric name="ForcedStyleAndLayout.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever taken by forced style recalc and |
| layouts at the end of the blink lifecycle to the total time for the main |
| frame. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ForcedStyleAndLayoutBeginMainFrame"> |
| <summary> |
| The total main frame time used by forced style updates and layouts, in |
| microseconds. This metric may include time that is also included in the |
| AnimateBeginMainFrame metric. |
| </summary> |
| </metric> |
| <metric name="ForcedStyleAndLayoutPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with |
| ForcedStyleAndLayoutBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used by forced style updates and |
| layouts during the main frame update (not including time outside of the |
| frame update. This metric may include time that is also included in the |
| AnimatePercentage metric. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="HandleInputEvents"> |
| <summary> |
| The time taken to process rAF-aligned input for the main frame in |
| microseconds during the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="HandleInputEvents.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken to process rAF-aligned input for the main frame in |
| microseconds in the event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="HandleInputEvents.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken to process rAF-aligned input for the main frame to the total time |
| for the main frame. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="HandleInputEvents.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken to process rAF-aligned input for the main |
| frame in microseconds in the event period. |
| </summary> |
| </metric> |
| <metric name="HandleInputEvents.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever taken to process rAF-aligned input |
| for the main frame to the total time for the main frame. An int in the |
| range [0,100]. |
| </summary> |
| </metric> |
| <metric name="HandleInputEventsBeginMainFrame"> |
| <summary> |
| The total main frame time used in processing rAF-aligned input, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="HandleInputEventsPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with HandleInputEventsBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in processing rAF-aligned |
| input. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="HitTestDocumentUpdate"> |
| <summary> |
| The time taken to perform hit test document updates for the main frame in |
| microseconds during the sampled frame. It does not compute the actual hit |
| test time, rather the style, layout, compositing, etc time to prepare for |
| the test. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="HitTestDocumentUpdateBeginMainFrame"> |
| <summary> |
| The total main frame time used in performing hit test document updates, in |
| microseconds. |
| </summary> |
| </metric> |
| <metric name="HitTestDocumentUpdatePercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with |
| HitTestDocumentUpdateBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in performing hit test document |
| updates. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ImplCompositorCommit"> |
| <summary> |
| The time spent committing layer tree impl data in the compositor thread, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ImplCompositorCommitBeginMainFrame"> |
| <summary> |
| The total main frame time spent committing layer tree impl data in the |
| compositor thread, in microseconds. This should always match |
| ImplCompositorCommit and serves as a check. |
| </summary> |
| </metric> |
| <metric name="ImplCompositorCommitPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with |
| ImplCompositorCommitBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time spent committing layer tree impl |
| data in the compositor thread. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservation"> |
| <summary> |
| The time taken to compute intersection observer state for the main frame |
| in microseconds during the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IntersectionObservation.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken to compute IntersectionObserver observations in |
| microseconds in the event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IntersectionObservation.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken compute IntersectionObserver observations to the total time for the |
| main frame. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservation.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken to compute IntersectionObserver observations |
| in microseconds in the event period. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservation.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever taken to compute |
| IntersectionObserver observations within the sample window. An int in the |
| range [0,100]. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservationBeginMainFrame"> |
| <summary> |
| The total main frame time used to compute IntersectionObserver |
| observations, in microseconds. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservationInternalCount"> |
| <summary> |
| The number of blink-internal IntersectionObservations that were recomputed |
| during the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IntersectionObservationInternalCountBeginMainFrame"> |
| <summary> |
| The number of blink-internal IntersectionObservations that were recomputed |
| during the sampled frame. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservationJavascriptCount"> |
| <summary> |
| The number of javascript-instantiated IntersectionObservations that were |
| recomputed during the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IntersectionObservationJavascriptCountBeginMainFrame"> |
| <summary> |
| The number of javascript-instantiated IntersectionObservations that were |
| recomputed during the sampled frame. |
| </summary> |
| </metric> |
| <metric name="IntersectionObservationPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with |
| IntersectionObservationBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in computing intersection |
| observer state. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="JavascriptDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to generic Javascript API |
| requests, during a sampled frame, in microseconds. Note this primarily |
| captures Javascript that explicitly requires Style and Layout, but not |
| implicit requests such as through setting focus or scroll position. |
| </summary> |
| </metric> |
| <metric name="JavascriptDocumentUpdateBeginMainFrame"> |
| <summary> |
| The time spent doing forced document updates due to generic Javascript API |
| requests, during the BeginMainFrame block of a sampled frame, in |
| microseconds. Note this primarily captures Javascript that explicitly |
| requires Style and Layout, but not implicit requests such as through |
| setting focus or scroll position. |
| </summary> |
| </metric> |
| <metric name="JavascriptIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for javascript observers, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="JavascriptIntersectionObserverBeginMainFrame"> |
| <summary> |
| The total main frame time used to compute IntersectionObservations for |
| Javascript observers, in microseconds. |
| </summary> |
| </metric> |
| <metric name="Layout"> |
| <summary> |
| The time taken for layout for the main frame in microseconds during the |
| sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LayoutBeginMainFrame"> |
| <summary> |
| The total main frame time used in layout, in microseconds. |
| </summary> |
| </metric> |
| <metric name="LayoutPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with LayoutBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in layout work. An int in the |
| range [0,100]. |
| </summary> |
| </metric> |
| <metric name="LazyLoadIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for lazy loading, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LazyLoadIntersectionObserverBeginMainFrame"> |
| <summary> |
| The total main frame time used to compute IntersectionObservations for |
| lazy loading, in microseconds. |
| </summary> |
| </metric> |
| <metric name="MainFrame"> |
| <summary> |
| The time between a BeginMainFrame and the commit of paint results for the |
| sampled frame, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="MainFrame.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time between a BeginMainFrame and the commit of paint results, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="MainFrame.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time between a BeginMainFrame and the commit of paint |
| results, in microseconds. |
| </summary> |
| </metric> |
| <metric name="MainFrameIsBeforeFCP" enum="Boolean"> |
| <summary> |
| True if the lifecycle update in this event occurred before FCP (First |
| Contentful Paint) was registered. |
| </summary> |
| </metric> |
| <metric name="MainFrameReasons"> |
| <summary> |
| A bitfield representation of the reasons for a main frame update. The |
| fields are based on the FrameSequenceTrackerType enum, so bitwise and with |
| the following values to determine if a reason was present: |
| CompositorAnimation: 1, MainThreadAnimation: 2, PinchZoom: 4, RAF: 8, |
| TouchScroll: 16, Universal: 32, Video: 64 and WheelScroll: 128. |
| </summary> |
| </metric> |
| <metric name="MediaIntersectionObserver"> |
| <summary> |
| Time spent computing IntersectionObservations for media elements, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="MediaIntersectionObserverBeginMainFrame"> |
| <summary> |
| The total main frame time used to compute IntersectionObservations for |
| media elements, in microseconds. |
| </summary> |
| </metric> |
| <metric name="Paint"> |
| <summary> |
| The time taken to paint for the main frame in microseconds during the |
| sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Paint.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken by the paint phase in microseconds in the event |
| period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Paint.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken in the paint phase to the total time for the main frame. An int in |
| the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="Paint.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken by the paint phase in microseconds in the |
| event period. |
| </summary> |
| </metric> |
| <metric name="Paint.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever used by the paint phase within the |
| sample window. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="PaintBeginMainFrame"> |
| <summary> |
| The total main frame time used in paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="PaintPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with PaintBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in paint. An int in the range |
| [0,100]. |
| </summary> |
| </metric> |
| <metric name="ParseStyleSheet"> |
| <summary> |
| The time spent parsing style sheets. |
| </summary> |
| </metric> |
| <metric name="ParseStyleSheetBeginMainFrame"> |
| <summary> |
| The total main frame time spent parsing style sheets. |
| </summary> |
| </metric> |
| <metric name="PrePaint"> |
| <summary> |
| The time taken for pre-paint for the main frame in microseconds during the |
| sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PrePaint.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken by the pre-paint phase in microseconds in the event |
| period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PrePaint.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken in the pre-paint phase to the total time for the main frame. An int |
| in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="PrePaint.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken by the pre-paint phase in microseconds in |
| the event period. |
| </summary> |
| </metric> |
| <metric name="PrePaint.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever used by the pre-paint phase within |
| the sample window. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="PrePaintBeginMainFrame"> |
| <summary> |
| The total main frame time used in pre-paint, in microseconds. |
| </summary> |
| </metric> |
| <metric name="PrePaintPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with PrePaintBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in pre-paint. An int in the |
| range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ProxyCommit"> |
| <obsolete> |
| Removed in M84 in favor of separate ImplCompositorCommit and WaitForCommit |
| metrics. |
| </obsolete> |
| <summary> |
| The time taken for the proxy to commit to the impl thread in microseconds |
| during the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ProxyCommitPercentage"> |
| <obsolete> |
| Removed in M84 in favor of separate ImplCompositorCommit and WaitForCommit |
| metrics. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used to commit to the impl thread. |
| An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ScrollingCoordinator"> |
| <obsolete> |
| Merged into Blink.MainFrame.CompositingCommitRatio in |
| http://crrev.com/815947 in M88. |
| </obsolete> |
| <summary> |
| The time taken for scrolling coordinator for the main frame in |
| microseconds during the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ScrollingCoordinator.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken by the style and layout phases in microseconds in |
| the event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ScrollingCoordinator.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the event period of the ratio of time taken |
| to update the scrolling coordinator after painting to the total time for |
| the main frame, expressed as a percentage. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ScrollingCoordinator.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time within the event period that was used to update |
| the ScrollingCoordinator after painting (in microseconds). |
| </summary> |
| </metric> |
| <metric name="ScrollingCoordinator.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame within the event period that was used to |
| update the ScrollingCoordinator after painting, expressed as a percentage. |
| An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ScrollingCoordinatorPercentage"> |
| <obsolete> |
| Merged into Blink.MainFrame.CompositingCommitRatio in |
| http://crrev.com/815947 in M88. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in scrolling coordinator. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="ServiceDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to browser requested |
| actions, such as accessibility, intersection observer or spell checking, |
| during a sampled frame, in microseconds. |
| </summary> |
| </metric> |
| <metric name="ServiceDocumentUpdateBeginMainFrame"> |
| <summary> |
| The time spent doing forced document updates due to browser requested |
| actions, such as accessibility, intersection observer or spell checking, |
| during the BeginMainFrame block of a sampled frame, in microseconds. |
| </summary> |
| </metric> |
| <metric name="Style"> |
| <summary> |
| The time taken for style update for the main frame in microseconds during |
| the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="StyleAndLayout"> |
| <obsolete> |
| Removed January 2020 in favor of separate Style and Layout metrics. |
| </obsolete> |
| <summary> |
| The time taken for style and layout for the main frame in microseconds |
| during the sampled frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="StyleAndLayout.Average"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average time taken by the style and layout phases in microseconds in |
| the event period. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="StyleAndLayout.AverageRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The average over frames within the sample window of the ratio of time |
| taken to update style and layout to the total time for the main frame. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="StyleAndLayout.WorstCase"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The longest single time taken by the style and layout phases in |
| microseconds in the event period. |
| </summary> |
| </metric> |
| <metric name="StyleAndLayout.WorstCaseRatio"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <summary> |
| The highest proportion of a frame ever used to compute style and layout |
| within the sample window. An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="StyleAndLayoutPercentage"> |
| <obsolete> |
| Removed January 2020 in favor of separate Style and Layout metrics. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used in style and layout work. An |
| int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="StyleBeginMainFrame"> |
| <summary> |
| The total main frame time spent updating style information and building |
| the layout tree, in microseconds. |
| </summary> |
| </metric> |
| <metric name="StylePercentage"> |
| <summary> |
| The percentage of the main frame time used in style work. An int in the |
| range [0,100]. |
| </summary> |
| </metric> |
| <metric name="UpdateLayers"> |
| <summary> |
| The time taken for LayerTreeHost::UpdateLayers in microseconds during the |
| sampled frame |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UpdateLayersBeginMainFrame"> |
| <summary> |
| The total main frame time spent in LayerTreeHost::UpdateLayer, in |
| microseconds. This should always match UpdateLayers and serves as a check. |
| </summary> |
| </metric> |
| <metric name="UpdateLayersPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with UpdateLayersBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time used by LayerTreeHost::UpdateLayers. |
| An int in the range [0,100]. |
| </summary> |
| </metric> |
| <metric name="UpdateViewportIntersection"> |
| <summary> |
| Time spent computing internal geometry information about iframes, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UpdateViewportIntersectionBeginMainFrame"> |
| <summary> |
| The total main frame time used to compute internal geometry information |
| about iframes, in microseconds. |
| </summary> |
| </metric> |
| <metric name="UserDrivenDocumentUpdate"> |
| <summary> |
| The time spent doing forced document updates due to a user action such as |
| input, find-in-page or printing, during a sampled frame, in microseconds. |
| |
| As of 04/2023, updates for scrolling are included in this metric. |
| </summary> |
| </metric> |
| <metric name="UserDrivenDocumentUpdateBeginMainFrame"> |
| <summary> |
| The time spent doing forced document updates due to a user action such as |
| input, find-in-page or printing, during the BeginMainFrame block of a |
| sampled frame, in microseconds. |
| |
| As of 04/2023, updates for scrolling are included in this metric. |
| </summary> |
| </metric> |
| <metric name="VisualUpdateDelay"> |
| <summary> |
| Time elapsed between when an animation update is first scheduled and when |
| the resulting BeginMainFrame starts. |
| </summary> |
| </metric> |
| <metric name="VisualUpdateDelayBeginMainFrame"> |
| <summary> |
| Time elapsed between when an animation update is first scheduled and when |
| the resulting BeginMainFrame starts. |
| </summary> |
| </metric> |
| <metric name="WaitForCommit"> |
| <summary> |
| The time spent waiting for the compositor thread to begin processing a |
| commit, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WaitForCommitBeginMainFrame"> |
| <summary> |
| The total main frame time spent waiting for the compositor thread to begin |
| processing a commit, in microseconds. This should always match |
| WaitForCommit and serves as a check. |
| </summary> |
| </metric> |
| <metric name="WaitForCommitPercentage"> |
| <obsolete> |
| Deprecated as of 11/2020. Replaced with WaitForCommitBeginMainFrame. |
| </obsolete> |
| <summary> |
| The percentage of the main frame time spent waiting for the compositor |
| thread to begin processing a commit. An int in the range [0,100]. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Blink.UseCounter"> |
| <owner>chasej@chromium.org</owner> |
| <summary> |
| Collects data for a subset of UseCounter features where UMA UseCounter data |
| shows a behaviour that is rare but too common to blindly change. This metric |
| should be used to reason about whether a breaking change is acceptable or |
| not. |
| |
| Note: In M87, a number of use counters were removed from UKM reporting due |
| to being reported too frequently (high proportion across page loads). |
| </summary> |
| <metric name="Feature" enum="FeatureObserver"> |
| <summary> |
| Opt-in UseCounter feature. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IsMainFrameFeature" enum="Boolean"> |
| <summary> |
| Emits True(1) or False(0) to indicate whether the Feature recorded is in |
| the main frame or not. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BloatedRenderer"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <owner>ulan@chromium.org</owner> |
| <summary> |
| Metrics related to a bloated renderer that is close to out-of-memory. They |
| are recorded only if the renderer process has a single page. |
| </summary> |
| <metric name="V8.Heap"> |
| <summary> |
| The total physical size of V8's heap in MB. |
| </summary> |
| </metric> |
| <metric name="V8.Heap.AllocatedObjects"> |
| <summary> |
| The total size of allocated on V8's heap in MB. |
| </summary> |
| </metric> |
| <metric name="V8.Heap.Limit"> |
| <summary> |
| The V8 heap limit in MB. |
| </summary> |
| </metric> |
| <metric name="V8.NearV8HeapLimitHandling"> |
| <summary> |
| An enum that specifies how the near V8 heap limit event was handled. See |
| blink::NearV8HeapLimitHandling for the enum elements. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BrowsingTopics.DocumentBrowsingTopicsApiResult"> |
| <obsolete> |
| Deprecated 10/2022 in favor of |
| BrowsingTopics.DocumentBrowsingTopicsApiResult2 |
| </obsolete> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| The document.browsingTopics() result and other metadata. Recorded whenever |
| document.browsingTopics() is invoked from a context. If the API returns more |
| than 3 topics (e.g. due to custom configuration FeatureParam), only the |
| first 3 topics will be recorded. |
| </summary> |
| <metric name="EmptyReason" enum="BrowsingTopicsEmptyApiResultReason"> |
| <summary> |
| The reason why the API returns no topic. This metric won't be recorded if |
| the API returns any topic. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic0"> |
| <summary> |
| The returned topic ID at index 0. This metric won't be recorded if the API |
| returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic0IsTrueTopTopic" enum="Boolean"> |
| <summary> |
| Whether `ReturnedTopic0` is a true top topic, as opposed to a randomly |
| padded topic. This metric won't be recorded if the API returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic0ModelVersion"> |
| <summary> |
| The version of the model used to calculate `ReturnedTopic0`. This metric |
| won't be recorded if the API returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic0TaxonomyVersion"> |
| <summary> |
| The version of the taxonomy applicable to `ReturnedTopic0`. This metric |
| won't be recorded if the API returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic1"> |
| <summary> |
| The returned topic ID at index 1. This metric won't be recorded if the API |
| returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic1IsTrueTopTopic" enum="Boolean"> |
| <summary> |
| Whether `ReturnedTopic1` is a true top topic, as opposed to a randomly |
| padded topic. This metric won't be recorded if the API returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic1ModelVersion"> |
| <summary> |
| The version of the model used to calculate `ReturnedTopic1`. This metric |
| won't be recorded if the API returns less than 2 topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic1TaxonomyVersion"> |
| <summary> |
| The version of the taxonomy applicable to `ReturnedTopic1`. This metric |
| won't be recorded if the API returns less than 2 topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic2"> |
| <summary> |
| The returned topic ID at index 2. This metric won't be recorded if the API |
| returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic2IsTrueTopTopic" enum="Boolean"> |
| <summary> |
| Whether `ReturnedTopic2` is a true top topic, as opposed to a randomly |
| padded topic. This metric won't be recorded if the API returns no topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic2ModelVersion"> |
| <summary> |
| The version of the model used to calculate `ReturnedTopic2`. This metric |
| won't be recorded if the API returns less than 3 topics. |
| </summary> |
| </metric> |
| <metric name="ReturnedTopic2TaxonomyVersion"> |
| <summary> |
| The version of the taxonomy applicable to `ReturnedTopic2`. This metric |
| won't be recorded if the API returns less than 3 topics. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BrowsingTopics.DocumentBrowsingTopicsApiResult2"> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| The document.browsingTopics() result and other metadata. Recorded whenever |
| document.browsingTopics() is invoked from a context. If there are more than |
| 3 candidate topics (e.g. due to custom configuration FeatureParam), only the |
| first 3 candidate topics will be recorded. |
| </summary> |
| <metric name="CandidateTopic0"> |
| <summary> |
| The candidate topic ID at index 0. This metric won't be recorded if no |
| topics were derived from the candidate epochs (which can be due to |
| insufficient epochs, failed epoch topics calculation, cleared history, or |
| cleared/blocked individual topics). |
| </summary> |
| </metric> |
| <metric name="CandidateTopic0IsTrueTopTopic" enum="Boolean"> |
| <summary> |
| Whether `CandidateTopic0` is a true top topic (as opposed to a padded or |
| random one). This metric will be recorded iff `CandidateTopic0` is |
| recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic0ModelVersion"> |
| <summary> |
| The version of the model used to calculate `CandidateTopic0`. This metric |
| will be recorded iff `CandidateTopic0` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic0ShouldBeFiltered" enum="Boolean"> |
| <summary> |
| Whether `CandidateTopic0` should be filtered. This metric will be recorded |
| iff `CandidateTopic0` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic0TaxonomyVersion"> |
| <summary> |
| The version of the taxonomy applicable to `CandidateTopic0`. This metric |
| will be recorded iff `CandidateTopic0` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic1"> |
| <summary> |
| The candidate topic ID at index 1. This metric won't be recorded if less |
| than 2 topics were derived from the candidate epochs (which can be due to |
| insufficient epochs, failed epoch topics calculation, cleared history, or |
| cleared/blocked individual topics). |
| </summary> |
| </metric> |
| <metric name="CandidateTopic1IsTrueTopTopic" enum="Boolean"> |
| <summary> |
| Whether `CandidateTopic1` is a true top topic (as opposed to a padded or |
| random one). This metric will be recorded iff `CandidateTopic1` is |
| recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic1ModelVersion"> |
| <summary> |
| The version of the model used to calculate `CandidateTopic1`. This metric |
| will be recorded iff `CandidateTopic1` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic1ShouldBeFiltered" enum="Boolean"> |
| <summary> |
| Whether `CandidateTopic1` should be filtered. This metric will be recorded |
| iff `CandidateTopic1` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic1TaxonomyVersion"> |
| <summary> |
| The version of the taxonomy applicable to `CandidateTopic1`. This metric |
| will be recorded iff `CandidateTopic1` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic2"> |
| <summary> |
| The candidate topic ID at index 2. This metric won't be recorded if less |
| than 3 topics were derived from the candidate epochs (which can be due to |
| insufficient epochs, failed epoch topics calculation, cleared history, or |
| cleared/blocked individual topics). |
| </summary> |
| </metric> |
| <metric name="CandidateTopic2IsTrueTopTopic" enum="Boolean"> |
| <summary> |
| Whether `CandidateTopic2` is a true top topic (as opposed to a padded or |
| random one). This metric will be recorded iff `CandidateTopic2` is |
| recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic2ModelVersion"> |
| <summary> |
| The version of the model used to calculate `CandidateTopic2`. This metric |
| will be recorded iff `CandidateTopic2` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic2ShouldBeFiltered" enum="Boolean"> |
| <summary> |
| Whether `CandidateTopic2` should be filtered. This metric will be recorded |
| iff `CandidateTopic2` is recorded. |
| </summary> |
| </metric> |
| <metric name="CandidateTopic2TaxonomyVersion"> |
| <summary> |
| The version of the taxonomy applicable to `CandidateTopic2`. This metric |
| will be recorded iff `CandidateTopic2` is recorded. |
| </summary> |
| </metric> |
| <metric name="FailureReason" enum="BrowsingTopicsApiAccessResult"> |
| <summary> |
| The reason why the API access is not allowed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BrowsingTopics.EpochTopicsCalculationResult"> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| The epoch topics calculation result, including the top 5 topics and other |
| metadata. Recorded whenever the periodic (weekly) topics calculation has |
| finished. If the result has more than 5 topics (e.g. due to custom |
| configuration FeatureParam), only the first 5 topics will be recorded. |
| </summary> |
| <metric name="ModelVersion"> |
| <summary> |
| The version of the model used to calculate the result topics. This metric |
| won't be recorded if the topics calculation failed in general. |
| </summary> |
| </metric> |
| <metric name="PaddedTopicsStartIndex"> |
| <summary> |
| The start index of the randomly padded top topics. This metric won't be |
| recorded if the topics calculation failed in general. If all topics are |
| real, `PaddedTopicsStartIndex` will equal the feature param |
| `kBrowsingTopicsNumberOfTopTopicsPerEpoch`. |
| </summary> |
| </metric> |
| <metric name="TaxonomyVersion"> |
| <summary> |
| The version of the taxonomy applicable to the result topics. This metric |
| won't be recorded if the topics calculation failed in general. |
| </summary> |
| </metric> |
| <metric name="TopTopic0"> |
| <summary> |
| The top topic ID at index 0. This metric won't be recorded if the |
| candidate topic was blocked, or if the topics calculation failed in |
| general. |
| </summary> |
| </metric> |
| <metric name="TopTopic1"> |
| <summary> |
| The top topic ID at index 1. This metric won't be recorded if the |
| candidate topic was blocked, or if the topics calculation failed in |
| general. |
| </summary> |
| </metric> |
| <metric name="TopTopic2"> |
| <summary> |
| The top topic ID at index 2. This metric won't be recorded if the |
| candidate topic was blocked, or if the topics calculation failed in |
| general. |
| </summary> |
| </metric> |
| <metric name="TopTopic3"> |
| <summary> |
| The top topic ID at index 3. This metric won't be recorded if the |
| candidate topic was blocked, or if the topics calculation failed in |
| general. |
| </summary> |
| </metric> |
| <metric name="TopTopic4"> |
| <summary> |
| The top topic ID at index 4. This metric won't be recorded if the |
| candidate topic was blocked, or if the topics calculation failed in |
| general. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="BrowsingTopics.PageLoad"> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| PageLoad metrics for BrowsingTopics. Recorded when a page has Topics API |
| usages (that pass the user permission check), and the page is being |
| destroyed/navigated. |
| </summary> |
| <metric name="TopicsRequestingContextDomainsCount"> |
| <summary> |
| The number of unique context domains have requested the topics. Rounded to |
| the nearest exponential bucket (with a bucket ratio of 1.15). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ChargeEventHistory"> |
| <owner>thanhdng@chromium.org</owner> |
| <summary> |
| Records history of charge events including start time and duration of |
| charges. Can be used with other ChargeEventHistory to track the last 30 days |
| of charging events. If a "SmartCharging" event and a |
| "ChargeEventHistory" event has them same source ID and |
| "EventId", it means "ChargeEventHistory" is the charge |
| history when "SmartCharging" event is logged. ChargeEventHistory |
| records an array. Each ChargeEventHistory event records an item in the |
| array, specified by its index ChargeEventHistoryIndex. Items in the same |
| array will have same source ID and EventId. |
| </summary> |
| <metric name="ChargeEventHistoryDuration"> |
| <summary> |
| Duration of a history charge event. |
| </summary> |
| </metric> |
| <metric name="ChargeEventHistoryIndex"> |
| <summary> |
| Index of this event in the ChargeEventHistory array. Please see the event |
| summary for more details. |
| </summary> |
| </metric> |
| <metric name="ChargeEventHistorySize"> |
| <summary> |
| Number of items in ChargeEventHistory array. Please see the event summary |
| for more details. |
| </summary> |
| </metric> |
| <metric name="ChargeEventHistoryStartTime"> |
| <summary> |
| Duration (in minutes) between start time of a charge event and logging |
| time. |
| </summary> |
| </metric> |
| <metric name="EventId"> |
| <summary> |
| A unique number that represent order of an event. Used combined with |
| "SmartCharging"'s EventId to reconstruct charge history. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ChromeOS.DeviceManagement"> |
| <owner>siakabaro@google.com</owner> |
| <summary> |
| Records the ChromeOS device management state. This event is recorded once |
| per UKM report and is not associated with a source URL. |
| </summary> |
| <metric name="EnrollmentStatus" enum="EnrollmentStatus"> |
| <summary> |
| An enum value representing the enrollment status of a ChromeOS device. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ChromeOS.WebsiteUsageTime"> |
| <owner>nancylingwang@chromium.org</owner> |
| <owner>dominickn@chromium.org</owner> |
| <summary> |
| Records the amount of time that the focused and activated website was |
| accessed in last two hours on Chrome OS. This is logged each two hours, and |
| only when the website is not installed as a PWA or Chrome app. |
| </summary> |
| <metric name="Duration"> |
| <summary> |
| The milliseconds that the website was accessed in the focused tab and the |
| activated browser window. The accessing time is calculated each five |
| minutes, then the noise is applied, and sum the running time for five |
| minutes with noise to calculate the two hours accessing time. For example |
| the running time in the past 2 hours = time1 * noise1 + time2 * noise2 + |
| time3 * noise3.... |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IsFromLastLogin" enum="Boolean"> |
| <summary> |
| Whether the metrics is read from the user pref on disk, recorded for the |
| last login. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Promotable" enum="Boolean"> |
| <summary> |
| Whether the website can be an installable web app. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UrlContent" enum="URLContent"> |
| <obsolete> |
| Deprecated as of 01/2023. |
| </obsolete> |
| <summary> |
| The url content, e.g. full url, scope. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UserDeviceMatrix" enum="UserDeviceMatrix"> |
| <summary> |
| An enum that records the user type and the device type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ChromeOSApp.InputEvent"> |
| <owner>nancylingwang@chromium.org</owner> |
| <owner>dominickn@chromium.org</owner> |
| <summary> |
| Records each five minutes in Chrome OS to log the input events happened on |
| the app window. This is logged only when the user allows app syncing or |
| allows sync of everything, and the user does not set up a sync passphrase. |
| </summary> |
| <metric name="AppInputEventCount"> |
| <summary> |
| The number of the input events happened in each five minutes. |
| </summary> |
| </metric> |
| <metric name="AppInputEventSource" enum="AppInputEventSource"> |
| <summary> |
| An enum that records the input event source. |
| </summary> |
| </metric> |
| <metric name="AppType" enum="AppType"> |
| <summary> |
| An enum that records the app type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UserDeviceMatrix" enum="UserDeviceMatrix"> |
| <summary> |
| An enum that records the user type and the device type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ChromeOSApp.InstalledApp"> |
| <owner>nancylingwang@chromium.org</owner> |
| <owner>dominickn@chromium.org</owner> |
| <summary> |
| Records the installed app in Chrome OS, only when the user allows app |
| syncing or allows sync of everything, and the user does not set up a sync |
| passphrase. Only ARC apps, Chrome apps and web apps(PWA), system web apps, |
| buildin apps are recorded. This is logged when the user installs a new app. |
| </summary> |
| <metric name="AppType" enum="AppType"> |
| <summary> |
| An enum that records the app type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InstallReason" enum="InstallReason"> |
| <summary> |
| An enum that records the reason why the app was installed. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InstallSource" enum="InstallSource"> |
| <obsolete> |
| Removed in M96. Replaced with InstallReason. |
| </obsolete> |
| <summary> |
| An enum that records how the app was installed. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InstallSource2" enum="InstallSource2"> |
| <summary> |
| An enum that records where the app was installed. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InstallTime" enum="InstallTime"> |
| <summary> |
| An enum that records when the app was installed. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UserDeviceMatrix" enum="UserDeviceMatrix"> |
| <summary> |
| An enum that records the user type and the device type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ChromeOSApp.Launch"> |
| <owner>nancylingwang@chromium.org</owner> |
| <owner>dominickn@chromium.org</owner> |
| <summary> |
| Records a launched app in Chrome OS, only when the user allows app syncing |
| or allows sync of everything, and the user does not set up a sync |
| passphrase. Only ARC apps, Chrome apps and web apps(PWA), system web apps, |
| buildin apps are recorded. This is logged when an app is launched. |
| </summary> |
| <metric name="AppType" enum="AppType"> |
| <summary> |
| An enum that records the app type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LaunchSource" enum="LaunchSource"> |
| <summary> |
| An enum that records where the app was launched. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UserDeviceMatrix" enum="UserDeviceMatrix"> |
| <summary> |
| An enum that records the user type and the device type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ChromeOSApp.UninstallApp"> |
| <owner>nancylingwang@chromium.org</owner> |
| <owner>dominickn@chromium.org</owner> |
| <summary> |
| Records the uninstalled app in Chrome OS, only when the user allows app |
| syncing or allows sync of everything, and the user does not set up a sync |
| passphrase. Only ARC apps, Chrome apps and web apps(PWA), system web apps, |
| buildin apps are recorded. This is logged when the user uninstalls an app. |
| </summary> |
| <metric name="AppType" enum="AppType"> |
| <summary> |
| An enum that records the app type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UninstallSource" enum="UninstallSource"> |
| <summary> |
| An enum that records how the app was uninstalled. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UserDeviceMatrix" enum="UserDeviceMatrix"> |
| <summary> |
| An enum that records the user type and the device type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ChromeOSApp.UsageTime"> |
| <owner>nancylingwang@chromium.org</owner> |
| <owner>dominickn@chromium.org</owner> |
| <summary> |
| Records the amount of time that the app were used in the last five minutes |
| on Chrome OS, only when the user allows app syncing or allows sync of |
| everything, and the user does not set up a sync passphrase. Only ARC apps, |
| Chrome apps and web apps(PWA), system web apps, buildin apps are recorded. |
| This is logged every five minutes. |
| </summary> |
| <metric name="AppType" enum="AppType"> |
| <summary> |
| An enum that records the app type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration"> |
| <summary> |
| The milliseconds that the app was used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UserDeviceMatrix" enum="UserDeviceMatrix"> |
| <summary> |
| An enum that records the user type and the device type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ChromeOSApp.UsageTimeReusedSourceId"> |
| <owner>nancylingwang@chromium.org</owner> |
| <owner>dominickn@chromium.org</owner> |
| <summary> |
| Records the amount of time that the app were used in the last five minutes |
| on Chrome OS, only when the user allows app syncing or allows sync of |
| everything, and the user does not set up a sync passphrase. Only ARC apps, |
| Chrome apps and web apps(PWA), system web apps, buildin apps are recorded. |
| This is logged every two hours. |
| </summary> |
| <metric name="AppType" enum="AppType"> |
| <summary> |
| An enum that records the app type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration"> |
| <summary> |
| The milliseconds that the app was used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UserDeviceMatrix" enum="UserDeviceMatrix"> |
| <summary> |
| An enum that records the user type and the device type. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ClickInput" singular="True"> |
| <owner>dougarnett@chromium.org</owner> |
| <summary> |
| Metrics associated with user click input. In particular, captures when user |
| has a burst of clicks at the same location which may be a signal of user |
| unhappiness for an experiment if it differs from the baseline data for the |
| site. |
| </summary> |
| <metric name="Experimental.ClickInputBurst"> |
| <summary> |
| The count of the largest burst of click inputs for a page load. Only |
| recorded if it meets a minimum threshold to be considered a burst. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ClientHints.AcceptCHFrameUsage"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>victortan@chromium.org</owner> |
| <summary> |
| Record when a Client Hint is requested in an ACCEPT_CH TLS Frame. |
| </summary> |
| <metric name="Type" enum="WebClientHintsType"> |
| <summary> |
| Records an enum representing the specific Client Hint type that was |
| requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ClientHints.AcceptCHHeaderUsage"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>victortan@chromium.org</owner> |
| <summary> |
| Record when a Client Hint is requested in a Accept-CH HTTP Response Header. |
| </summary> |
| <metric name="Type" enum="WebClientHintsType"> |
| <summary> |
| Records an enum representing the specific Client Hint type that was |
| requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ClientHints.AcceptCHMetaUsage"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>victortan@chromium.org</owner> |
| <summary> |
| Record when a Client Hint is requested in a Accept-CH HTML Meta Tag. |
| </summary> |
| <metric name="Type" enum="WebClientHintsType"> |
| <summary> |
| Records an enum representing the specific Client Hint type that was |
| requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ClientHints.CriticalCHHeaderUsage"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>victortan@chromium.org</owner> |
| <summary> |
| Record when a Client Hint is requested in a Critical-CH HTTP Response |
| Header. |
| </summary> |
| <metric name="Type" enum="WebClientHintsType"> |
| <summary> |
| Records an enum representing the specific Client Hint type that was |
| requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ClientHints.DelegateCHMetaUsage"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>victortan@chromium.org</owner> |
| <summary> |
| Record when a Client Hint is requested in a Delegate-CH HTML Meta Tag. |
| </summary> |
| <metric name="Type" enum="WebClientHintsType"> |
| <summary> |
| Records an enum representing the specific Client Hint type that was |
| requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ClientRenderingAPI"> |
| <owner>aaronhk@chromium.org</owner> |
| <owner>cwallez@chromium.org</owner> |
| <owner>enga@chromium.org</owner> |
| <owner>fserb@chromium.org</owner> |
| <owner>jdarpinian@chromium.org</owner> |
| <owner>juanmihd@chromium.org</owner> |
| <owner>kainino@chromium.org</owner> |
| <owner>kbr@chromium.org</owner> |
| <owner>shrekshao@google.com</owner> |
| <summary> |
| Metrics collecting types of rendering context created with |
| canvas/offscreencanvas. It also collects requests of GPU device via WebGPU |
| API. |
| </summary> |
| <metric name="Canvas.RenderingContext" enum="CanvasRenderingAPI"> |
| <summary> |
| Type of rendering contexts created for HTMLCanvasElement. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Canvas.RenderingContextDrawnTo" enum="CanvasRenderingAPI"> |
| <summary> |
| Type of rendering contexts created for HTMLCanvasElement that something |
| has actually been drawn to. For WebGL 1 and 2 context this means there is |
| at least one draw call issued. For other context types we leave the |
| implementation blank at this moment. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="GPUDevice"> |
| <summary> |
| Event fired when a GPUDevice from the WebGPU API is created. |
| </summary> |
| </metric> |
| <metric name="OffscreenCanvas.RenderingContext" enum="CanvasRenderingAPI"> |
| <summary> |
| Type of rendering contexts created for OffscreenCanvas. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="OffscreenCanvas.RenderingContextDrawnTo" |
| enum="CanvasRenderingAPI"> |
| <summary> |
| Type of rendering contexts created for OffscreenCanvas that something has |
| actually been drawn to. For WebGL 1 and 2 context this means there is at |
| least one draw call issued. For other context types we leave the |
| implementation blank at this moment. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Companion.PageView"> |
| <owner>shaktisahu@chromium.org</owner> |
| <summary> |
| Records metrics for the companion side panel. The events correspond to a |
| single page load in the main frame and the metrics are flushed when the page |
| navigates away. For most of the UI surfaces, only the last event (e.g. |
| displayed or clicked) is recorded. |
| </summary> |
| <metric name="CQ.ChildElementCount"> |
| <summary> |
| The number of child elements shown within the CQ suface, e.g. the number |
| of related queries in the related queries component. Clamped to a max |
| value of 10. |
| </summary> |
| </metric> |
| <metric name="CQ.LastEvent" enum="Companion.UiEvent"> |
| <summary> |
| The last event on the CQ surface. |
| </summary> |
| </metric> |
| <metric name="PH.LastEvent" enum="Companion.UiEvent"> |
| <summary> |
| The last event on the PH surface. |
| </summary> |
| </metric> |
| <metric name="PromoEvent" enum="Companion.PromoEvent"> |
| <summary> |
| The last event on the promo surface. |
| </summary> |
| </metric> |
| <metric name="RegionSearch.ClickCount"> |
| <summary> |
| The number of times region search in the multimodal box was clicked. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Compositor.Rendering"> |
| <owner>khushalsagar@chromium.org</owner> |
| <summary> |
| Metrics related to rendering in the compositor. |
| </summary> |
| <metric name="CheckerboardedImagesCount"> |
| <summary> |
| The number of images checker-imaged and re-rasterized on this page. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Compositor.UserInteraction"> |
| <owner>khushalsagar@chromium.org</owner> |
| <summary> |
| Metrics related to user interaction handled by the compositor. This includes |
| user gestures like scrolling, pinch-zoom and page-scale animations triggered |
| in response to a double-tap event. The length of the user interaction is |
| defined as the time the compositor is running an animation resulting from |
| user input. |
| </summary> |
| <metric name="CheckerboardedContentArea"> |
| <summary> |
| The number of visible pixels per frame checkerboarded during this |
| interaction. |
| </summary> |
| </metric> |
| <metric name="CheckerboardedContentAreaRatio"> |
| <summary> |
| The percentage of visible pixels per frame checkerboarded during this |
| interaction. This value should be between [0, 100]. |
| </summary> |
| </metric> |
| <metric name="CheckerboardedImagesCount"> |
| <summary> |
| The number of images checker-imaged and re-rasterized during this |
| interaction. |
| </summary> |
| </metric> |
| <metric name="NumMissingTiles"> |
| <summary> |
| The number of visible tiles per frame checkerboarded during this |
| interaction. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContactsPicker.ShareStatistics"> |
| <owner>finnur@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Measures statistics about the contacts shared in the contacts picker (when |
| the Contacts Picker dialog is dismissed.) |
| </summary> |
| <metric name="PropertiesRequested"> |
| <summary> |
| Measures the contact properties requested by the website (names, emails, |
| telephone numbers). Bit 1 - telephone numbers, bit 2 - emails, bit 3 - |
| names. |
| </summary> |
| </metric> |
| <metric name="SelectCount"> |
| <summary> |
| Measures the total number of contacts selected in the contacts picker. |
| </summary> |
| </metric> |
| <metric name="SelectPercentage"> |
| <summary> |
| Measures the percentage of contacts selected in the contacts picker. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContentIndex.Added"> |
| <owner>rayankans@chromium.org</owner> |
| <summary> |
| Collected when a new Content Index entry is registered. |
| </summary> |
| <metric name="Category" enum="ContentIndexCategory"> |
| <summary> |
| The type of the content registered. Corresponds to |
| blink.mojom.ContentCategory. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContentIndex.DeletedByUser"> |
| <owner>rayankans@chromium.org</owner> |
| <summary> |
| Collected when a Content Index entry is deleted by the user from the |
| Downloads page. |
| </summary> |
| <metric name="Deleted" enum="Boolean"> |
| <summary> |
| Always true. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContentIndex.Opened"> |
| <owner>rayankans@chromium.org</owner> |
| <summary> |
| Collected when a Content Index entry is opened from the Downloads page. |
| </summary> |
| <metric name="IsOffline" enum="Boolean"> |
| <summary> |
| Whether the browser was offline when the content was opened. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContextMenuAndroid.Selected"> |
| <owner>benwgold@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <metric name="Action"> |
| <summary> |
| Emits an integer id for a selection corresponding to the action enum |
| defined in ChromeContextMenuPopulator.java (within the ContextMenuUma |
| class). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContextMenuAndroid.Shown"> |
| <owner>benwgold@google.com</owner> |
| <owner>twellington@chromium.org</owner> |
| <metric name="SearchByImage" enum="Boolean"> |
| <summary> |
| Recorded when the context menu is constructed and logged if the search by |
| image option was displayed. |
| </summary> |
| </metric> |
| <metric name="SearchWithGoogleLens" enum="Boolean"> |
| <summary> |
| Recorded when the context menu is constructed and logged if the Lens |
| option was displayed. |
| </summary> |
| </metric> |
| <metric name="ShopWithGoogleLens" enum="Boolean"> |
| <summary> |
| Recorded when the context menu is constructed and logged if the Lens |
| shopping option was displayed. |
| </summary> |
| </metric> |
| <metric name="ShopWithGoogleLensChip" enum="Boolean"> |
| <summary> |
| Recorded when the context menu is constructed and logged if the Lens |
| shopping chip was displayed. |
| </summary> |
| </metric> |
| <metric name="TranslateWithGoogleLensChip" enum="Boolean"> |
| <summary> |
| Recorded when the context menu is constructed and logged if the Lens |
| translate chip was displayed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContextualSearch"> |
| <obsolete> |
| Deprecated as of 05/2022. |
| </obsolete> |
| <owner>donnd@chromium.org</owner> |
| <summary> |
| Metrics related to a Contextual Search Tap event on a page, for use with |
| Ranker. These metrics are recorded each time the user triggers the |
| Contextual Search UI via a tap gesture (when enabled). |
| </summary> |
| <metric name="DidOptIn"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the user has Opted-in to the privacy |
| conditions for Contextual Search or not. |
| </summary> |
| </metric> |
| <metric name="DurationAfterScrollMs"> |
| <summary> |
| Duration in MS between showing the UI and a subsequent scroll event, or |
| not recorded if there was no subsequent scroll. |
| </summary> |
| </metric> |
| <metric name="EntityImpressionsCount"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the number of |
| impressions of an Entity that were shown in the Bar, aggregated in Android |
| device storage for this user, starting in M-69. |
| </summary> |
| </metric> |
| <metric name="EntityOpensCount"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the number of times |
| an Entity was shown in the Bar and the panel was opened, aggregated in |
| Android device storage for this user, starting in M-69. |
| </summary> |
| </metric> |
| <metric name="FontSize"> |
| <summary> |
| Emits a value from 0-10 representing the effective font size on the |
| screen. A value of 0 means the font size cannot be obtained. A value of 1 |
| represents a very small font and a value of 10 represents a large font. |
| </summary> |
| </metric> |
| <metric name="IsEntity"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the word tapped appears to be part of |
| an entity, given simple English language rules that check capitalization |
| and punctuation. |
| </summary> |
| </metric> |
| <metric name="IsEntityEligible"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the IsEntity boolean ever had a chance |
| of being true or not. When we're dealing with languages other than ones |
| where our simple entity-detection can work this signal is false. |
| </summary> |
| </metric> |
| <metric name="IsHttp"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the base page is HTTP (insecure). |
| </summary> |
| </metric> |
| <metric name="IsLanguageMismatch"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the language of the base page is a |
| mismatch from the list of languages the user knows, so they might want |
| translation. |
| </summary> |
| </metric> |
| <metric name="IsLongWord"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the word tapped was considered long (at |
| least 10 chars in length). |
| </summary> |
| </metric> |
| <metric name="IsSecondTapOverride"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the tap was an override of normal tap |
| suppression because it was considered a second tap on a word after the |
| first tap was suppressed. |
| </summary> |
| </metric> |
| <metric name="IsShortWord"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the word tapped was considered short |
| (less than 4 characters in length). |
| </summary> |
| </metric> |
| <metric name="IsWordEdge"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the tap gesture was on the edge of a |
| word, rather than in the middle 50% of the word. |
| </summary> |
| </metric> |
| <metric name="OpenCount"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the total number of |
| times the user opened the panel, aggregated in Android device storage for |
| this user since M-69. |
| </summary> |
| </metric> |
| <metric name="OutcomeRankerDidPredict"> |
| <summary> |
| Emits a 1 or 0 to indicate whether Ranker was able to make a prediction. |
| </summary> |
| </metric> |
| <metric name="OutcomeRankerPrediction"> |
| <summary> |
| Emits a 1 or 0 to indicate what Ranker's prediction was for this record. |
| Recorded only when OutcomeRankerDidPredict is true. |
| </summary> |
| </metric> |
| <metric name="OutcomeRankerPredictionScore"> |
| <summary> |
| Emits a single-precision float to indicate the score for the Ranker |
| prediction for this record. Recorded only when OutcomeRankerDidPredict is |
| true. |
| </summary> |
| </metric> |
| <metric name="OutcomeWasCardsDataShown"> |
| <summary> |
| Emits a 1 or 0 to indicate whether any Contextual Cards data was shown in |
| the Contextual Search Bar. |
| </summary> |
| </metric> |
| <metric name="OutcomeWasPanelOpened"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the user opened the overlay panel. This |
| is the primary outcome metric. |
| </summary> |
| </metric> |
| <metric name="OutcomeWasQuickActionClicked"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the user clicked within the overlay |
| panel when a Quick-Action was shown. This is a secondary outcome metric. |
| </summary> |
| </metric> |
| <metric name="OutcomeWasQuickAnswerSeen"> |
| <summary> |
| Emits a 1 or 0 to indicate whether the user could see a Quick-Answer |
| caption within the overlay panel. This is a tertiary outcome metric. |
| </summary> |
| </metric> |
| <metric name="PortionOfElement"> |
| <summary> |
| Emits an integer in the range 0-10 inclusive that expresses the portion of |
| the enclosing element that is the word tapped. A zero will be emitted if |
| the ratio cannot be calculated. A value of 10 means the word spans the |
| entire element, and a value of 1 means the word is 10% or less than the |
| entire element. |
| </summary> |
| </metric> |
| <metric name="Previous28DayCtrPercent"> |
| <summary> |
| The CTR of the overlay panel for this user, aggregated in Android device |
| storage over a previous 28 day period, expressed as an integer between |
| 0-99, since M-60. |
| </summary> |
| </metric> |
| <metric name="Previous28DayImpressionsCount"> |
| <summary> |
| The count of views of the overlay panel for this user, aggregated in |
| Android device storage over a previous 28 day period, since M-60. |
| </summary> |
| </metric> |
| <metric name="PreviousWeekCtrPercent"> |
| <summary> |
| The CTR of the overlay panel for this user, aggregated in Android device |
| storage over the previous week, expressed as an integer between 0-99, |
| since M-60. |
| </summary> |
| </metric> |
| <metric name="PreviousWeekImpressionsCount"> |
| <summary> |
| The count of views of the overlay panel for this user, aggregated in |
| Android device storage over the previous week, since M-60. |
| </summary> |
| </metric> |
| <metric name="QuickActionImpressionsCount"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the total number of |
| times the user saw a quick action in the caption of the Bar, e.g. a phone |
| number to dial. Aggregated in Android device storage since M-69 for this |
| user. |
| </summary> |
| </metric> |
| <metric name="QuickActionsIgnored"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the total number of |
| times the user ignored a quick action but opened the Bar instead, e.g. a |
| phone number was available but not dialed. Aggregated in Android device |
| storage starting at M-69. |
| </summary> |
| </metric> |
| <metric name="QuickActionsTaken"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the total number of |
| times the user activated a quick action by tapping on a quick action shown |
| in the Bar, e.g. dialed a phone number. Aggregated in Android device |
| storage since M-69 for this user. |
| </summary> |
| </metric> |
| <metric name="QuickAnswerCount"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the total number of |
| times the user saw a quick answer in the caption of the Bar. Typically |
| these quick answers represent an automatic translation of the selection. |
| Aggregated in Android device storage for all time for this user, since |
| M-57. |
| </summary> |
| </metric> |
| <metric name="ScreenTopDps"> |
| <summary> |
| The location of the tap relative to the top of the screen, expressed in |
| DPs. |
| </summary> |
| </metric> |
| <metric name="TapCount"> |
| <summary> |
| Emits an integer in the range of 0 - N that represents the total number of |
| taps that triggered the Bar, aggregated in Android device storage for this |
| user, since M-43. |
| </summary> |
| </metric> |
| <metric name="TapDurationMs"> |
| <summary> |
| The duration of the tap gesture expressed as an integer in milliseconds. |
| </summary> |
| </metric> |
| <metric name="WasScreenBottom"> |
| <summary> |
| The location of the tap relative to the bottom of the screen, expressed as |
| an integer with 0 meaning not at the bottom and 1 meaning at the bottom. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ContextualSuggestions"> |
| <obsolete> |
| This feature was deprecated in M74 |
| </obsolete> |
| <owner>donnd@chromium.org</owner> |
| <owner>fgorski@chromium.org</owner> |
| <owner>twellington@chromium.org</owner> |
| <owner>zea@chromium.org</owner> |
| <summary> |
| Metrics related to Contextual Suggestions shown in the Chrome Assistive |
| Surface, aka EoC shown in CAS. These metrics are recorded each time the |
| Contextual Suggestions UI is dismissed. Each record always contains a value |
| for every metric known at the time of the implementation. |
| </summary> |
| <metric name="AnyDownloaded"> |
| <summary> |
| Emits an integer in the range 0-1 to indicate whether the user downloaded |
| any suggestions. |
| </summary> |
| </metric> |
| <metric name="AnySuggestionTaken"> |
| <summary> |
| Emits an integer in the range 0-1 to indicate whether any suggestion link |
| was taken. |
| </summary> |
| </metric> |
| <metric name="ClosedFromPeek"> |
| <summary> |
| Emits an integer in the range 0-1 to indicate whether the peeking sheet |
| was closed by tapping on the close button. |
| </summary> |
| </metric> |
| <metric name="EverOpened"> |
| <summary> |
| Emits an integer in the range 0-1 to indicate whether the sheet was ever |
| opened. |
| </summary> |
| </metric> |
| <metric name="FetchState"> |
| <summary> |
| Emits an integer in the range 0-7 to indicate the ending state of the data |
| fetcher and results returned. A value of 0 indicates not-started, a 7 |
| indicates fetch-completed with suggestions. See the code for details. |
| </summary> |
| </metric> |
| <metric name="ShowDurationBucketMin"> |
| <summary> |
| Emits an integer in the range 0-N to indicate the duration that the sheet |
| was shown before a positive or negative action was taken. A value of 0 |
| indicates that the UI was never shown. A value greater than 0 indicates |
| that some user interaction occurred taking at least the indicated number |
| of milliseconds, but less than twice that amount. This exponential |
| bucketing is done for privacy reasons, and uses the UKM |
| GetExponentialBucketMin method with a value of 2.0 for spacing. |
| </summary> |
| </metric> |
| <metric name="TriggerEvent"> |
| <summary> |
| Emits an integer in the range 0-2 to indicate whether the contextual |
| suggestions UI was ever triggered and how it was triggered. A value of 0 |
| indicates never-shown, a 1 indicates peeked in response to a |
| reverse-scroll (deprecated), and 2 indicates that the toolbar button was |
| shown (the only trigger currently supported). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="CPUUsageMeasurement"> |
| <owner>chrisha@chromium.org</owner> |
| <owner>siggi@chromium.org</owner> |
| <summary> |
| A CPU usage measurement that corresponds to a tick in a CPU usage |
| time-series. There is also some metadata stored to determine how faithful |
| the CPU usage measurement is (e.g. NumberOfCoresidentTabs). |
| </summary> |
| <metric name="CPUUsage"> |
| <summary> |
| CPU usage measurement. This is in units of clock-cycles. For example, 1.2 |
| seconds of 100% CPU usage on a 2.5GHz CPU corresponds to a value of 1.2 x |
| 1.0 x 2.5e9 = 3e6. |
| </summary> |
| </metric> |
| <metric name="EventType"> |
| <summary> |
| The event associated with the measurement. This is an integer value |
| corresponding to the enum defined in |
| resource_coordinator::RenderProcessProbe. |
| </summary> |
| </metric> |
| <metric name="IsVisible"> |
| <summary> |
| Indicates if any frame hosted in this tab is visible at the moment the |
| measurement is taken. |
| </summary> |
| </metric> |
| <metric name="NumberOfCoresidentTabs"> |
| <summary> |
| Number of co-resident tabs in all of the render processes a tab is |
| associated with when the CPU usage measurement is taken. |
| </summary> |
| </metric> |
| <metric name="ObservationWindowSizeMs"> |
| <summary> |
| The size of the observation window (time since last CPU measurement) in |
| milliseconds. |
| </summary> |
| </metric> |
| <metric name="ProcessUptimeMs"> |
| <summary> |
| The uptime of the process being measured, in milliseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="CrossOriginSubframeWithoutEmbeddingControl"> |
| <owner>clamy@chromium.org</owner> |
| <summary> |
| Recorded when a subframe is embedded in a cross-origin context without |
| having a CSP frame-ancestor header or an XFO header. |
| </summary> |
| <metric name="SubframeEmbedded"> |
| <summary> |
| Mesaures the number of pages with subframes embedded in cross-origin |
| contexts without having a CSP frame-ancestor header or an XFO header. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="DailyChargeSummary"> |
| <owner>thanhdng@chromium.org</owner> |
| <summary> |
| Records daily summaries of charging. DailyChargeSummary summarizes charging |
| information (e.g. amount of time on full charge, amount of time on AC |
| adapter, etc) in a day. It can be used in combination with other |
| DailyChargeSummary events to get information about the last 30 days of |
| charging. If a "SmartCharging" event and a |
| "DailyChargeSummary" event has them same source ID and |
| "EventId", it means "DailyChargeSummary" is the summary |
| when "SmartCharging" event is logged. DailyChargeSummary records |
| an array. Each event records an item in the array, specified by its index |
| DailySummaryIndex. Items in the same array will have same source ID and |
| EventId. |
| </summary> |
| <metric name="DailySummaryHoldTimeOnAc"> |
| <summary> |
| Amount of time (in minutes) the device was on AC charger and the charge |
| was hold due to adaptive charging, at an index specified by |
| DailySummaryIndex. |
| </summary> |
| </metric> |
| <metric name="DailySummaryIndex"> |
| <summary> |
| Index of this event in the array. Please see the event summary for more |
| details. |
| </summary> |
| </metric> |
| <metric name="DailySummaryNumDaysDistance"> |
| <summary> |
| Distance in days bettwen current day and the day that the daily summary |
| was logged. |
| </summary> |
| </metric> |
| <metric name="DailySummarySize"> |
| <summary> |
| Number of items in array. Please see the event summary for more details. |
| </summary> |
| </metric> |
| <metric name="DailySummaryTimeFullOnAc"> |
| <summary> |
| Amount of time (in minutes) the device was keep on AC charger with full |
| battery (100%). |
| </summary> |
| </metric> |
| <metric name="DailySummaryTimeOnAc"> |
| <summary> |
| Amount of time (in minutes) the device was keep on AC charger. |
| </summary> |
| </metric> |
| <metric name="EventId"> |
| <summary> |
| A number that represent order of an event. Used combined with |
| "SmartCharging"'s EventId to reconstruct charge history. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="DataReductionProxy" singular="True"> |
| <owner>robertogden@chromium.org</owner> |
| <summary> |
| Data Reduction Proxy related metrics associated with a page load. See |
| //components/data_reduction_proxy/. |
| </summary> |
| <metric name="DataSaverPageUUID"> |
| <summary> |
| A unique identifier of this page load to the proxy server. Recorded for |
| each navigation that uses the proxy. |
| </summary> |
| </metric> |
| <metric name="EstimatedOriginalNetworkBytes"> |
| <summary> |
| The estimated number of bytes that would have been used if that proxy was |
| disabled on this page load. Recorded for each navigation that uses the |
| proxy. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="DetachedWindows.Experimental"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <owner>bartekn@chromium.org</owner> |
| <summary> |
| Metrics related to detached windows. |
| </summary> |
| <metric name="NavigationSourceId"> |
| <summary> |
| Contains the UKM source id of the navigation as an integer. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByClosing"> |
| <summary> |
| The number of function calls in a window detached by closing/removal. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByClosing_After10sSinceDetaching"> |
| <summary> |
| The number of function calls in a window detached by closing/removal, that |
| happened at least 10 seconds after detaching. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByClosing_After1minSinceDetaching"> |
| <summary> |
| The number of function calls in a window detached by closing/removal, that |
| happened at least 1 minute after detaching. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByNavigation"> |
| <summary> |
| The number of function calls in a window detached by navigating away. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByNavigation_After10sSinceDetaching"> |
| <summary> |
| The number of function calls in a window detached by navigating away, that |
| happened at least 10 seconds after detaching. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByNavigation_After1minSinceDetaching"> |
| <summary> |
| The number of function calls in a window detached by navigating away, that |
| happened at least 1 minute after detaching. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByOtherReason"> |
| <summary> |
| The number of function calls in a window detached by another reason. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByOtherReason_After10sSinceDetaching"> |
| <summary> |
| The number of function calls in a window detached by another reason, that |
| happened at least 10 seconds after detaching. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByOtherReason_After1minSinceDetaching"> |
| <summary> |
| The number of function calls in a window detached by another reason, that |
| happened at least 1 minute after detaching. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="DIPS.Deletion" singular="True"> |
| <owner>rtarpine@google.com</owner> |
| <owner>dc-komics@google.com</owner> |
| <summary> |
| Recorded when DIPS judges a site to be an incidental party and deletes its |
| storage. |
| </summary> |
| <metric name="Detected" enum="BooleanDetected"> |
| <summary> |
| Always set to true (only present because UKM events require at least one |
| metric). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="DIPS.Redirect" singular="True"> |
| <owner>rtarpine@google.com</owner> |
| <owner>dc-komics@google.com</owner> |
| <summary> |
| Recorded on every HTTP redirect or client-side bounce, where a client-side |
| bounce is a non-user-initiated navigation starting soon after the previous |
| navigation committed. |
| </summary> |
| <metric name="ClientBounceDelay"> |
| <summary> |
| Populated for client redirects only. The time in seconds (capped at 10) |
| between the page committing and the redirect navigation starting. An int |
| in the range [0, 10]. |
| </summary> |
| </metric> |
| <metric name="CookieAccessType" enum="CookieAccessType"> |
| <summary> |
| Whether the redirect read cookies, wrote cookies, both, or neither. |
| </summary> |
| </metric> |
| <metric name="HasStickyActivation" enum="BooleanHasUserActivation"> |
| <summary> |
| Populated for client redirects only. Whether the user ever interacted with |
| the page. (See the HTML spec for a definition.) |
| </summary> |
| </metric> |
| <metric name="InitialAndFinalSitesSame" enum="BooleanSameSite"> |
| <summary> |
| True when the site before the redirect chain is the same as the site at |
| the end of the chain. |
| </summary> |
| </metric> |
| <metric name="RedirectAndFinalSiteSame" enum="BooleanSameSite"> |
| <summary> |
| True when the redirect site is the same as the site at the end of the |
| redirect chain. |
| </summary> |
| </metric> |
| <metric name="RedirectAndInitialSiteSame" enum="BooleanSameSite"> |
| <summary> |
| True when the redirect site is the same as the site before the redirect |
| chain. |
| </summary> |
| </metric> |
| <metric name="RedirectChainIndex"> |
| <summary> |
| 0-based index of this individual redirect within its chain. |
| </summary> |
| </metric> |
| <metric name="RedirectChainLength"> |
| <summary> |
| The length of the overall redirect chain. |
| </summary> |
| </metric> |
| <metric name="RedirectType" enum="DIPSRedirectType"> |
| <summary> |
| The type of the redirect: client or server. |
| </summary> |
| </metric> |
| <metric name="SiteEngagementLevel" enum="SiteEngagementLevel"> |
| <summary> |
| The site engagement level of the redirect URL, at the time the redirect |
| took place. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="DIPS.TriggeringAction"> |
| <owner>kaklilu@google.com</owner> |
| <owner>dc-komics@google.com</owner> |
| <summary> |
| Recorded on a repeated interval when DIPS may want to clear site storage to |
| improve user privacy. These metrics will be used to determine which |
| triggering action is most appropriate for our use case. |
| |
| When these cases occur, the DIPS instance recording these metrics will keep |
| track of which triggering actions have already happened to prevent logging |
| duplicate metrics. |
| </summary> |
| <metric name="DidBounce" enum="Boolean"> |
| <summary> |
| True for sites that redirected the user since the last time the DIPS |
| instance attempted to clear site storage. |
| </summary> |
| </metric> |
| <metric name="DidStatefulBounce" enum="Boolean"> |
| <summary> |
| True for sites that redirected the user while accessing storage since the |
| last time the DIPS instance attempted to clear site storage. |
| </summary> |
| </metric> |
| <metric name="UsedStorage" enum="Boolean"> |
| <summary> |
| True for sites wrote to the browser's storage since the last time the DIPS |
| instance attempted to clear site storage. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Document.OutliveTimeAfterShutdown"> |
| <obsolete> |
| Removed January 2021 |
| </obsolete> |
| <owner>hajimehoshi@chromium.org</owner> |
| <owner>keishi@chromium.org</owner> |
| <summary> |
| Recorded when a Document object survives certain number of garbage |
| collections after detached. It is expected that regular Document objects are |
| destroyed soon after detached, and if a document outlives longer, probably |
| this can be leaked. |
| </summary> |
| <metric name="GCCount"> |
| <summary> |
| Measures the numbers of garbarge collection after the document is |
| detached. This is recorded when the number reached certain numbers like 5 |
| or 10. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="DocumentCreated"> |
| <owner>beccahughes@chromium.org</owner> |
| <summary> |
| Recorded when a Document object is created and records the source ID of the |
| navigation and whether the document was in the main frame. This can be used |
| to link subframe UKM events to the parent document. |
| </summary> |
| <metric name="IsCrossOriginFrame"> |
| <summary> |
| Whether the document was in a cross origin iframe. This can either be 0 or |
| 1. |
| </summary> |
| </metric> |
| <metric name="IsCrossSiteFrame"> |
| <summary> |
| Whether the document was in a cross site iframe. This can either be 0 or |
| 1. |
| </summary> |
| </metric> |
| <metric name="IsMainFrame"> |
| <summary> |
| Whether the document was in the main frame. This is can either be 0 or 1. |
| </summary> |
| </metric> |
| <metric name="NavigationSourceId"> |
| <summary> |
| Contains the UKM source id of the navigation as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Download.Completed"> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Metrics taken when a download completes. Its parent event is |
| Download.Started. |
| </summary> |
| <metric name="BytesWasted"> |
| <summary> |
| The number of bytes that have been used in an excess (ie. download |
| restarting the middle of a download). |
| </summary> |
| </metric> |
| <metric name="DownloadId"> |
| <summary> |
| The id of the download that is used to associate separate events. |
| </summary> |
| </metric> |
| <metric name="ResultingFileSize"> |
| <summary> |
| The size of the file that is downloaded, expressed in kilobytes with |
| exponentially growing buckets. |
| </summary> |
| </metric> |
| <metric name="TimeSinceStart"> |
| <summary> |
| The difference in the time between when the download finished and when it |
| began, expressed in milliseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Download.Interrupted"> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Metrics taken when a download is interrupted. Its parent event is |
| Download.Started. |
| </summary> |
| <metric name="BytesWasted"> |
| <summary> |
| The number of bytes that have been used in an excess (ie. download |
| restarting the middle of a download). |
| </summary> |
| </metric> |
| <metric name="ChangeInFileSize"> |
| <summary> |
| The difference in the size of the file that is downloaded compared to the |
| initial reported size, expressed in kilobytes with exponentially growing |
| buckets. |
| </summary> |
| </metric> |
| <metric name="DownloadId"> |
| <summary> |
| The id of the download that is used to associate separate events. |
| </summary> |
| </metric> |
| <metric name="Reason"> |
| <summary> |
| The reason the download was interrupted, expressed as an enum defined in |
| DownloadInterruptReason. |
| </summary> |
| </metric> |
| <metric name="ResultingFileSize"> |
| <summary> |
| The size of the file that is downloaded, expressed in kilobytes with |
| exponentially growing buckets. |
| </summary> |
| </metric> |
| <metric name="TimeSinceStart"> |
| <summary> |
| The difference in the time between when the download interrupted and when |
| it began, expressed in milliseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Download.Resumed"> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Metrics taken when a download is resumed. Its parent event is |
| Download.Started. |
| </summary> |
| <metric name="DownloadId"> |
| <summary> |
| The id of the download that is used to associate separate events. |
| </summary> |
| </metric> |
| <metric name="Mode"> |
| <summary> |
| The mode by which the download was resumed, expressed as an enum defined |
| in ResumeMode. |
| </summary> |
| </metric> |
| <metric name="TimeSinceStart"> |
| <summary> |
| The difference in the time between when the download resumed and when it |
| began, expressed in milliseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Download.Started"> |
| <owner>clank-downloads@google.com</owner> |
| <summary> |
| Metrics taken when a download begins. It has one Download.Ended and none to |
| multiple Download.Interrupted/Download.Resumed events associated with it. |
| </summary> |
| <metric name="DownloadConnectionSecurity"> |
| <summary> |
| The state of the security of the final download URL and all the redirects |
| leading to it. Expressed as an enum defined in DownloadConnectionSecurity. |
| </summary> |
| </metric> |
| <metric name="DownloadId"> |
| <summary> |
| The id of the download that is used to associate separate events. |
| </summary> |
| </metric> |
| <metric name="DownloadSource"> |
| <summary> |
| The source of the download, expressed as an enum defined in DownloadEntry. |
| </summary> |
| </metric> |
| <metric name="FileType"> |
| <summary> |
| The type of file that is downloaded, expressed as an enum defined in |
| DownloadContentType. |
| </summary> |
| </metric> |
| <metric name="IsSameHostDownload"> |
| <summary> |
| A boolean denoting if the final download URL is the same host as the |
| initiating frame (i.e., whether the initiating site likely controls the |
| download itself). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Event.ScrollBegin.Touch"> |
| <owner>nzolghadr@chromium.org</owner> |
| <summary> |
| Metrics related to first scroll action caused by the generated ScrollUpdate |
| gesture event. |
| </summary> |
| <metric name="IsMainThread"> |
| <summary> |
| Whether the event is handled on the main thread or not. |
| </summary> |
| </metric> |
| <metric name="TimeToHandled"> |
| <summary> |
| The time in microseconds between initial creation of a touch event and the |
| first generated ScrollUpdate gesture event in a given scroll gesture event |
| sequence is handled on main/impl thread. If no swap was induced by the |
| ScrollUpdate gesture event, no recording is made. |
| </summary> |
| </metric> |
| <metric name="TimeToScrollUpdateSwapBegin"> |
| <summary> |
| The time in microseconds between initial creation of a touch event and the |
| start of the frame swap on the GPU service caused by the generated |
| ScrollUpdate gesture event if that ScrollUpdate is the first such event in |
| a given scroll gesture event sequence. If no swap was induced by the |
| event, no recording is made. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Event.ScrollBegin.Wheel"> |
| <owner>nzolghadr@chromium.org</owner> |
| <summary> |
| Metrics related to first scroll action caused by the generated ScrollUpdate |
| gesture event. |
| </summary> |
| <metric name="IsMainThread"> |
| <summary> |
| Whether the event is handled on the main thread or not. |
| </summary> |
| </metric> |
| <metric name="TimeToHandled"> |
| <summary> |
| The time in microseconds between initial creation of a wheel event and the |
| first generated ScrollUpdate gesture event in a given scroll gesture event |
| sequence is handled on main/impl thread. If no swap was induced by the |
| ScrollBegin gesture event, no recording is made. |
| </summary> |
| </metric> |
| <metric name="TimeToScrollUpdateSwapBegin"> |
| <summary> |
| The time in microseconds between the initial creation of a wheel event and |
| the start of the frame swap on the GPU service caused by the generated |
| ScrollUpdate gesture event if that ScrollUpdate is the first such event in |
| a given scroll gesture event sequence. If no swap was induced by the |
| event, no recording is made. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Event.ScrollUpdate.Touch"> |
| <owner>nzolghadr@chromium.org</owner> |
| <summary> |
| Metrics related to a scroll action caused by the generated ScrollUpdate |
| gesture event. |
| </summary> |
| <metric name="IsMainThread"> |
| <summary> |
| Whether the event is handled on the main thread or not. |
| </summary> |
| </metric> |
| <metric name="TimeToHandled"> |
| <summary> |
| The time in microseconds between initial creation of a touch event and the |
| generated ScrollUpdate gesture event is handled on main/impl thread. If no |
| swap was induced by the ScrollUpdate gesture event, no recording is made. |
| </summary> |
| </metric> |
| <metric name="TimeToScrollUpdateSwapBegin"> |
| <summary> |
| The time in microseconds between the initial creation of a touch event and |
| the start of the frame swap on the GPU service. If no swap was induced by |
| the event, no recording is made. The first GSU of every scrolling sequence |
| is excluded from this metric. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Event.ScrollUpdate.Wheel"> |
| <owner>nzolghadr@chromium.org</owner> |
| <owner>tdresser@chromium.org</owner> |
| <summary> |
| Metrics related to a scroll action caused by the generated ScrollUpdate |
| gesture event. |
| </summary> |
| <metric name="IsMainThread"> |
| <summary> |
| Whether the event is handled on the main thread or not. |
| </summary> |
| </metric> |
| <metric name="TimeToHandled"> |
| <summary> |
| The time in microseconds between initial creation of a wheel event and the |
| generated ScrollUpdate gesture event is handled on main/impl thread. If no |
| swap was induced by the ScrollUpdate gesture event, no recording is made. |
| The first GSU of every scrolling sequence is excluded from this metric. |
| </summary> |
| </metric> |
| <metric name="TimeToScrollUpdateSwapBegin"> |
| <summary> |
| The time in microseconds between the initial creation of a wheel event and |
| the start of the frame swap on the GPU service. If no swap was induced by |
| the event, no recording is made. The first GSU of every scrolling sequence |
| is excluded from this metric. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Extensions.CrossOriginFetchFromContentScript3"> |
| <obsolete> |
| Deprecated in Chrome 87 / September 2020 - it was not needed anymore since |
| CORS-for-content-scripts has successfully shipped in M85. |
| </obsolete> |
| <owner>lukasza@chromium.org</owner> |
| <summary> |
| This UKM event is logged when an extension which triggers a cross-origin |
| CORS-mode request from a content script if such a request results would be |
| allowed by CORB, but potentially blocked by CORS. The source-id URL |
| associated with the UKM event identifies the extension initiating such |
| request. |
| |
| Note that this data is only gathered if the |
| CorbAllowlistAlsoAppliesToOorCors feature is disabled. Also note that this |
| data is not gathered for extensions that are already on the allowlist. |
| </summary> |
| <metric name="EventHappened" enum="Boolean"> |
| <summary> |
| Always true - introduced to have non-zero number of metrics which should |
| make it easier to work with queries / dashboards for the overall |
| CrossOriginFetchFromContentScript3 event. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Extensions.OnNavigation" singular="True"> |
| <owner>chikamune@chromium.org</owner> |
| <owner>yyanagisawa@chromium.org</owner> |
| <owner>sisidovski@chromium.org</owner> |
| <owner>hiroshige@chromium.org</owner> |
| <owner>kouhei@chromium.org</owner> |
| <summary> |
| Records the extension related metrics that might have negative impacts on |
| LCP. This is recorded when navigation is finished. |
| </summary> |
| <metric name="DeclarativeNetRequestFeedbackPermissionCount"> |
| <summary> |
| The number of enabled extensions that have a DeclarativeNetRequestFeedback |
| permission. The exponential bucketing is applied for privacy reasons by |
| using ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DeclarativeNetRequestPermissionCount"> |
| <summary> |
| The number of enabled extensions that have a DeclarativeNetRequest |
| permission. The exponential bucketing is applied for privacy reasons by |
| using ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DeclarativeNetRequestWithHostAccessPermissionCount"> |
| <summary> |
| The number of enabled extensions that have a |
| DeclarativeNetRequestWithHostAccess permission. The exponential bucketing |
| is applied for privacy reasons by using |
| ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DeclarativeWebRequestPermissionCount"> |
| <summary> |
| The number of enabled extensions that have a DeclarativeWebRequest |
| permission. The exponential bucketing is applied for privacy reasons by |
| using ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EnabledExtensionCount"> |
| <summary> |
| The number of enabled extensions that are not themes nor apps nor |
| components. The exponential bucketing is applied for privacy reasons by |
| using ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EnabledExtensionCount.HaveHostPermissions"> |
| <summary> |
| The number of enabled extensions that have host permissions for the |
| navigation target URL. The exponential bucketing is applied for privacy |
| reasons by using ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EnabledExtensionCount.InjectContentScript"> |
| <summary> |
| The number of enabled extensions that inject content scripts. The |
| exponential bucketing is applied for privacy reasons by using |
| ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WebRequestAuthProviderPermissionCount"> |
| <summary> |
| The number of enabled extensions that have a WebRequestAuthProvider |
| permission. The exponential bucketing is applied for privacy reasons by |
| using ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WebRequestBlockingPermissionCount"> |
| <summary> |
| The number of enabled extensions that have a WebRequestBlocking |
| permission. The exponential bucketing is applied for privacy reasons by |
| using ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WebRequestPermissionCount"> |
| <summary> |
| The number of enabled extensions that have a WebRequest permission. The |
| exponential bucketing is applied for privacy reasons by using |
| ukm::GetExponentialBucketMin(value, 2). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Extensions.WebRequest.KeepaliveRequestFinished"> |
| <owner>yhirano@chromium.org</owner> |
| <owner>kinuko@chromium.org</owner> |
| <summary> |
| Whether and how keepalive requests are blocked. Recorded when a keepalive |
| request finishes. |
| </summary> |
| <metric name="NumRedirects"> |
| <summary> |
| The number of redirects the request experienced. This is up to 21, as |
| specified at https://fetch.spec.whatwg.org/#http-redirect-fetch . |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="State" enum="ExtensionInProgressRequestState"> |
| <summary> |
| The final state of the request. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="FileSystemAPI.WebRequest"> |
| <owner>mek@chromium.org</owner> |
| <owner>rhalavatigit@chromium.org</owner> |
| <summary> |
| Logged when a website requests accessing FileSystem API. |
| </summary> |
| <metric name="Persistent"> |
| <summary> |
| Marks a request for a Persistent FileSystem. |
| </summary> |
| </metric> |
| <metric name="Temporary"> |
| <summary> |
| Marks a request for a Temporary FileSystem. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="FlocPageLoad" singular="True"> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| Whenever the floc is computed, this event will be recorded at the commit |
| time of the next page load. Caveat: if the browser is closed before the next |
| page load occurs (in a new session), the event won't be recorded. |
| </summary> |
| <metric name="FlocId"> |
| <summary> |
| The user's floc id. This ignores any general or per-context access |
| permissions, and records the internal int64_t number directly. This metric |
| may still be skipped if the floc was not calculated or has been |
| invalidated. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="FontMatchAttempts"> |
| <owner>caraitto@chromium.org</owner> |
| <owner>pauljensen@chromium.org</owner> |
| <owner>privacy-sandbox-dev@chromium.org</owner> |
| <summary> |
| Records font family match attempts, broken down by system fonts and web |
| fonts. Multiple match attempts using the same font family name are |
| de-duplicated. Matching of @font-face src:local fonts isn't currently |
| supported. |
| </summary> |
| <metric name="LoadContext" enum="FontLoadContext"> |
| <summary> |
| If the font family name was matched in a top-level frame, a sub-frame or a |
| worker. |
| </summary> |
| </metric> |
| <metric name="LocalFontFailures"> |
| <summary> |
| The count of failed attempts to match @font-face src:local rules. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LocalFontSuccesses"> |
| <summary> |
| The count of successful attempts to match @font-face src:local rules. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LocalFontTotal"> |
| <summary> |
| The count of total attempts (failed + succeeded) to match @font-face |
| src:local rules. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SystemFontFamilyFailures"> |
| <summary> |
| The count of system font family match attempts that failed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SystemFontFamilySuccesses"> |
| <summary> |
| The count of system font family match attempts that succeeded. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SystemFontFamilyTotal"> |
| <summary> |
| Total count of system font family match attempts (succeeded + failed). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WebFontFamilyFailures"> |
| <summary> |
| The count of web font family match attempts that failed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WebFontFamilySuccesses"> |
| <summary> |
| The count of web font family match attempts that succeeded. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WebFontFamilyTotal"> |
| <summary> |
| Total count of web font family match attempts (succeeded + failed). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.ActionRepositionOperationType"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event that is logged when key mapping position is changed. |
| </summary> |
| <metric name="OperationType" enum="ArcInputOverlayRepositionOperationType"> |
| <summary> |
| Type about how the reposition is done. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.ActionRepositionWindowStateType"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event that is logged when key mapping position is changed. |
| </summary> |
| <metric name="WindowStateType" enum="ArcInputOverlayWindowStateType"> |
| <summary> |
| Window state type when the reposition is done. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.ButtonGroupRepositionOperationType"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event that is logged when button group position is changed. |
| </summary> |
| <metric name="OperationType" enum="ArcInputOverlayRepositionOperationType"> |
| <summary> |
| Type about how the reposition is done. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.ButtonGroupRepositionWindowStateType"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event that is logged when menu entry position is changed. |
| </summary> |
| <metric name="WindowStateType" enum="ArcInputOverlayWindowStateType"> |
| <summary> |
| Window state type when the reposition is done. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.Customization"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event for gaming input overlay that is logged when users enter into edit |
| mode. |
| </summary> |
| <metric name="CustomizationUsed" enum="Boolean"> |
| <summary> |
| Whether the customization option was used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.Feature"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event for gaming input overlay that is logged when the input overlay |
| feature itself changes state. |
| </summary> |
| <metric name="FeatureStateOn" enum="Boolean"> |
| <summary> |
| Whether the gaming input overlay feature is in use. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.MappingHint"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event for gaming input overlay that is logged when the mapping hint state |
| is changed. |
| </summary> |
| <metric name="MappingHintStateOn" enum="Boolean"> |
| <summary> |
| Whether the mapping hint for gaming input overlay is on. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.MenuEntryRepositionOperationType"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event that is logged when key mapping position is changed. |
| </summary> |
| <metric name="OperationType" enum="ArcInputOverlayRepositionOperationType"> |
| <summary> |
| Type about how the reposition is done. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GamingInputOverlay.MenuEntryRepositionWindowStateType"> |
| <owner>pjlee@google.com</owner> |
| <owner>cuicuiruan@google.com</owner> |
| <owner>arc-gaming@google.com</owner> |
| <summary> |
| An event that is logged when menu entry position is changed. |
| </summary> |
| <metric name="WindowStateType" enum="ArcInputOverlayWindowStateType"> |
| <summary> |
| Window state type when the reposition is done. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="GeneratedNavigation" singular="True"> |
| <owner>ryansturm@chromium.org</owner> |
| <owner>avi@chromium.org</owner> |
| <summary> |
| Logged when the user navigated to their home page or their default search |
| engine. Recorded if the first URL or the final URL matches the pattern for |
| Default Search or matches the user's home page URL. Recorded upon commit |
| (even if the page was not foreground). |
| </summary> |
| <metric name="FinalURLIsDefaultSearchEngine"> |
| <summary> |
| If the navigation committed URL matches the template URL of the user's |
| Default Search Engine. |
| </summary> |
| </metric> |
| <metric name="FinalURLIsHomePage"> |
| <summary> |
| If the navigation committed URL matches the user's home page URL. Not |
| recorded on Android because home page is managed outside of Chrome. |
| </summary> |
| </metric> |
| <metric name="FirstURLIsDefaultSearchEngine"> |
| <summary> |
| If the navigation starting URL matches the template URL of the user's |
| Default Search Engine. |
| </summary> |
| </metric> |
| <metric name="FirstURLIsHomePage"> |
| <summary> |
| If the navigation starting URL (first URL in the redirect chain) matches |
| the user's home page URL. Not recorded on Android because home page is |
| managed outside of Chrome. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="GoogleDocsOfflineExtension"> |
| <owner>rhalavati@chromium.org</owner> |
| <owner>chrome-privacy-core@google.com</owner> |
| <summary> |
| Logged when a website requests a shared resource from Google Docs Offline |
| Extension. Note that this is double counted for imports since it is done |
| once in preload and once in actual load. |
| </summary> |
| <metric name="ResourceRequested"> |
| <summary> |
| Marks a resource request from a website. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Graphics.Smoothness.EventLatency"> |
| <owner>jonross@chromium.org</owner> |
| <summary> |
| Tracks the duration of stages in the rendering pipeline when processing a |
| single frame in response to an input event. To meet UKM goals for data |
| volume, a Poisson process with an exponential decay multiplier is used to |
| sample events for recporting. It will sample many reandomly distributed |
| events early during page load and initial interaction, then samples at an |
| exponentially decreasing rate to effectively cap the number of samples. All |
| times are in microseconds. |
| </summary> |
| <metric name="Activation"> |
| <summary> |
| The duration of the activation stage, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="BeginImplFrameToSendBeginMainFrame"> |
| <summary> |
| The time from when the Impl frame is started to when BeginMainFrame is |
| sent, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="BrowserToRendererCompositor"> |
| <obsolete> |
| Deprecated as of 01/2021. Replaced with event dispatch breakdown metrics. |
| </obsolete> |
| <summary> |
| The time from when the event is created in the browser until the first |
| compositor stage after the event arrives in the renderer, in microseconds. |
| </summary> |
| </metric> |
| <metric name="Commit"> |
| <summary> |
| The duration of the commit stage, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EndActivateToSubmitCompositorFrame"> |
| <summary> |
| The time from when an activation is complete to the next |
| SubmitCompositorFrame, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EndCommitToActivation"> |
| <summary> |
| The time from when a commit is complete to the beginning of the next |
| activation, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EventType" enum="EventLatencyEventType"> |
| <summary> |
| Type of the input event. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="GenerationToRendererCompositor"> |
| <summary> |
| The time from when the event is created until it arrives in the renderer |
| compositor, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PinchInputType" enum="EventLatencyPinchInputType"> |
| <summary> |
| Type of the input device for pinch events. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorFinishedToActivation"> |
| <summary> |
| The time from when the event processing is finished on the renderer |
| compositor until the beginning of the activation, in microseconds. This |
| metric is only reported if the event is handled on the renderer compositor |
| and the first compositor step after that is the beginning of the |
| activation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorFinishedToBeginImplFrame"> |
| <summary> |
| The time from when the event processing is finished on the renderer |
| compositor until the compositor frame is started, in microseconds. This |
| metric is only reported if the event is handled on the renderer compositor |
| and compositor frame is started after that. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorFinishedToCommit"> |
| <summary> |
| The time from when the event processing is finished on the renderer |
| compositor until the beginning of the commit, in microseconds. This metric |
| is only reported if the event is handled on the renderer compositor and |
| the first compositor step after that is the beginning of the commit. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorFinishedToEndActivate"> |
| <summary> |
| The time from when the event processing is finished on the renderer |
| compositor until the end of the activation, in microseconds. This metric |
| is only reported if the event is handled on the renderer compositor and |
| the first compositor step after that is the end of the activation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorFinishedToEndCommit"> |
| <summary> |
| The time from when the event processing is finished on the renderer |
| compositor until the end of the commit, in microseconds. This metric is |
| only reported if the event is handled on the renderer compositor and the |
| first compositor step after that is the end of the commit. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorFinishedToSendBeginMainFrame"> |
| <summary> |
| The time from when the event processing is finished on the renderer |
| compositor until BeginMainFrame is sent, in microseconds. This metric is |
| only reported if the event is handled on the renderer compositor and the |
| first compositor step after that is SendBeginMainFrame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorFinishedToSubmitCompositorFrame"> |
| <summary> |
| The time from when the event processing is finished on the renderer |
| compositor until the compositor frame is submitted, in microseconds. This |
| metric is only reported if the event is handled on the renderer compositor |
| and the first compositor step after that is the submission of the |
| compositor frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorProcessing"> |
| <summary> |
| The time spent in the renderer compositor to process the event, in |
| microseconds. This metric won't be reported if the renderer compositor |
| does not have a dedicated thread. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorQueueingDelay"> |
| <summary> |
| The time from when the event arrives in the renderer compositor until the |
| compositor starts processing it, in microseconds. This metric won't be |
| reported if the renderer compositor does not have a dedicated thread. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererCompositorToMain"> |
| <summary> |
| The time from when the processing of the event on the renderer compositor |
| is finished until the main thread starts processing the event, in |
| microseconds. If the renderer compositor does not have a dedicated thread, |
| the processing of the event on the renderer compositor is considered |
| finished as soon as the event arrives in the renderer compositor. This |
| metric won't be reported if the event is handled on the renderer |
| compositor. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainFinishedToActivation"> |
| <summary> |
| The time from when the event processing is finished on the renderer main |
| until the beginning of the activation, in microseconds. This metric is |
| only reported if the event is handled on the renderer main and the first |
| compositor step after that is the beginning of the activation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainFinishedToBeginImplFrame"> |
| <summary> |
| The time from when the event processing is finished on the renderer main |
| until the compositor frame is started, in microseconds. This metric is |
| only reported if the event is handled on the renderer main and compositor |
| frame is started after that. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainFinishedToCommit"> |
| <summary> |
| The time from when the event processing is finished on the renderer main |
| until the beginning of the commit, in microseconds. This metric is only |
| reported if the event is handled on the renderer main and the first |
| compositor step after that is the beginning of the commit. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainFinishedToEndActivate"> |
| <summary> |
| The time from when the event processing is finished on the renderer main |
| until the end of the activation, in microseconds. This metric is only |
| reported if the event is handled on the renderer main and the first |
| compositor step after that is the end of the activation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainFinishedToEndCommit"> |
| <summary> |
| The time from when the event processing is finished on the renderer main |
| until the end of the commit, in microseconds. This metric is only reported |
| if the event is handled on the renderer main and the first compositor step |
| after that is the end of the commit. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainFinishedToSendBeginMainFrame"> |
| <summary> |
| The time from when the event processing is finished on the renderer main |
| until BeginMainFrame is sent, in microseconds. This metric is only |
| reported if the event is handled on the renderer main and the first |
| compositor step after that is SendBeginMainFrame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainFinishedToSubmitCompositorFrame"> |
| <summary> |
| The time from when the event processing is finished on the renderer main |
| until the compositor frame is submitted, in microseconds. This metric is |
| only reported if the event is handled on the renderer main and the first |
| compositor step after that is the submission of the compositor frame. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="RendererMainProcessing"> |
| <summary> |
| The time spent in the main thread to process the event, in microseconds. |
| This metric won't be reported if the renderer compositor handles the |
| event. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ScrollInputType" enum="EventLatencyScrollInputType"> |
| <summary> |
| Type of the input device for scroll events. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit"> |
| <summary> |
| The time from when the BeginMainFrame is sent to the beginning of the |
| commit, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Accessibility"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on accessibility, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Animate"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on animations, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.BeginMainSentToStarted"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent before starting main |
| thread work, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.CompositeCommit"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on composite commit, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.CompositingAssignments"> |
| <obsolete> |
| No longer recorded after M97 with the launch of CompositeAfterPaint. |
| </obsolete> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on updating |
| compositing assignments, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.CompositingInputs"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on updating |
| compositing inputs, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.HandleInputEvents"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on handling input |
| events, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.LayoutUpdate"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on layout update, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Paint"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on paint, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Prepaint"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on prepaint, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.StyleUpdate"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on style update, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.UpdateLayers"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on updating layers, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SubmitCompositorFrameToPresentationCompositorFrame"> |
| <summary> |
| The time from when a compositor frame is submitted to the display |
| compositor to when it is presented, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.BufferAvailableToBufferReady"> |
| <summary> |
| The time from when the target framebuffer is available to when the GPU has |
| finished drawing to it, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.BufferReadyToLatch"> |
| <summary> |
| The time from when the target framebuffer is ready to be displayed to when |
| the buffer is latched on for presentation, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.LatchToSwapEnd"> |
| <summary> |
| The time from when the target framebuffer is latched on to when the swap |
| ends, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.ReceivedCompositorFrameToStartDraw"> |
| <summary> |
| The time from when a compositor frame is received to when it starts to |
| draw, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.StartDrawToSwapEnd"> |
| <obsolete> |
| Deprecated 02/2020. Split into |
| SubmitCompositorFrameToPresentationCompositorFrame.StartDrawToSwapStart |
| and SubmitCompositorFrameToPresentationCompositorFrame.SwapStartToSwapEnd. |
| </obsolete> |
| <summary> |
| The time from when the a compositor frame is started to draw to when it |
| ends swap, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.StartDrawToSwapStart"> |
| <summary> |
| The time from when a compositor frame is started to draw to when it starts |
| swap, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SubmitToReceiveCompositorFrame"> |
| <summary> |
| The time from when a compositor frame is submitted to when it is received, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SwapEndToPresentationCompositorFrame"> |
| <summary> |
| The time from when a compositor frame ends swap to when it is presented, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SwapStartToBufferAvailable"> |
| <summary> |
| The time from when the compositor frame starts to swap to when the target |
| framebuffer becomes available, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SwapStartToSwapEnd"> |
| <summary> |
| The time from when a compositor frame starts swap to when it ends swap, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TotalLatency"> |
| <summary> |
| The total time from when the event is created in the browser to when the |
| frame is presented, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TotalLatencyToSwapBegin"> |
| <obsolete> |
| Deprecated as of 01/2021. |
| </obsolete> |
| <summary> |
| The time from when the event is created in the browser to when the |
| gpu-swap is started, for scroll events, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TotalLatencyToSwapEnd"> |
| <obsolete> |
| Deprecated as of 07/2020. Replaced with TotalLatencyToSwapBegin which |
| measures what we actually intended to measure. |
| </obsolete> |
| <summary> |
| The time from when the event is created in the browser to when the |
| gpu-swap is completed, for scroll events, in microseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Graphics.Smoothness.Latency"> |
| <owner>animations-dev@chromium.org</owner> |
| <owner>jonross@chromium.org</owner> |
| <owner>schenney@chromium.org</owner> |
| <summary> |
| Tracks the duration of stages in the rendering pipeline while processing a |
| single frame. All times are in microseconds. |
| </summary> |
| <metric name="Activation"> |
| <summary> |
| The duration of the activation stage, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="BeginImplFrameToSendBeginMainFrame"> |
| <summary> |
| The time from when the Impl frame is started to when BeginMainFrame is |
| sent, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CanvasAnimation" enum="Boolean"> |
| <summary> |
| True when a canvas animation was active this frame. |
| </summary> |
| </metric> |
| <metric name="Commit"> |
| <summary> |
| The duration of the commit stage, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositorAnimation" enum="Boolean"> |
| <summary> |
| True when a compositor-driven animation was active this frame. |
| </summary> |
| </metric> |
| <metric name="EndActivateToSubmitCompositorFrame"> |
| <summary> |
| The time from when an activation is complete to the next |
| SubmitCompositorFrame, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EndCommitToActivation"> |
| <summary> |
| The time from when a commit is complete to the beginning of the next |
| activation, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="JSAnimation" enum="Boolean"> |
| <summary> |
| True when a inline style animation was active this frame. |
| </summary> |
| </metric> |
| <metric name="MainThreadAnimation" enum="Boolean"> |
| <summary> |
| True when a main-thread-driven animation was active this frame. |
| </summary> |
| </metric> |
| <metric name="MissedFrame" enum="Boolean"> |
| <summary> |
| True when the main frame missed its deadline for this frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PinchZoom" enum="Boolean"> |
| <summary> |
| True when a pinch-to-zoom interaction was active this frame. |
| </summary> |
| </metric> |
| <metric name="RAF" enum="Boolean"> |
| <summary> |
| True when a rAF-driven animation was active this frame. |
| </summary> |
| </metric> |
| <metric name="ScrollbarScroll" enum="Boolean"> |
| <summary> |
| True when a scrollbar driven interaction was active this frame. |
| </summary> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit"> |
| <summary> |
| The time from when the BeginMainFrame is sent to the beginning of the |
| commit, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Accessibility"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on accessibility, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Animate"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on animations, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.BeginMainSentToStarted"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent before starting main |
| thread work, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.CompositeCommit"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on composite commit, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.CompositingAssignments"> |
| <obsolete> |
| No longer recorded after M97 with the launch of CompositeAfterPaint. |
| </obsolete> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on updating |
| compositing assignments, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.CompositingInputs"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on updating |
| compositing inputs, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.HandleInputEvents"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on handling input |
| events, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.LayoutUpdate"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on layout update, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Paint"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on paint, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.Prepaint"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on prepaint, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.StyleUpdate"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on style update, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SendBeginMainFrameToCommit.UpdateLayers"> |
| <summary> |
| The time portion of SendBeginMainFrameToCommit spent on updating layers, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SubmitCompositorFrameToPresentationCompositorFrame"> |
| <summary> |
| The time from when the a compositor frame is submitted to the display |
| compositor to when it is presented, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.BufferAvailableToBufferReady"> |
| <summary> |
| The time from when the target framebuffer is available to when the GPU has |
| finished drawing to it, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.BufferReadyToLatch"> |
| <summary> |
| The time from when the target framebuffer is ready to be displayed to when |
| the buffer is latched on for presentation, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.LatchToSwapEnd"> |
| <summary> |
| The time from when the target framebuffer is latched on to when the swap |
| ends, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.ReceivedCompositorFrameToStartDraw"> |
| <summary> |
| The time from when a compositor frame is received to when it starts to |
| draw, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.StartDrawToSwapEnd"> |
| <obsolete> |
| Deprecated 02/2020. Split into |
| SubmitCompositorFrameToPresentationCompositorFrame.StartDrawToSwapStart |
| and SubmitCompositorFrameToPresentationCompositorFrame.SwapStartToSwapEnd. |
| </obsolete> |
| <summary> |
| The time from when the a compositor frame is started to draw to when it |
| ends swap, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.StartDrawToSwapStart"> |
| <summary> |
| The time from when a compositor frame is started to draw to when it starts |
| swap, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SubmitToReceiveCompositorFrame"> |
| <summary> |
| The time from when a compositor frame is submitted to when it is received, |
| in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SwapEndToPresentationCompositorFrame"> |
| <summary> |
| The time from when the a compositor frame ends swap to when it is |
| presented, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SwapStartToBufferAvailable"> |
| <summary> |
| The time from when the compositor frame starts to swap to when the target |
| framebuffer becomes available, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="SubmitCompositorFrameToPresentationCompositorFrame.SwapStartToSwapEnd"> |
| <summary> |
| The time from when a compositor frame starts swap to when it ends swap, in |
| microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TotalLatency"> |
| <summary> |
| The total time starting from BeginImplFrame to when |
| CompositorFramePresentation is done with updates from the MainThread (i.e. |
| the time it takes for BeginImplFrame, BeginMainFrame, Commit, Activate, |
| SubmitCompositorFrame and PresentCompositorFrame), in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TouchScroll" enum="Boolean"> |
| <summary> |
| True when a touchscreen driven interaction was active this frame. |
| </summary> |
| </metric> |
| <metric name="Unknown"> |
| <summary> |
| The time within a stage not attributed to any system, in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Video" enum="Boolean"> |
| <summary> |
| True when video playback was active this frame. |
| </summary> |
| </metric> |
| <metric name="WheelScroll" enum="Boolean"> |
| <summary> |
| True when a mouse driven scroll was active this frame. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Graphics.Smoothness.NormalizedPercentDroppedFrames" |
| singular="True"> |
| <owner>animations-dev@chromium.org</owner> |
| <owner>jonross@chromium.org</owner> |
| <summary> |
| Measures various normalizations for the smoothness metric. The metric is |
| measured by counting dropped frames, and various normalization strategies |
| are used. |
| |
| The metric is reported once per page-load, and when the page closes (e.g. |
| the user closes the tab, or navigates away to a different page). |
| </summary> |
| <metric name="AboveThreshold"> |
| <summary> |
| The number of fixed-duration sliding windows (as a percentage) where the |
| number of dropped frames are above a threshold. The specific threshold is |
| yet to be determined. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Average"> |
| <summary> |
| This is trivially computable by counting the total number of dropped |
| frames and the total number of vsyncs the page has been visible for, |
| exposed as a percentage. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositorFocusedMedian"> |
| <summary> |
| CompositorFocused metrics report the throughput of frames that include |
| compositor thread updates. The median dropped frames within a |
| fixed-duration sliding window (as a percentage). So out of all |
| PerecentDroppedFrames of sliding windows the median will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositorFocusedPercentile95"> |
| <summary> |
| CompositorFocused metrics report the throughput of frames that include |
| compositor thread updates. The 95-th percentile dropped frames within a |
| fixed-duration sliding window (as a percentage). So out of all |
| PerecentDroppedFrames of sliding windows the 95th percentile will be |
| reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositorFocusedVariance"> |
| <summary> |
| CompositorFocused metrics report the throughput of frames that include |
| compositor thread updates. The variance of percent dropped frames within a |
| fixed-duration sliding window. So out of all PerecentDroppedFrames of |
| sliding windows the variance will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="MainFocusedMedian"> |
| <summary> |
| MainFocused metrics report the throughput of frames that include main |
| thread updates. The median dropped frames within a fixed-duration sliding |
| window (as a percentage). So out of all PerecentDroppedFrames of sliding |
| windows the median will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="MainFocusedPercentile95"> |
| <summary> |
| MainFocused metrics report the throughput of frames that include main |
| thread updates. The 95-th percentile dropped frames within a |
| fixed-duration sliding window (as a percentage). So out of all |
| PerecentDroppedFrames of sliding windows the 95th percentile will be |
| reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="MainFocusedVariance"> |
| <summary> |
| MainFocused metrics report the throughput of frames that include main |
| thread updates. The variance of percent dropped frames within a |
| fixed-duration sliding window. So out of all PerecentDroppedFrames of |
| sliding windows the variance will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Median"> |
| <summary> |
| The median dropped frames within a fixed-duration sliding window (as a |
| percentage). So out of all PerecentDroppedFrames of sliding windows the |
| median will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Percentile95"> |
| <summary> |
| The 95-th percentile dropped frames within a fixed-duration sliding window |
| (as a percentage). So out of all PerecentDroppedFrames of sliding windows |
| the 95th percentile will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ScrollFocusedMedian"> |
| <summary> |
| ScrollFocused metrics reports the throughput with highest priority on |
| scroll interactions. The median dropped frames within a fixed-duration |
| sliding window (as a percentage) with highest priority given to scroll |
| throughput. So out of all PerecentDroppedFrames of sliding windows the |
| median will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ScrollFocusedPercentile95"> |
| <summary> |
| ScrollFocused metrics reports the throughput with highest priority on |
| scroll interactions. The 95-th percentile dropped frames within a |
| fixed-duration sliding window (as a percentage). So out of all |
| PerecentDroppedFrames of sliding windows the 95th percentile will be |
| reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ScrollFocusedVariance"> |
| <summary> |
| ScrollFocused metrics reports the throughput with highest priority on |
| scroll interactions. The variance of percent dropped frames within a |
| fixed-duration sliding window. So out of all PerecentDroppedFrames of |
| sliding windows the variance will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SmoothnessBad"> |
| <summary> |
| The percentage of sliding windows with bad smoothness, or a |
| PercentDroppedFrames of 12% to 25%. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SmoothnessGood"> |
| <summary> |
| The percentage of sliding windows with good smoothness, or a |
| PercentDroppedFrames of 3% to 6%. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SmoothnessOkay"> |
| <summary> |
| The percentage of sliding windows with okay smoothness, or a |
| PercentDroppedFrames of 6% to 12%. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SmoothnessVeryBad25to50"> |
| <summary> |
| The percentage of sliding windows with a subset of very bad smoothness, or |
| a PercentDroppedFrames of 25% to 50%. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SmoothnessVeryBad50to75"> |
| <summary> |
| The percentage of sliding windows with a subset of very bad smoothness, or |
| a PercentDroppedFrames of 50% to 75%. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SmoothnessVeryBad75to100"> |
| <summary> |
| The percentage of sliding windows with a subset of very bad smoothness, or |
| a PercentDroppedFrames of 75% to 100%. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SmoothnessVeryGood"> |
| <summary> |
| The percentage of sliding windows with very good smoothness, or a |
| PercentDroppedFrames of 0% to 3%. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TimingSinceFCPWorstCase"> |
| <obsolete> |
| Removed July 2022 along with UMA metric, which are no longer needed. |
| </obsolete> |
| <summary> |
| The Time From FCP when the worst case happened |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Variance"> |
| <summary> |
| The variance of percent dropped frames within a fixed-duration sliding |
| window. So out of all PerecentDroppedFrames of sliding windows the |
| variance will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WorstCase"> |
| <summary> |
| The maximum number of dropped frames (as a percentage) within a |
| fixed-duration sliding window. So out of all PerecentDroppedFrames of |
| sliding windows the max percentile will be reported here. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WorstCaseAfter1Sec"> |
| <summary> |
| The same as WorstCase metric, but only the sliding windows which starts 1 |
| second after first contentful paint will be taken into account. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WorstCaseAfter2Sec"> |
| <summary> |
| The same as WorstCase metric, but only the sliding windows which starts 2 |
| second after first contentful paint will be taken into account. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WorstCaseAfter5Sec"> |
| <summary> |
| The same as WorstCase metric, but only the sliding windows which starts 5 |
| second after first contentful paint will be taken into account. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Graphics.Smoothness.PercentDroppedFrames"> |
| <obsolete> |
| Deprecated 02/2023. |
| </obsolete> |
| <owner>animations-dev@chromium.org</owner> |
| <owner>jonross@chromium.org</owner> |
| <summary> |
| Tracks the percent of dropped frames for a particular sequence of frames |
| such as during scroll or animation. PercentDroppedFrames is measured by |
| tracking the number of frames the sequence was expected to produce, and the |
| number of frames that were not displayed on screen (dropped). It is the |
| ratio of dropped over expected, converted to a percentage. |
| </summary> |
| <metric name="AllAnimations"> |
| <summary> |
| Tracks the throughput of a particular sequence of frames for all |
| animations. This metric is reported for all animations (e.g. |
| comositor-driven animations, main-thread driven animations, and raf-driven |
| animations). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="AllInteractions"> |
| <summary> |
| Tracks the throughput of a particular sequence of frames where a |
| user-input (e.g. scroll, pinch) is active. This metric is reported for all |
| sources of user-input (i.e. both touchscreen and touchpad/mouse-wheel). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="AllSequences"> |
| <summary> |
| Tracks the throughput of a particular sequence of frames. This metric is |
| reported for all animations and all interactions. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompositorThread.CompositorAnimation"> |
| <summary> |
| The throughput of the compositor thread during a compositor animation. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.MainThreadAnimation"> |
| <summary> |
| The throughput of the compositor thread during a main thread animation. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.PinchZoom"> |
| <summary> |
| The throughput of the compositor thread during pinch-zoom interactions. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.RAF"> |
| <summary> |
| The throughput of the compositor thread during rAF callback driven |
| animation. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.ScrollbarScroll"> |
| <summary> |
| The throughput of the compositor thread during scrollbar scroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.TouchScroll"> |
| <summary> |
| The throughput of the compositor thread during touchscroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.Universal"> |
| <obsolete> |
| Removed in 9/2020, due to over penalize smoothness. |
| </obsolete> |
| <summary> |
| The throughput of the compositor thread for all frame production. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.Video"> |
| <summary> |
| The throughput of the compositor thread during video play. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.WheelScroll"> |
| <summary> |
| The throughput of the compositor thread during mousewheel scroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="MainThread.CanvasAnimation"> |
| <summary> |
| The throughput of the main thread during canvas animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.CompositorAnimation"> |
| <summary> |
| The throughput of the main thread during a compositor animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.JSAnimation"> |
| <summary> |
| The throughput of the main thread during inline style animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.MainThreadAnimation"> |
| <summary> |
| The throughput of the main thread during a main thread animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.PinchZoom"> |
| <summary> |
| The throughput of the main thread during pinch-zoom interactions. |
| </summary> |
| </metric> |
| <metric name="MainThread.RAF"> |
| <summary> |
| The throughput of the main thread during rAF callback driven animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.ScrollbarScroll"> |
| <summary> |
| The throughput of the main thread during scrollbar scroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="MainThread.TouchScroll"> |
| <summary> |
| The throughput of the main thread during touchscroll driven interactions. |
| </summary> |
| </metric> |
| <metric name="MainThread.Universal"> |
| <obsolete> |
| Removed in 9/2020, due to over penalize smoothness. |
| </obsolete> |
| <summary> |
| The throughput of the main thread for all frame production. |
| </summary> |
| </metric> |
| <metric name="MainThread.Video"> |
| <summary> |
| The throughput of the main thread during video play. |
| </summary> |
| </metric> |
| <metric name="MainThread.WheelScroll"> |
| <summary> |
| The throughput of the main thread during mousewheel scroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.CompositorAnimation"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during a |
| compositor animation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.MainThreadAnimation"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during a main |
| thread animation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.PinchZoom"> |
| <summary> |
| The worse throughput of the main and the compositor thread during |
| pinch-zoom interactions. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.RAF"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during rAF |
| callback driven animation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.ScrollbarScroll"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during |
| scrollbar driven interactions. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.TouchScroll"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during |
| touchscroll driven interactions. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.Universal"> |
| <obsolete> |
| Removed in 9/2020, due to over penalize smoothness. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread for all frame |
| production. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.Video"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during video |
| play. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SlowerThread.WheelScroll"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during |
| mousewheel scroll driven interactions. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Graphics.Smoothness.Throughput"> |
| <obsolete> |
| Deprecated 02/2020. |
| </obsolete> |
| <owner>animations-dev@chromium.org</owner> |
| <owner>jonross@chromium.org</owner> |
| <summary> |
| As of 2020-02-12, this is deprecated in favor of |
| Graphics.Smoothness.PercentDroppedFrames. |
| </summary> |
| <metric name="CompositorThread.CompositorAnimation"> |
| <summary> |
| The throughput of the compositor thread during a compositor animation. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.MainThreadAnimation"> |
| <summary> |
| The throughput of the compositor thread during a main thread animation. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.PinchZoom"> |
| <summary> |
| The throughput of the compositor thread during pinch-zoom interactions. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.RAF"> |
| <summary> |
| The throughput of the compositor thread during rAF callback driven |
| animation. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.TouchScroll"> |
| <summary> |
| The throughput of the compositor thread during touchscroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.Universal"> |
| <summary> |
| The throughput of the compositor thread for all frame production. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.Video"> |
| <summary> |
| The throughput of the compositor thread during video play. |
| </summary> |
| </metric> |
| <metric name="CompositorThread.WheelScroll"> |
| <summary> |
| The throughput of the compositor thread during mousewheel scroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="MainThread.CompositorAnimation"> |
| <summary> |
| The throughput of the main thread during a compositor animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.MainThreadAnimation"> |
| <summary> |
| The throughput of the main thread during a main thread animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.PinchZoom"> |
| <summary> |
| The throughput of the main thread during pinch-zoom interactions. |
| </summary> |
| </metric> |
| <metric name="MainThread.RAF"> |
| <summary> |
| The throughput of the main thread during rAF callback driven animation. |
| </summary> |
| </metric> |
| <metric name="MainThread.TouchScroll"> |
| <summary> |
| The throughput of the main thread during touchscroll driven interactions. |
| </summary> |
| </metric> |
| <metric name="MainThread.Universal"> |
| <summary> |
| The throughput of the main thread for all frame production. |
| </summary> |
| </metric> |
| <metric name="MainThread.Video"> |
| <summary> |
| The throughput of the main thread during video play. |
| </summary> |
| </metric> |
| <metric name="MainThread.WheelScroll"> |
| <summary> |
| The throughput of the main thread during mousewheel scroll driven |
| interactions. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.CompositorAnimation"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during a |
| compositor animation. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.MainThreadAnimation"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during a main |
| thread animation. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.PinchZoom"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during |
| pinch-zoom interactions. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.RAF"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during rAF |
| callback driven animation. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.TouchScroll"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during |
| touchscroll driven interactions. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.Universal"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread for all frame |
| production. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.Video"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during video |
| play. |
| </summary> |
| </metric> |
| <metric name="SlowerThread.WheelScroll"> |
| <obsolete> |
| Removed in 9/2020, since no longer needed after 'Universal' metric was |
| deprecated. |
| </obsolete> |
| <summary> |
| The worse throughput of the main and the compositor thread during |
| mousewheel scroll driven interactions. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="HistoryClusters" singular="True"> |
| <owner>chrome-memories@google.com</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Metrics that capture the iteractions with HistoryClusters, or Journeys, This |
| will be recorded once per visit to the HistoryClusters UI and logged when |
| the UI is closed or navigated away from. |
| </summary> |
| <metric name="FinalState" enum="HistoryClustersFinalState"> |
| <summary> |
| The final state, or outcome, of an interaction on the HistoryClusters UI. |
| </summary> |
| </metric> |
| <metric name="InitialState" enum="HistoryClustersInitialState"> |
| <summary> |
| The initial state that describes how an interaction with the |
| HistoryClusters UI was started. |
| </summary> |
| </metric> |
| <metric name="NumQueries"> |
| <summary> |
| The number of times the user performed a query on the HistoryClusters UI |
| during this interaction. This can include partial queries that occur due |
| to the UI's query timing. |
| </summary> |
| </metric> |
| <metric name="NumTogglesToBasicHistory"> |
| <summary> |
| The number of times the user toggled to the basic history page during this |
| interaction with the HistoryClusters UI. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="HistoryManipulationIntervention"> |
| <owner>shivanisha@chromium.org</owner> |
| <summary> |
| Logged when an entry in the back-forward list is marked to be skipped on |
| subsequent back/forward button clicks as part of the history manipulation |
| intervention. This is logged when the entry is navigated away from. |
| </summary> |
| </event> |
| |
| <event name="HistoryNavigation" singular="True"> |
| <owner>altimin@chromium.org</owner> |
| <owner>arthursonzogni@chromium.org</owner> |
| <owner>hajimehoshi@chromium.org</owner> |
| <summary> |
| Metrics recorded each time we commit a history navigation, which are needed |
| to estimate benefits of back-forward cache. Except as otherwise noted, the |
| metrics are recorded for history navigations, but not for same-document |
| navigations. |
| </summary> |
| <metric |
| name="AverageCumulativeShiftScoreAfterBackForwardCacheRestore.SessionWindow.Gap5000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the average cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, after the page is restored from the |
| back-forward. The gap between two consecutive shifts in a window is not |
| bigger than 5000ms. This metric's integral value is 100x the fractional |
| cumulative layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="AverageUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.MaxEventDuration2"> |
| <summary> |
| The average value of user interaction latency above budget of a page after |
| it is restored from the back-forward, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="AverageUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.TotalEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The average value of user interaction latency above budget of a page after |
| it is restored from the back-forward, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric name="BackForwardCache.BlocklistedFeatures" |
| enum="WebSchedulerTrackedFeature"> |
| <summary> |
| When navigating back to a page in the session history, this records what |
| blocklisted features were used when the page was loaded and prevented this |
| page from being stored in the back-forward cache. Multiple blocklisted |
| features can be recorded for the same page as a binary mask. |
| </summary> |
| </metric> |
| <metric name="BackForwardCache.BrowsingInstanceNotSwappedReason" |
| enum="BackForwardCacheBrowsingInstanceNotSwappedReason"> |
| <summary> |
| When navigating back to a page in the session history and the |
| BackForwardCache wasn't used because of the related browsing instances, |
| this records the reason why the browsing instance wasn't swapped. |
| </summary> |
| </metric> |
| <metric name="BackForwardCache.DisabledForRenderFrameHostReasonCount"> |
| <summary> |
| The number of the reasons passed to |
| BackForwardCache::DisableForRenderFrameHost calls. |
| </summary> |
| </metric> |
| <metric name="BackForwardCache.IsAmpPage" enum="Boolean"> |
| <summary> |
| Boolean whether the now-restored page uses AMP (see https://amp.dev). If |
| the page wasn't restored from the back-forward cache, this metric will not |
| be populated. This metric will never be true when |
| BackForwardCache.IsServedFromBackForwardCache is false. |
| </summary> |
| </metric> |
| <metric name="BackForwardCache.IsServedFromBackForwardCache"> |
| <summary> |
| Boolean whether the page was restored from the back-forward cache or not. |
| </summary> |
| </metric> |
| <metric name="BackForwardCache.NotRestoredReasons"> |
| <summary> |
| Bitmask of the reasons why the page was not restored from the back-forward |
| cache. See contents::BackForwardCacheMetrics::NotRestoredReason for the |
| meaning of the individual bits. |
| </summary> |
| </metric> |
| <metric name="CrossOriginSubframesFeatures"> |
| <summary> |
| Bitmask of features used by the cross origin subframes of the previous |
| page load. See blink::SchedulingPolicy::Feature for the meaning for the |
| individual features. |
| </summary> |
| </metric> |
| <metric name="CumulativeShiftScoreAfterBackForwardCacheRestore"> |
| <summary> |
| Deprecated as of 04/23. It is still reported, but most users should use |
| PageLoad.LayoutInstability.MaxCumulativeShiftScore.AfterBackForwardCacheRestore.SessionWindow.Gap1000ms.Max5000ms. |
| |
| Measures the cumulative layout shift (bit.ly/3fQz29y) that has occurred |
| during the session, after the page is restored from the back-forward |
| cache. This metric's integral value is 100x the fractional cumulative |
| layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric name="FirstInputDelayAfterBackForwardCacheRestore"> |
| <summary> |
| Measures First Input Delay, the duration between the hardware timestamp |
| and the start of event processing on the main thread for the first |
| meaningful input per navigation, after the page is restored from the |
| back-forward cache. |
| </summary> |
| </metric> |
| <metric name="FirstRequestAnimationFrameAfterBackForwardCacheRestore"> |
| <summary> |
| Measures the time duration between the page restore from back-forward |
| cache and the first requestAnimationFrame time in milliseconds. |
| </summary> |
| </metric> |
| <metric name="ForegroundDurationAfterBackForwardCacheRestore"> |
| <summary> |
| For page loads that start in the foreground, measures the duration of time |
| in milliseconds until one of the following events occurs: the load of the |
| main resource fails, the page load is stopped, the tab hosting the page is |
| closed, the render process hosting the page goes away, a new navigation |
| which later commits is initiated in the same tab, or the tab hosting the |
| page is backgrounded. This metric has a very long tail, for pages that |
| spend a long period of time in the foreground. As such, use of the mean or |
| tail values are not recommended. |
| </summary> |
| </metric> |
| <metric name="LastCommittedCrossDocumentNavigationSourceIdForTheSameDocument"> |
| <summary> |
| For history navigations and reloads, the source id of the previous |
| navigation which loaded the page we're trying to navigate back to. |
| </summary> |
| </metric> |
| <metric name="LastCommittedSourceIdForTheSameDocument"> |
| <summary> |
| Deprecated as of 01/2019. |
| </summary> |
| </metric> |
| <metric name="MainFrameFeatures"> |
| <summary> |
| Bitmask of features used by the main frames of the previous page load. See |
| blink::SchedulingPolicy::Feature for the meaning for the individual |
| features. |
| </summary> |
| </metric> |
| <metric |
| name="MaxCumulativeShiftScoreAfterBackForwardCacheRestore.SessionWindow.Gap1000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, after the page is restored from the |
| back-forward. The gap between two consecutive shifts in a window is not |
| bigger than 1000ms. This metric's integral value is 100x the fractional |
| cumulative layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="MaxCumulativeShiftScoreAfterBackForwardCacheRestore.SessionWindow.Gap1000ms.Max5000ms"> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, after the page is restored from the |
| back-forward. The gap between two consecutive shifts in a window is not |
| bigger than 1000ms and the maximum window size is 5000ms. This metric's |
| integral value is 100x the fractional cumulative layout shift score |
| described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="MaxCumulativeShiftScoreAfterBackForwardCacheRestore.SessionWindowByInputs.Gap1000ms.Max5000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window, after the page is restored from the |
| back-forward. The gap between two consecutive shifts in a window is not |
| bigger than 1000ms and the maximum window size is 5000ms. We start a new |
| window whenever there's a new user input. This metric's integral value is |
| 100x the fractional cumulative layout shift score described in the |
| explainer. |
| </summary> |
| </metric> |
| <metric |
| name="MaxCumulativeShiftScoreAfterBackForwardCacheRestore.SlidingWindow.Duration1000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a 1000ms sliding window, after the page is restored from |
| the back-forward. This metric's integral value is 100x the fractional |
| cumulative layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="MaxCumulativeShiftScoreAfterBackForwardCacheRestore.SlidingWindow.Duration300ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a 300ms sliding window, after the page is restored from |
| the back-forward. This metric's integral value is 100x the fractional |
| cumulative layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric name="NavigatedToTheMostRecentEntryForDocument"> |
| <summary> |
| Boolean for whether we navigated to the same navigation entry as the one |
| which was last visible. |
| |
| It can be false when subframes or same-document navigations are present. |
| For example, after navigating from http://foo to http://foo#bar and then |
| http://bar and then going back by 2 entries will mean we went to |
| http://foo while the last committed entry from this document was |
| http://foo#bar. |
| |
| It's expected to be rare, but might be problematic for back-forward cache. |
| </summary> |
| </metric> |
| <metric name="NavigationToFirstPaintAfterBackForwardCacheRestore"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time the first paint is performed, after the page is restored |
| from the back-forward cache. |
| </summary> |
| </metric> |
| <metric name="NumInteractionsAfterBackForwardCacheRestore"> |
| <summary> |
| The number of distinct user interactions on a page after it is restored |
| from the back-forward cache. See definition of user interaction: |
| https://web.dev/better-responsiveness-metric/#group-events-into-interactions |
| </summary> |
| </metric> |
| <metric name="PageEndReasonAfterBackForwardCacheRestore"> |
| <summary> |
| The reason (as a |page_load_metrics::PageEndReason|) why the user |
| navigated away from the page after it was restored from the back-forward |
| cache. This includes navigations after which the page is stored in the |
| back-forward cache again, as well as other page-ending events. |
| </summary> |
| </metric> |
| <metric name="SameOriginSubframesFeatures"> |
| <summary> |
| Bitmask of features used by the same origin subframes of the previous page |
| load. See blink::SchedulingPolicy::Feature for the meaning for the |
| individual features. |
| </summary> |
| </metric> |
| <metric name="SecondRequestAnimationFrameAfterBackForwardCacheRestore"> |
| <summary> |
| Measures the time duration between the page restore from back-forward |
| cache and the second requestAnimationFrame time in milliseconds. |
| </summary> |
| </metric> |
| <metric |
| name="SlowUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.HighPercentile.MaxEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page after it is restored from the back-forward, in ms. For |
| this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SlowUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.HighPercentile.TotalEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page after it is restored from the back-forward, in ms. For |
| this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SlowUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration2"> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page after it is restored from the back-forward, in ms. For |
| this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SlowUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.HighPercentile2.TotalEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of high percentile of user interaction latency above |
| budget of a page after it is restored from the back-forward, in ms. For |
| this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SumOfUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.MaxEventDuration2"> |
| <summary> |
| The sum of user interaction latency above budget of a page after it is |
| restored from the back-forward, in ms. For this metric, we measure the |
| latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="SumOfUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.TotalEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The sum of user interaction latency above budget of a page after it is |
| restored from the back-forward, in ms. For this metric, we measure the |
| latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric name="ThirdRequestAnimationFrameAfterBackForwardCacheRestore"> |
| <summary> |
| Measures the time duration between the page restore from back-forward |
| cache and the third requestAnimationFrame time in milliseconds. |
| </summary> |
| </metric> |
| <metric name="TimeSinceNavigatedAwayFromDocument"> |
| <summary> |
| Time in milliseconds from the moment the current navigation stopped being |
| active to the start of the current navigation. |
| |
| This is clamped to hours for values greater than 3 hours, to minutes for |
| values greater than 3 minutes, to seconds for values greater than 5 |
| seconds. |
| </summary> |
| </metric> |
| <metric |
| name="UserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration"> |
| <summary> |
| An approximation of a high percentile of user interaction latency of a |
| page after it is restored from the back-forward cache, in ms. For this |
| metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="WorstUserInteractionLatencyAfterBackForwardCacheRestore.MaxEventDuration2"> |
| <summary> |
| The maximum value of user interaction latency of a page after it is |
| restored from the back-forward, in ms. For this metric, we measure the |
| latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="WorstUserInteractionLatencyAfterBackForwardCacheRestore.TotalEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency of a page after it is |
| restored from the back-forward, in ms. For this metric, we measure the |
| latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="WorstUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.MaxEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency above budget of a page after |
| it is restored from the back-forward, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we reduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="WorstUserInteractionLatencyOverBudgetAfterBackForwardCacheRestore.TotalEventDuration2"> |
| <obsolete> |
| Deprecated March 2022 in favor of |
| SlowUserInteractionLatencyAfterBackForwardCacheRestore.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency above budget of a page after |
| it is restored from the back-forward, in ms. For this metric, we measure |
| the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we reduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Identifiability"> |
| <owner>antoniosartori@chromium.org</owner> |
| <owner>caraitto@chromium.org</owner> |
| <owner>mkwst@chromium.org</owner> |
| <owner>pauljensen@chromium.org</owner> |
| <summary> |
| Identifiability metrics are used to measure the diversity of web clients as |
| observed by individual web sites. |
| |
| Browser or device fingerprinting uses differences in behaviors of web APIs |
| as identifiers. The values collected under this event indicate the level of |
| identifiability of these differences. |
| |
| Metrics recorded under this event are keyed based on parameters determined |
| at runtime. Hence the metrics described in this file are not exhaustive. |
| |
| See |
| //third_party/blink/public/common/privacy_budget/identifiability/identifiability_metric_builder.h |
| for details on how the metrics hash is determined. |
| </summary> |
| <metric name="GeneratorVersion.926"> |
| <summary> |
| An integer identifying the "generator" version for this record. |
| Some identifiability study samples are derived from multiple factors which |
| are run though a digest function to derive the int64_t value. If the set |
| of factors change or the method of combining them changes, then the |
| resulting statistics cannot be aggregated with those from a prior version. |
| |
| The name suffix (.926) was chosen so that the resulting metric hash as |
| determined by base::HashMetricName() has all 8 LSBs set to 0. Such a |
| metric hash does not collide with any other metric hash generated by |
| blink::IdentifiabilityMetricBuilder(). |
| </summary> |
| </metric> |
| <metric name="StudyGeneration.626"> |
| <summary> |
| An integer identifying the study "generation." In case the study |
| parameters need to be tweaked to the point where results cannot be |
| aggregated across study parameter sets, this value can be changed to |
| partition the results. |
| |
| The name suffix (.626) was chosen so that the resulting metric hash as |
| determined by base::HashMetricName() has all 8 LSBs set to 0. Such a |
| metric hash does not collide with any other metric hash generated by |
| blink::IdentifiabilityMetricBuilder(). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="InputEvent"> |
| <owner>mmocny@chromium.org</owner> |
| <owner>sullivan@chromium.org</owner> |
| <owner>speed-metrics-dev@chromium.org</owner> |
| <summary> |
| Metrics associated with user input events. This event is recorded in Blink |
| and may not be recorded for the same page visits as events like PageLoad. |
| Consumers of this event's metrics should be aware of this when making |
| comparisons between InputEvent metrics and PageLoad metrics. |
| </summary> |
| <metric name="EventType" enum="InputEventTypeForResponsivenessMetric"> |
| <summary> |
| The Event Type of the input event. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.InputDelay"> |
| <summary> |
| Measures Input Delay, the duration between the hardware timestamp and the |
| start of event processing on the main thread for the meaningful input. In |
| ms. (go/FirstInputDelay) |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.ProcessingFinishedToNextPaint"> |
| <summary> |
| Measures the time in ms from when the event handlers finish processing the |
| input event to the time when the next paint caused by the input event is |
| performed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.ProcessingTime"> |
| <summary> |
| Measures Input Event processing time, the duration of event handlers |
| processing the input event. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="InputMethod.Assistive.AutocorrectV2"> |
| <owner>mehrab@google.com</owner> |
| <summary> |
| Metrics recording a summary of user interactions with Autocorrect feature. |
| The event is recorded whenever an autocorrect suggestion is shown or a user |
| interacted with a suggestion to accept or reject it. |
| </summary> |
| <metric name="CompatibilitySummary.PK" |
| enum="IMEAutocorrectCompatibilitySummary"> |
| <summary> |
| A summary of interactions with Physical Keyboard Autocorrect suggestions |
| for the purpose of identifying App Compatibility issues. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CompatibilitySummary.VK" |
| enum="IMEAutocorrectCompatibilitySummary"> |
| <summary> |
| A summary of interactions with Virtual Keyboard Autocorrect suggestions |
| for the purpose of identifying App Compatibility issues. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="InputMethod.Assistive.Match"> |
| <owner>jiwan@chromium.org</owner> |
| <summary> |
| Recorded when an assistive action could be triggered according to the |
| surrounding text. |
| </summary> |
| <metric name="Type" enum="IMEAssistiveAction"> |
| <summary> |
| The type of the assistive suggestion which is triggered. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="InputMethod.LongpressDiacritics"> |
| <owner>jopalmer@google.com</owner> |
| <owner>essential-inputs-team@google.com</owner> |
| <summary> |
| Recorded when a user uses the long press diacritics feature to insert |
| diacritics via long press with a physical keyboard. |
| </summary> |
| <metric name="Actions" enum="IMEPKLongpressDiacriticAction"> |
| <summary> |
| Action taken by the user to interact with this feature. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="InputMethod.NonCompliantApi"> |
| <owner>shend@chromium.org</owner> |
| <summary> |
| Metrics indicating what Input Method Editor (IME) operations are behaving |
| incorrectly on an input field. This event is recorded whenever an IME |
| operation is executed on the input field but the result does not match the |
| IME's expectations (e.g. IME wants to insert 'a' but the input field |
| inserted 'b' instead). |
| </summary> |
| <metric name="NonCompliantOperation" enum="InputMethodApiOperation"> |
| <summary> |
| The operation that behaved incorrectly. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="InstalledRelatedApps"> |
| <owner>rayankans@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| Recorded before resolving a call to navigator.getInstalledRelatedApps(). |
| </summary> |
| <metric name="Called"> |
| <summary> |
| Always true. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Intervention.DocumentWrite.ScriptBlock" singular="True"> |
| <obsolete> |
| Removed 12/2021. |
| </obsolete> |
| <owner>bmcquade@chromium.org</owner> |
| <summary> |
| Recorded for page loads where the document.write script block intervention |
| could apply. |
| </summary> |
| <metric name="Disabled.Reload"> |
| <summary> |
| Records '1' if the document.write script block intervention could have |
| applied, but was disabled due to the page being reloaded. |
| </summary> |
| </metric> |
| <metric name="ParseTiming.ParseBlockedOnScriptExecutionFromDocumentWrite"> |
| <summary> |
| Measures the time in milliseconds that the HTML parser spent blocked on |
| the execution of scripts inserted from document.write, for main frame |
| documents that finished parsing. |
| </summary> |
| </metric> |
| <metric name="ParseTiming.ParseBlockedOnScriptLoadFromDocumentWrite"> |
| <summary> |
| Measures the time in milliseconds that the HTML parser spent blocked on |
| the load of scripts inserted from document.write, for main frame documents |
| that finished parsing. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="IOS.FindInPageSearchMatches"> |
| <owner>thegreenfrog@chromium.org</owner> |
| <owner>michaeldo@chromium.org</owner> |
| <summary> |
| Logged when the FindInPage returns a user search request result. Starting |
| from M111, this is only logged at the end of the Find session i.e. when the |
| Find UI is dismissed. |
| </summary> |
| <metric name="HasMatches" enum="Boolean"> |
| <summary> |
| True if there were matches. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="IOS.IsDefaultBrowser"> |
| <owner>rkgibson@chromium.org</owner> |
| <summary> |
| As of iOS14, users will be able to set a default browser other than Safari. |
| When Chrome is the default browser, it will open all URL links, which is |
| likely to change certain stability metrics. Thus, it will be good to filter |
| those metrics by default browser status. This metrics records whether the |
| user was deemed to have set Chrome as the device's default browser. This |
| metric will be logged once per metrics log upload, and if the metric changes |
| mid-report, this just records the state at the very end of the report. Note: |
| this is tied to a source_id that is not going to be emitted. |
| </summary> |
| <metric name="IsDefaultBrowser" enum="Boolean"> |
| <summary> |
| True if Chrome is set as default browser. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="IOS.PageAddedToReadingList"> |
| <owner>thegreenfrog@chromium.org</owner> |
| <summary> |
| Logged when the user adds a page to the Reading List. |
| </summary> |
| <metric name="AddedFromMessages" enum="Boolean"> |
| <summary> |
| True if the page was added by the user tapping on the Messages prompt to |
| save to Reading List. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="IOS.PageReadability"> |
| <owner>thegreenfrog@chromium.org</owner> |
| <summary> |
| Logged when the Distilibility score of the current page is returned and the |
| Reading List Message is shown. Muliplied by 10X to get tenth digit |
| granularity. 0.1 granularity will be recorded for scores between 0.5 and |
| 1.5. Otherwise, the granularity will be 0.5. |
| </summary> |
| <metric name="DidAccept" enum="Boolean"> |
| <summary> |
| True if the user tapped on the Messages prompt to save the current page to |
| Reading List. |
| </summary> |
| </metric> |
| <metric name="DistilibilityLongScore"> |
| <summary> |
| Distilibility score value indicating the "long readability" of |
| the page. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DistilibilityScore"> |
| <summary> |
| Distilibility score value indicating the "readability" of the |
| page. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="IOS.PageZoomChanged"> |
| <owner>rkgibson@google.com</owner> |
| <summary> |
| Logged when the user changes their zoom level on iOS. |
| </summary> |
| <metric name="ContentSizeCategory" enum="IOSContentSizeCategory"> |
| <summary> |
| The content size category the user is currently using. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="OverallZoomLevel"> |
| <summary> |
| The overall zoom level. This is based on a combination of the user zoom |
| level and a multiplier from the user's content size category. |
| </summary> |
| </metric> |
| <metric name="UserZoomLevel"> |
| <summary> |
| The current zoom multiplier (percentage-based, with 100 -> 100%) the |
| user has chosen. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="IOS.RendererGone"> |
| <owner>olivierrobin@chromium.org</owner> |
| <summary> |
| Logged when WKWebView process is reported gone. Metrics will give |
| information of the context in which some website present sad tabs. It will |
| help debug some renderer issues either in Chrome or in WebKit. |
| </summary> |
| <metric name="AliveRecentlyRendererCount"> |
| <summary> |
| The number of WKWebView alive in the last 2 seconds. |
| </summary> |
| </metric> |
| <metric name="AliveRendererCount"> |
| <summary> |
| The number of WKWebView alive at the moment this renderer is gone. |
| </summary> |
| </metric> |
| <metric name="InForeground" enum="TabForegroundState"> |
| <summary> |
| Whether the app/tab was in foregound or background. 0: tab in foreground, |
| app in foreground, 1: tab in background, app in foreground, 2: tab in |
| foreground, app in background, 3: tab in background, app in background. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SawMemoryWarning" enum="Boolean"> |
| <summary> |
| Whether a memory warning was received less than 5 seconds before the |
| renderer process is gone. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="IOS.URLMismatchInLegacyAndSlimNavigationManager"> |
| <owner>ajuma@chromium.org</owner> |
| <owner>gambard@chromium.org</owner> |
| <summary> |
| Logged when LegacyNavigationManager and KWKBasedNavigationManager have |
| different last committed URLs. This means that either old or new navigation |
| system has a URL spoofing bug. |
| </summary> |
| <metric name="HasMismatch"> |
| <summary> |
| True if there was a mismatch. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="JavascriptFrameworkPageLoad" singular="True"> |
| <owner>houssein@chromium.org</owner> |
| <owner>npm@chromium.org</owner> |
| <summary> |
| Metrics stating whether the main frame of a page uses certain JavaScript |
| frameworks. This event is recorded when the page is going to be unloaded or |
| when the app enters the background on Android. The framework detection is |
| done when the document is loaded (similar to when load event is fired). If a |
| framework is used after this then it would not be detected. Note that a page |
| can use multiple frameworks at the same time, hence why this reports each |
| framework individually instead of a single enum. |
| </summary> |
| <metric name="AngularPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Angular JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="GatsbyPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Gatsby JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="NextJSPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Next.js JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="NuxtJSPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Nuxt.js JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="PreactPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Preact JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="ReactPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the React JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="SapperPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Sapper JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="SveltePageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Svelte JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="VuePageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the Vue JavaScript |
| framework. |
| </summary> |
| </metric> |
| <metric name="VuePressPageLoad" enum="Boolean"> |
| <summary> |
| True if the page loaded in the main frame uses the VuePress JavaScript |
| framework. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Layout.DisplayCutout.StateChanged"> |
| <obsolete> |
| Obsolete as of 08/2021. |
| </obsolete> |
| <owner>beccahughes@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Recorded every time the ViewportFit that is supplied by a frame changes or |
| the fullscreen state of a frame or its parent WebContents changes. |
| </summary> |
| <metric name="IsMainFrame"> |
| <summary> |
| Records '1' if the frame that triggered this event is the main frame. |
| </summary> |
| </metric> |
| <metric name="SafeAreasPresent"> |
| <summary> |
| Records whether each safe area was present. It will contain the first flag |
| (1) if the top safe area is present. Likewise the second for the left, the |
| third for the bottom and the forth for the right. If the safe area is |
| updated whilst we are allowed to extend into the cutout then we will use |
| the newest safe area values. |
| </summary> |
| </metric> |
| <metric name="ViewportFit.Applied"> |
| <summary> |
| Contains the ViewportFit value that was applied by the WebContents. The |
| frame that is fullscreen will always propagate it's ViewportFit value. |
| This is stored as a ViewportFit enum (see display_cutout.mojom). |
| </summary> |
| </metric> |
| <metric name="ViewportFit.IgnoredReason"> |
| <summary> |
| Records the reason why the ViewportFit value of this frame was not the |
| applied value. It will be '0' if the value was allowed. It will be '1' if |
| the ViewportFit value from the frame was blocked because the WebContents |
| was not fullscreen. It will be '2' flag if the ViewportFit value from the |
| frame was blocked because another frame is fullscreen. |
| </summary> |
| </metric> |
| <metric name="ViewportFit.Supplied"> |
| <summary> |
| Contains the ViewportFit value that was supplied by the frame that |
| triggered the event. This is stored as a ViewportFit enum (see |
| display_cutout.mojom). It can never be kAuto as we ignore events when the |
| page is not trying to use the viewport fit API. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="LiteVideo"> |
| <obsolete> |
| Obsoleted December 2021. |
| </obsolete> |
| <owner>mcrouse@chromium.org</owner> |
| <owner>rajendrant@chromium.org</owner> |
| <summary> |
| Metrics that capture the state and result of the LiteVideo optimization. |
| This will be recorded once per frame when the associated render process |
| ends. Only for Lite mode users on Android. |
| </summary> |
| <metric name="BlocklistReason" enum="LiteVideoBlocklistReason"> |
| <summary> |
| The reason that a navigation was blocklisted and will not have media |
| requests throttled. |
| </summary> |
| </metric> |
| <metric name="ThrottlingResult" enum="LiteVideoThrottleResult"> |
| <summary> |
| The result for whether media requests associated with this navigation were |
| successfully throttled or stopped due to an opt-out event. |
| </summary> |
| </metric> |
| <metric name="ThrottlingStartDecision" enum="LiteVideoDecision"> |
| <summary> |
| The decision for whether media requests associated with this frame will be |
| potentially throttled. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="LoadCountsPerTopLevelDocument"> |
| <owner>fdoray@chromium.org</owner> |
| <owner>chrome-catan@google.com</owner> |
| <summary> |
| Counts loads of each type that occurred on a top-level document. Recorded |
| when a top-level document is unloaded. This can be used to diagnose changes |
| to the "Total pageloads" shown on stability dashboard. |
| |
| Exponential bucketing is applied to all counts. The bucketing function |
| preserves exact count up until 20. |
| </summary> |
| <metric name="NumMainFrameSameDocumentLoads_Hidden"> |
| <summary> |
| Number of main frame same-document loads that occurred while the page was |
| hidden. |
| </summary> |
| </metric> |
| <metric name="NumMainFrameSameDocumentLoads_Visible"> |
| <summary> |
| Number of main frame same-document loads that occurred while the page was |
| visible. |
| </summary> |
| </metric> |
| <metric name="NumSubFrameDifferentDocumentLoads_Hidden"> |
| <summary> |
| Number of sub frame different-document loads that occurred while the page |
| was hidden. |
| </summary> |
| </metric> |
| <metric name="NumSubFrameDifferentDocumentLoads_Visible"> |
| <summary> |
| Number of sub frame different-document loads that occurred while the page |
| was visible. |
| </summary> |
| </metric> |
| <metric name="NumSubFrameSameDocumentLoads_Hidden"> |
| <summary> |
| Number of sub frame same-document loads that occurred while the page was |
| hidden. |
| </summary> |
| </metric> |
| <metric name="NumSubFrameSameDocumentLoads_Visible"> |
| <summary> |
| Number of sub frame same-document loads that occurred while the page was |
| visible. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="LoadingPredictor" singular="true"> |
| <owner>sophiechang@chromium.org</owner> |
| <owner>tbansal@chromium.org</owner> |
| <summary> |
| Metrics that reflect the accuracy of the predictions used by the Loading |
| Predictor. This event will be recorded once per page load on |
| DocumentOnLoadCompletedInPrimaryMainFrame(). |
| </summary> |
| <metric name="CorrectSubresourceOriginPreconnectsInitiated"> |
| <summary> |
| The number of subresource origin preconnects that were initiated by the |
| Loading Predictor for the navigation and were actually used by the page |
| load, excluding the main frame URL's origin. If more than 100 subresource |
| origins were preconnected to and were actually used by the page load, this |
| will be capped at 100. |
| </summary> |
| </metric> |
| <metric name="CorrectSubresourcePrefetchesInitiated"> |
| <summary> |
| The number of subresource prefetches that were initiated by the Loading |
| Predictor for the navigation and were actually used by the page load. If |
| more than 100 subresources were prefetched and were actually used by the |
| page load, this will be capped at 100. |
| </summary> |
| </metric> |
| <metric name="LocalPredictionCorrectlyPredictedOrigins"> |
| <summary> |
| The number of subresource origins that were correctly predicted by the |
| local prediction database. This will be recorded if there is a prediction |
| available in the local prediction database and does not necessarily mean |
| that the prediction was used. If more than 100 subresource origins were |
| correctly predicted, this will be capped at 100. |
| </summary> |
| </metric> |
| <metric name="LocalPredictionOrigins"> |
| <summary> |
| The number of subresource origins that were predicted locally. This will |
| be recorded if there is a prediction available in the local prediction |
| database and does not necessarily mean that the prediction was used. If |
| more than 100 subresource origins were predicted, this will be capped at |
| 100. |
| </summary> |
| </metric> |
| <metric name="NavigationStartToFirstSubresourcePrefetchInitiated"> |
| <summary> |
| The time (in milliseconds) that elapsed between navigation start and the |
| first subresource prefetch that was initiated based on these predictions. |
| </summary> |
| </metric> |
| <metric name="NavigationStartToNavigationCommit"> |
| <summary> |
| The time (in milliseconds) that elapsed between navigation start and the |
| commit finished. |
| </summary> |
| </metric> |
| <metric name="NavigationStartToOptimizationGuidePredictionArrived"> |
| <summary> |
| The time (in milliseconds) that elapsed between navigation start and the |
| optimization guide prediction arriving for the navigation. |
| </summary> |
| </metric> |
| <metric name="OptimizationGuidePredictionCorrectlyPredictedOrigins"> |
| <summary> |
| The number of subresource origins that were correctly predicted by the |
| Optimization Guide. This will be recorded if the Optimization Guide was |
| consulted for the page load and the Optimization Guide had a prediction |
| for it. If more than 100 subresource origins were correctly predicted, |
| this will be capped at 100. |
| </summary> |
| </metric> |
| <metric name="OptimizationGuidePredictionCorrectlyPredictedSubresources"> |
| <summary> |
| The number of subresources that were correctly predicted by the |
| Optimization Guide. This will be recorded if the Optimization Guide was |
| consulted for the page load and the Optimization Guide had a prediction |
| for it. If more than 100 subresources were predicted, this will be capped |
| at 100. |
| </summary> |
| </metric> |
| <metric name="OptimizationGuidePredictionDecision" |
| enum="OptimizationGuideOptimizationGuideDecision"> |
| <summary> |
| The decision coming from the Optimization Guide for whether there was a |
| prediction available for the Page Load. This will be recorded if the |
| Optimization Guide was consulted for the page load. |
| </summary> |
| </metric> |
| <metric name="OptimizationGuidePredictionOrigins"> |
| <summary> |
| The number of subresource origins that were predicted by the Optimization |
| Guide. This will be recorded if the Optimization Guide was consulted for |
| the page load and the Optimization Guide had a prediction for it. If more |
| than 100 subresource origins were predicted, this will be capped at 100. |
| </summary> |
| </metric> |
| <metric name="OptimizationGuidePredictionSubresources"> |
| <summary> |
| The number of subresources that were predicted by the Optimization Guide. |
| This will be recorded if the Optimization Guide was consulted for the page |
| load and the Optimization Guide had a prediction for it. If more than 100 |
| subresources were predicted, this will be capped at 100. |
| </summary> |
| </metric> |
| <metric name="SubresourceOriginPreconnectsInitiated"> |
| <summary> |
| The number of subresource origins that were initiated by the Loading |
| Predictor and were preconnected to, excluding the main frame URL's origin. |
| If more than 100 subresource origins were preconnected to, this will be |
| capped at 100. |
| </summary> |
| </metric> |
| <metric name="SubresourcePrefetchesInitiated"> |
| <summary> |
| The number of subresource prefetches that were initiated by the Loading |
| Predictor for the navigation. If more than 100 subresources were |
| prefetched, this will be capped at 100. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="LocalNetworkRequests"> |
| <owner>uthakore@chromium.org</owner> |
| <owner>invernizzi@chromium.org</owner> |
| <summary> |
| Metrics that describe the resource request behavior of pages for which |
| navigation successfully commits. A separate entry is generated for every |
| unique IP address or localhost port number to which the loaded page makes a |
| resource request. |
| </summary> |
| <metric name="Count.Failed"> |
| <summary> |
| The count of requests made by the page to the given resource for which a |
| response is not received or a network error occurs (i.e. |net_error| != |
| |net::OK|) between the time navigation to the page commits and the time it |
| completes. |
| </summary> |
| </metric> |
| <metric name="Count.Successful"> |
| <summary> |
| The count of requests made by the page to the given resource for which a |
| successful response is received (i.e. |net_error| == |net::OK|) between |
| the time navigation to the page commits and the time it completes. |
| </summary> |
| </metric> |
| <metric name="PortType"> |
| <summary> |
| An enum value representing the type of port for requests to localhost. The |
| enum is defined in |LocalNetworkRequestsPageLoadMetricsObserver|. Possible |
| values are 1 for common web server ports, 2 for common database server |
| ports, 4 for common print server ports, 8 for common development server |
| ports, and 0 for all other ports. |
| </summary> |
| </metric> |
| <metric name="ResourceType"> |
| <summary> |
| An enum value representing the type of resource requested. The enum is |
| defined in |LocalNetworkRequestsPageLoadMetricsObserver|. Possible values |
| are 0 for public resources requested by private pages, 1 for private |
| resources requested by public pages, 2 for private resources within the |
| same reserved IP space as the loaded private page, 4 for private resources |
| within a different reserved IP space than the loaded private page, 8 for |
| resources requested by public pages that are suspected to be routers, and |
| 16 for localhost resources. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="LoginDetection" singular="True"> |
| <owner>rajendrant@chromium.org</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Records the info about login detected for sites based on different |
| heuristics. |
| </summary> |
| <metric name="Page.LoginType" enum="LoginDetectionType"> |
| <summary> |
| An enum for representing the different ways of user login to a site, such |
| as via passwords, via OAuth, etc. Recorded for every page load. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="LookalikeUrl.NavigationSuggestion" singular="True"> |
| <owner>meacer@chromium.org</owner> |
| <owner>cthomp@chromium.org</owner> |
| <summary> |
| Metrics recorded when a navigated URL's domain name is visually similar to a |
| popular domain or a domain that the user engaged with. |
| </summary> |
| <metric name="MatchType"> |
| <summary> |
| An enum value representing the type of the match (popular domain, engaged |
| domain, etc.). The enum is defined in |LookalikeUrlBlockingPage|. |
| </summary> |
| </metric> |
| <metric name="TriggeredByInitialUrl" enum="Boolean"> |
| <summary> |
| A boolean representing whether or not the warning was triggered by the |
| first URL in the chain, or whether the warning was triggered by the final |
| (committed) URL. |
| </summary> |
| </metric> |
| <metric name="UserAction"> |
| <summary> |
| An enum value representing the decision the user made when shown an |
| interstitial (ignored, suggestion_accepted, etc.). The enum is defined in |
| |LookalikeUrlBlockingPage|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MainFrameDownload"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <owner>yaoxia@chromium.org</owner> |
| <summary> |
| Measurement for top frame download. It is only recorded for downloads |
| originated from navigations or from HTML anchor download attributes. |
| </summary> |
| <metric name="HasGesture"> |
| <summary> |
| A boolean denoting whether the download involves a transient user gesture. |
| </summary> |
| </metric> |
| <metric name="HasSandbox"> |
| <summary> |
| A boolean denoting whether the download occurs in a sandboxed browsing |
| context. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MainFrameNavigation" singular="True"> |
| <owner>thegreenfrog@chromium.org</owner> |
| <summary> |
| Metric associated with a main frame navigation. Currently implemented only |
| on iOS. |
| </summary> |
| <metric name="DidCommit" enum="Boolean"> |
| <summary> |
| Set to 1 if the navigation successfully committed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.Autoplay.Attempt"> |
| <owner>dalecurtis@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Event recorded when there is an attempt to autoplay (ie. no user gesture). |
| It will be recorded regardless of the result of this attempt. |
| </summary> |
| <metric name="AudioTrack"> |
| <summary> |
| Whether the element had an audio track when autoplay was attempted. |
| </summary> |
| </metric> |
| <metric name="HighMediaEngagement"> |
| <summary> |
| Whether the document has a high media engagement. |
| </summary> |
| </metric> |
| <metric name="Muted"> |
| <summary> |
| Whether the element was muted when autoplay was attempted. |
| </summary> |
| </metric> |
| <metric name="Source"> |
| <summary> |
| Source of the autoplay attempt: 0 for attribute; 1 for play(). |
| </summary> |
| </metric> |
| <metric name="UserGestureRequired"> |
| <summary> |
| Whether a user gesture was required per autoplay rules at the time of |
| attempt. By definition there is no user gesture on the stack when the |
| attempt is registered. |
| </summary> |
| </metric> |
| <metric name="UserGestureStatus"> |
| <summary> |
| Reflects the current status of user gesture/activation. This is a bit |
| field with the following values: - 0b0001 if there is a user gesture on |
| the stack; - 0b0010 if there was a user gesture on the page (ie. was |
| activated); - 0b0100 if there was a user gesture propagated after a |
| navigation. |
| </summary> |
| </metric> |
| <metric name="VideoTrack"> |
| <summary> |
| Whether the element had a video track when autoplay was attempted. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.Autoplay.AudioContext"> |
| <owner>dalecurtis@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Records the AudioContext autoplay information. |
| </summary> |
| <metric name="SourceNodeStarted"> |
| <summary> |
| A boolean indicating if start() was called for any source node associated |
| to the AudioContext. |
| </summary> |
| </metric> |
| <metric name="Status"> |
| <summary> |
| Status of this AudioContext when the autoplay policy applies. It will |
| match the values from AudioContext::AutoplayStatus. |
| </summary> |
| </metric> |
| <metric name="UnlockType"> |
| <summary> |
| How the AudioContext was unlocked if it was. It will match the values from |
| AudioContext::AutoplayUnlockType unless the AudioContext was never |
| unlocked in which case it will be equal to -1. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.Autoplay.Muted.UnmuteAction"> |
| <owner>dalecurtis@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Event recorded when there is an attempt to unmute an media that was |
| autoplaying following the rules of autoplay muted. |
| </summary> |
| <metric name="Result"> |
| <summary> |
| 0 means that the unmute failed because it happened without a user gesture. |
| 1 means that it succeeded because it had a user gesture. |
| </summary> |
| </metric> |
| <metric name="Source"> |
| <summary> |
| Similar to "Source" in "Media.Autoplay.Attempt" with |
| the addition of a value for both sources being used: 0 for attribute; 1 |
| for play(); 2 for both attempted. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.BasicPlayback"> |
| <owner>dalecurtis@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Core metrics associated with a media playback through WebMediaPlayerImpl. |
| Reported at the time of WatchTimeRecorder destruction or render process |
| termination; whichever comes first. There will be multiple entries for a |
| given playback; one for every PlaybackProperties change as well as one for |
| foreground and background. Records may be aggregated based on PlayerID and |
| correlated with the Media.WebMediaPlayerState event. |
| </summary> |
| <metric name="AudioCodec"> |
| <summary> |
| media::AudioCodec enum value. Can be kUnknownAudioCodec even when HasAudio |
| is true because we don't always know the codec. |
| </summary> |
| </metric> |
| <metric name="AudioCodecProfile"> |
| <summary> |
| media::AudioCodecProfile enum value. Can be AudioCodecProfile::kUnknown |
| even when HasAudio is true because we don't always know the codec profile. |
| </summary> |
| </metric> |
| <metric name="AudioDecoderName"> |
| <summary> |
| Enumeration of audio decoder implementations, zero if none or unknown |
| (Cast, HLS, etc). See AudioDecoderType (media/base/decoder.h) for expected |
| values. |
| </summary> |
| </metric> |
| <metric name="AudioEncryptionScheme"> |
| <summary> |
| media::EncryptionMode enum value. Can be kUnencrypted if IsEME is false or |
| if the audio track is unencrypted. |
| </summary> |
| </metric> |
| <metric name="AutoplayInitiated"> |
| <summary> |
| Boolean value indicating whether the initial playback was initiated via |
| autoplay. Multilpe chunk records of the same player should have the same |
| value. Autoplay is defined as a playback starting before there was a user |
| activation on the page or without a user initiated same-domain navigation. |
| </summary> |
| </metric> |
| <metric name="CompletedRebuffersCount"> |
| <summary> |
| Integer count of the number of times a previous rebuffer succeeded and |
| playback continued. |
| </summary> |
| </metric> |
| <metric name="CompletedRebuffersDuration"> |
| <summary> |
| Sum in milliseconds of all completed rebuffering events. Only reported if |
| a rebuffering completion occurred. |
| </summary> |
| </metric> |
| <metric name="Duration"> |
| <summary> |
| Duration in milliseconds, rounded to the most significant digit, of the |
| media being played. May be missing if the duration is unknown or infinite. |
| </summary> |
| </metric> |
| <metric name="HasAudio"> |
| <summary> |
| Boolean value indicating the presence of audio. |
| </summary> |
| </metric> |
| <metric name="HasVideo"> |
| <summary> |
| Boolean value indicating the presence of video. |
| </summary> |
| </metric> |
| <metric name="IsBackground"> |
| <summary> |
| Boolean value indicating if this event is for a background playback. |
| </summary> |
| </metric> |
| <metric name="IsEME"> |
| <summary> |
| Boolean value indicating if this event is for an EME playback. |
| </summary> |
| </metric> |
| <metric name="IsMSE"> |
| <summary> |
| Boolean value indicating if this event is for an MSE playback. If false it |
| means this was a SRC playback. |
| </summary> |
| </metric> |
| <metric name="IsMuted"> |
| <summary> |
| Boolean value indicating if this event is for a muted playback. |
| </summary> |
| </metric> |
| <metric name="IsTopFrame"> |
| <summary> |
| Flag indicating whether the report comes from the top frame or some inner |
| frame. For privacy, metrics from inner frames are recorded with the top |
| frame's origin, so this flag helps separate top frame vs. embedded |
| playbacks. |
| </summary> |
| </metric> |
| <metric name="LastPipelineStatus"> |
| <summary> |
| media::PipelineStatus enum value. Always 0 if the playback succeeded; all |
| other values indicate the playback ended in an error. |
| </summary> |
| </metric> |
| <metric name="MeanTimeBetweenRebuffers"> |
| <summary> |
| Average number of milliseconds between rebuffering events. Only reported |
| if a rebuffering event occurred. Computed by dividing total watch time by |
| the number of rebuffering events. |
| </summary> |
| </metric> |
| <metric name="MediaStreamType" enum="MediaStreamType"> |
| <summary> |
| Enum value indicating the type of MediaStream if the playback is from a |
| MediaStream, or kNonMediaStream otherwise. |
| </summary> |
| </metric> |
| <metric name="PlayerID"> |
| <summary> |
| ID which corresponds to a given WebMediaPlayerImpl instance. May be linked |
| with Media.WebMediaPlayerState events to understand playback more deeply. |
| </summary> |
| </metric> |
| <metric name="RebuffersCount"> |
| <summary> |
| Integer count of the number of times playback experienced rebuffering. |
| </summary> |
| </metric> |
| <metric name="VideoCodec"> |
| <summary> |
| media::VideoCodec enum value. Can be kUnknownVideoCodec even when HasVideo |
| is true because we don't always know the codec. |
| </summary> |
| </metric> |
| <metric name="VideoCodecProfile"> |
| <summary> |
| media::VideoCodecProfile enum value. Can be VIDEO_CODEC_PROFILE_UNKNOWN |
| even when HasVideo is true because we don't always know the codec profile. |
| </summary> |
| </metric> |
| <metric name="VideoDecoderName"> |
| <summary> |
| Enumeration of video decoder implementations, zero if none or unknown |
| (Cast, HLS, etc). See VideoDecoderType (media/base/decoder.h) for expected |
| values. |
| </summary> |
| </metric> |
| <metric name="VideoEncryptionScheme"> |
| <summary> |
| media::EncryptionMode enum value. Can be kUnencrypted if IsEME is false or |
| if the video track is unencrypted. |
| </summary> |
| </metric> |
| <metric name="VideoFramesDecoded"> |
| <summary> |
| Integer count of the video frames decoded in this record. |
| </summary> |
| </metric> |
| <metric name="VideoFramesDropped"> |
| <summary> |
| Integer count of the video frames dropped in this record. Should not |
| exceed VideoFramesDecoded. |
| </summary> |
| </metric> |
| <metric name="VideoNaturalHeight"> |
| <summary> |
| Integer value indicating the natural height of the playback. |
| </summary> |
| </metric> |
| <metric name="VideoNaturalWidth"> |
| <summary> |
| Integer value indicating the natural width of the playback. |
| </summary> |
| </metric> |
| <metric name="WatchTime"> |
| <summary> |
| Watch time in milliseconds for this playback. See Media.WatchTime UMA |
| metrics. |
| </summary> |
| </metric> |
| <metric name="WatchTime.AC"> |
| <summary> |
| Watch time on AC power in milliseconds for this playback. See |
| Media.WatchTime UMA metrics. |
| </summary> |
| </metric> |
| <metric name="WatchTime.Battery"> |
| <summary> |
| Watch time on battery power in milliseconds for this playback. See |
| Media.WatchTime UMA metrics. |
| </summary> |
| </metric> |
| <metric name="WatchTime.DisplayFullscreen"> |
| <summary> |
| Watch time for fullscreen in milliseconds for this playback. See |
| Media.WatchTime UMA metrics. Only reported for foreground playbacks. |
| </summary> |
| </metric> |
| <metric name="WatchTime.DisplayInline"> |
| <summary> |
| Watch time for inline display in milliseconds for this playback. See |
| Media.WatchTime UMA metrics. Only reported for foreground playbacks. |
| </summary> |
| </metric> |
| <metric name="WatchTime.DisplayPictureInPicture"> |
| <summary> |
| Watch time for picture in picture display in milliseconds for this |
| playback. See Media.WatchTime UMA metrics. Only reported for foreground |
| playbacks. |
| </summary> |
| </metric> |
| <metric name="WatchTime.NativeControlsOff"> |
| <summary> |
| Watch time with no controls in milliseconds for this playback. See |
| Media.WatchTime UMA metrics. Only reported for foreground playbacks. |
| </summary> |
| </metric> |
| <metric name="WatchTime.NativeControlsOn"> |
| <summary> |
| Watch time with native controls in milliseconds for this playback. See |
| Media.WatchTime UMA metrics. Only reported for foreground playbacks. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.EME.ApiPromiseRejection"> |
| <owner>xhwang@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Event recorded when an Encrypted Media Extensions (EME) API promise is |
| rejected. In most cases this indicates a failure. |
| </summary> |
| <metric name="Api" enum="EmeApiType"> |
| <summary> |
| The EME API for which the promise is rejected. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="KeySystem" enum="MediaKeySystem"> |
| <summary> |
| The key system associated with the current CDM. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SystemCode" enum="CdmSystemCode"> |
| <summary> |
| A CDM specific code providing more details about the cause of rejection. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UseHardwareSecureCodecs" enum="Boolean"> |
| <summary> |
| Whether hardware secure codecs are required for the current CDM. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Media.EME.CreateMediaKeys"> |
| <owner>xhwang@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Event recorded when createMediaKeys() is called as part of Encrypted Media |
| Extensions (EME) API. |
| </summary> |
| <metric name="IsAdFrame" enum="Boolean"> |
| <summary> |
| Whether the frame is an ad frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IsCrossOrigin" enum="Boolean"> |
| <summary> |
| Whether the frame is Cross-Origin to the main frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IsTopFrame" enum="Boolean"> |
| <summary> |
| Whether the frame is the main frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="KeySystem" enum="MediaKeySystemLegacy"> |
| <summary> |
| The key system associated with this call. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Media.EME.GetStatusForPolicy"> |
| <owner>frs@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Event recorded when the EME API GetStatusForPolicy promise is resolved. |
| </summary> |
| <metric name="IsAdFrame" enum="Boolean"> |
| <summary> |
| Whether the frame is an ad frame. This is not set if the frame is null. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="KeySystem" enum="MediaKeySystem"> |
| <summary> |
| The key system associated with the current CDM. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="MinHdcpVersion" enum="HdcpVersion"> |
| <summary> |
| The minimum HDCP version requested for EME API GetStatusForPolicy. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UseHardwareSecureCodecs" enum="Boolean"> |
| <summary> |
| Whether hardware secure codecs are required for the current CDM. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Media.EME.RequestMediaKeySystemAccess"> |
| <owner>xhwang@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Event recorded when RequestMediaKeySystemAccess() is called as part of |
| Encrypted Media Extensions (EME) API. |
| </summary> |
| <metric name="IsAdFrame" enum="Boolean"> |
| <summary> |
| Whether the frame is an ad frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IsCrossOrigin" enum="Boolean"> |
| <summary> |
| Whether the frame is Cross-Origin to the main frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="IsTopFrame" enum="Boolean"> |
| <summary> |
| Whether the frame is the main frame. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="KeySystem" enum="MediaKeySystemLegacy"> |
| <summary> |
| The key system passed in requestMediaKeySystemAccess() call. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="VideoCapabilities" enum="Boolean"> |
| <summary> |
| Whether there are any "videoCapabilities". |
| </summary> |
| </metric> |
| <metric name="VideoCapabilities.HasEmptyRobustness" enum="Boolean"> |
| <summary> |
| Whether there are any "videoCapabilities" with empty robustness. |
| </summary> |
| </metric> |
| <metric name="VideoCapabilities.HasHwSecureAllRobustness" enum="Boolean"> |
| <summary> |
| Whether there are any "videoCapabilities" with robustness being |
| "HW_SECURE_ALL". |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Media.Engagement.SessionFinished"> |
| <owner>beccahughes@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| The Media Engagement index stores the number of significant media playbacks |
| per origin and the number of visits. From that we calculate a Media |
| Engagement Score. |
| |
| To tweak the scoring function we are logging the total number of significant |
| media playbacks, the total number of visits, the calculated engagement score |
| and the new number of significant media playbacks that occurred this visit. |
| </summary> |
| <metric name="Engagement.IsHigh"> |
| <summary> |
| Whether the Media Engagement Service considers the score to be high (we |
| are using a two threshold approach so there is one threshold to be |
| considered high and another one to lose that status to reduce jitter). |
| </summary> |
| </metric> |
| <metric name="Engagement.IsHigh.Changed"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| Whether the IsHigh bit changed during the current session. |
| </summary> |
| </metric> |
| <metric name="Engagement.IsHigh.Changes"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| Counts of IsHigh changing (from 0 to 1 or 1 to 0). |
| </summary> |
| </metric> |
| <metric name="Engagement.IsPreloaded"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| Whether the origin was preloaded (from the chrome://component) as a high |
| engagement origin. |
| </summary> |
| </metric> |
| <metric name="Engagement.Score"> |
| <summary> |
| The calculated Media Engagement score for the current origin. The score is |
| calculated by dividing the number of significant media playbacks by the |
| number of visits. If the number of visits is below 5 then the score will |
| be zero. This score is taken from MediaEngagementService. |
| </summary> |
| </metric> |
| <metric name="Playbacks.AudioContextTotal"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| The total number of significant media playbacks on this origin that came |
| from WebAudio / AudioContext. |
| </summary> |
| </metric> |
| <metric name="Playbacks.Delta"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| The number of significant media playbacks on this origin during this |
| session (a visit to an origin on the same tab). A playback is determined |
| significant if it meets certain criteria such as a video size of at least |
| 200x140px, is not muted, is playing, etc. |
| </summary> |
| </metric> |
| <metric name="Playbacks.MediaElementTotal"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| The total number of significant media playbacks on this origin that came |
| from media elements. |
| </summary> |
| </metric> |
| <metric name="Playbacks.SecondsSinceLast"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| The number of seconds between significant media playback on the last visit |
| and significant media playback on the current visit. If there was no |
| previous visit or significant media playback this visit it will be 0. |
| </summary> |
| </metric> |
| <metric name="Playbacks.Total"> |
| <summary> |
| The total number of significant media playbacks on this origin. |
| </summary> |
| </metric> |
| <metric name="Player.Audible.Delta"> |
| <summary> |
| The number of unique audio/video players on a page that was audible (made |
| sound) during a visit. |
| </summary> |
| </metric> |
| <metric name="Player.Audible.Total"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| The delta from above but instead of a single visit, the total of all |
| deltas for all visits on this origin. |
| </summary> |
| </metric> |
| <metric name="Player.Significant.Delta"> |
| <summary> |
| The number of unique audio/video players on a page that was audible (made |
| sound) and considered significant (played for at least 7 seconds) during a |
| visit. |
| </summary> |
| </metric> |
| <metric name="Player.Significant.Total"> |
| <obsolete> |
| Deprecated 8/19 as part of https://crbug.com/998685 |
| </obsolete> |
| <summary> |
| The delta from above but instead of a single visit, the total of all |
| deltas for all visits on this origin. |
| </summary> |
| </metric> |
| <metric name="Visits.Total"> |
| <summary> |
| The total number of visits to this origin. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.Engagement.ShortPlaybackIgnored"> |
| <owner>beccahughes@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| The Media Engagement index stores the number of significant media playbacks |
| per origin and the number of audible players. From that we calculate a Media |
| Engagement Score. |
| |
| Media with a short playback length is ignored so we are logging any time the |
| player is ignored with the length in msec. This will allow us to identify |
| whether sites are being penalized or there is abuse and allow us to tweak |
| the length considered "short". |
| </summary> |
| <metric name="Length"/> |
| </event> |
| |
| <event name="Media.Feed.Discover"> |
| <owner>beccahughes@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Media Feeds are out of band feeds of media recommendations that are fetched |
| by the browser. This records when we discover a feed that has been placed in |
| a meta tag on a website. |
| </summary> |
| <metric name="HasMediaFeed"> |
| <summary> |
| Whether the site has a media feed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.GlobalMediaControls.ActionButtonPressed"> |
| <owner>steimel@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Records when a user presses a button in the Global Media Controls. Records |
| no more than 100 actions per source per session. Records which button was |
| pressed (e.g. play, pause, next track, picture-in-picture). |
| </summary> |
| <metric name="MediaSessionAction" enum="MediaSessionAction"> |
| <summary> |
| The action of the button that was pressed (e.g. play, pause, next track, |
| picture-in-picture). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.Kaleidoscope.Navigation"> |
| <obsolete> |
| Deprecated as of 2020/12. |
| </obsolete> |
| <owner>beccahughes@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Kaleidoscope is a media recommendations feature in Chrome. This event is |
| recorded when a user selects a media recommendation and there is a |
| navigation to the new site from Kaleidoscope. |
| </summary> |
| <metric name="WasFromKaleidoscope"> |
| <summary> |
| Whether the navigation was from Kaleiodscope. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.Learning.PredictionRecord"> |
| <owner>liberato@chromium.org</owner> |
| <summary> |
| A record of some predicted value vs. an observation. If the prediction is |
| for a regression-style task (e.g., "predict a number" rather than |
| "predict an enum value"), then the predicted and observed values |
| are the numeric values, scaled by default to be in the integer range 0-100. |
| |
| The exact scaling used depends on the particular regression problem. Please |
| see the LearningTask structure for the task of interest to find out how it |
| maps values into the [0, 100] output range. |
| |
| A record is created for every prediction separately. |
| |
| For example, in the MediaCapabilities experiments, each playback generates a |
| record. The predicted / observed values are the ratio of dropped to decoded |
| frames, expressed as a percentage scaled to 0-100. |
| </summary> |
| <metric name="LearningTask"> |
| <summary> |
| The learning task to which this record applies. This is a persistent hash |
| of the |name| field in the LearningTask. Presumably, you'll want to |
| include only records of a particular task when analyzing results. |
| </summary> |
| </metric> |
| <metric name="ObservedValue"> |
| <summary> |
| Observed value for this sample, scaled into the range [0, 100]. The exact |
| scaling factor depends on the particular task. |
| |
| MediaCapabilities, for example, reports 100 * percentage_of_dropped_frames |
| in this field. |
| </summary> |
| </metric> |
| <metric name="PredictedValue"> |
| <summary> |
| Predicted value for this sample, scaled into the range [0, 100]. The exact |
| scaling factor depends on the particular task. |
| |
| MediaCapabilities, for example, reports 100 * percentage_of_dropped_frames |
| in this field. |
| </summary> |
| </metric> |
| <metric name="TrainingDataSize"> |
| <summary> |
| Number of training examples that were used to train this model. |
| </summary> |
| </metric> |
| <metric name="TrainingDataTotalWeight"> |
| <summary> |
| Total weight of all examples that were used to train this model. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.SiteMuted" singular="True"> |
| <owner>steimel@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Event recorded when a website tries to play audio but is muted by the sound |
| content setting. |
| </summary> |
| <metric name="MuteReason"> |
| <summary> |
| Enum value giving the reason the site was muted. Defined as |
| |SoundContentSettingObserver::MuteReason|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.VideoDecodePerfRecord"> |
| <owner>chcunningham@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| A record of decoding performance metrics from a video playback with the |
| given stream characteristics (profile, resolution, fps). Also includes what |
| Media Capabilities API would claim for such a stream as a means of assessing |
| the API's accuracy. |
| </summary> |
| <metric name="Perf.ApiWouldClaimIsPowerEfficient"> |
| <summary> |
| Boolean signaling whether MediaCapabilities would classify streams with |
| these characteristics as power efficient prior to considering this latest |
| record. MediaCapabilities prediction is accurate when this value matches |
| RecordIsPowerEfficient. |
| </summary> |
| </metric> |
| <metric name="Perf.ApiWouldClaimIsSmooth"> |
| <summary> |
| Boolean signaling whether MediaCapabilities would classify streams with |
| these characteristics as smooth prior to considering this latest record. |
| MediaCapabilities prediction is accurate when this value matches |
| RecordIsSmooth. |
| </summary> |
| </metric> |
| <metric name="Perf.PastVideoFramesDecoded"> |
| <summary> |
| Integer count of past video frames decoded for the given video type. |
| </summary> |
| </metric> |
| <metric name="Perf.PastVideoFramesDropped"> |
| <summary> |
| Integer count of past video frames dropped for the given video type. |
| </summary> |
| </metric> |
| <metric name="Perf.PastVideoFramesPowerEfficient"> |
| <summary> |
| Integer count of past video frames power efficient for the given video |
| type. |
| </summary> |
| </metric> |
| <metric name="Perf.RecordIsPowerEfficient"> |
| <summary> |
| Boolean signaling whether MediaCapabilities would classify this isolated |
| playback record as power efficient. |
| </summary> |
| </metric> |
| <metric name="Perf.RecordIsSmooth"> |
| <summary> |
| Boolean signaling whether MediaCapabilities would classify this isolated |
| playback record as smooth. |
| </summary> |
| </metric> |
| <metric name="Perf.VideoFramesDecoded"> |
| <summary> |
| Integer count of the video frames decoded in this record. |
| </summary> |
| </metric> |
| <metric name="Perf.VideoFramesDropped"> |
| <summary> |
| Integer count of the video frames dropped in this record. Should not |
| exceed VideoFramesDecoded. |
| </summary> |
| </metric> |
| <metric name="Perf.VideoFramesPowerEfficient"> |
| <summary> |
| Integer count of the video frames decoded via power efficient means in |
| this record. Should not exceed VideoFramesDecoded. |
| </summary> |
| </metric> |
| <metric name="Video.CodecProfile"> |
| <summary> |
| media::VideoCodecProfile enum value. Can be VIDEO_CODEC_PROFILE_UNKNOWN if |
| we don't know the video codec. |
| </summary> |
| </metric> |
| <metric name="Video.EME.KeySystem" enum="MediaKeySystem"> |
| <summary> |
| Name of the KeySystem used during for an encrypted (EME) playback. Will be |
| unset when EME is not used. |
| </summary> |
| </metric> |
| <metric name="Video.EME.UseHwSecureCodecs"> |
| <summary> |
| Boolean indicating whether content decryption module (CDM) was configured |
| to use hardware secure decoding. May be true or false for EME playbacks. |
| Will be unset for non-EME playbacks. |
| </summary> |
| </metric> |
| <metric name="Video.FramesPerSecond"> |
| <summary> |
| Integer representing video frames per second. This is the cadence of video |
| frames as described by stream timestamps multiplied by |
| HTMLMediaELement.playbackRate. |
| </summary> |
| </metric> |
| <metric name="Video.InTopFrame"> |
| <summary> |
| Flag indicating whether the record comes from the top frame or some inner |
| frame. For privacy, metrics from inner frames are recorded with the top |
| frame's origin, so this flag helps separate top frame vs. embedded |
| playbacks. |
| </summary> |
| </metric> |
| <metric name="Video.NaturalHeight"> |
| <summary> |
| Integer representing height of video natural size. |
| </summary> |
| </metric> |
| <metric name="Video.NaturalWidth"> |
| <summary> |
| Integer representing width of video natural size. |
| </summary> |
| </metric> |
| <metric name="Video.PlayerID"> |
| <summary> |
| ID which corresponds to a given WebMediaPlayerImpl instance. May be linked |
| with Media.WebMediaPlayerState events to understand playback more deeply. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.WatchTime"> |
| <obsolete> |
| Deprecated 8/2017 in favor Media.BasicPlayback |
| </obsolete> |
| <owner>dalecurtis@chromium.org</owner> |
| <summary> |
| Watch time is defined as the amount of elapsed media time for audio+video |
| media aggregated per player instance. A minimum of 7 seconds of unmuted, |
| foreground media must be watched to start watch time monitoring. Watch time |
| is checked on a regular basis and reported upon one of the stop events |
| mentioned below or at player destruction if none occur prior. |
| |
| Any one of paused, hidden, or muted is sufficient to stop watch time metric |
| reports. Each of these has a hysteresis where if the state change is undone |
| within some time, the watch time will be counted as uninterrupted. |
| |
| Power events (on/off battery power) have a similar hysteresis, but unlike |
| the aforementioned properties, will not stop metric collection. |
| |
| Native controls events have a similar behavior than power events. |
| |
| Each seek event will result in a new watch time metric being started and the |
| old metric finalized as accurately as possible. |
| </summary> |
| <metric name="Audio.AC"/> |
| <metric name="Audio.All"/> |
| <metric name="Audio.Battery"/> |
| <metric name="Audio.EME"/> |
| <metric name="Audio.MSE"/> |
| <metric name="Audio.NativeControlsOff"/> |
| <metric name="Audio.NativeControlsOn"/> |
| <metric name="Audio.SRC"/> |
| <metric name="AudioVideo.AC"/> |
| <metric name="AudioVideo.All"/> |
| <metric name="AudioVideo.Background.AC"/> |
| <metric name="AudioVideo.Background.All"/> |
| <metric name="AudioVideo.Background.Battery"/> |
| <metric name="AudioVideo.Background.EME"/> |
| <metric name="AudioVideo.Background.MSE"/> |
| <metric name="AudioVideo.Background.SRC"/> |
| <metric name="AudioVideo.Battery"/> |
| <metric name="AudioVideo.DisplayFullscreen"/> |
| <metric name="AudioVideo.DisplayInline"/> |
| <metric name="AudioVideo.DisplayPictureInPicture"/> |
| <metric name="AudioVideo.EME"/> |
| <metric name="AudioVideo.MSE"/> |
| <metric name="AudioVideo.NativeControlsOff"/> |
| <metric name="AudioVideo.NativeControlsOn"/> |
| <metric name="AudioVideo.SRC"/> |
| </event> |
| |
| <event name="Media.WebAudio.AudioContext.AudibleTime"> |
| <owner>hongchan@chromium.org</owner> |
| <owner>mjwilson@chromium.org</owner> |
| <owner>webaudio-dev@chromium.org</owner> |
| <summary> |
| Records the AudioContext audible time information. |
| </summary> |
| <metric name="AudibleTime"> |
| <summary> |
| Audible time in milliseconds for this event. |
| </summary> |
| </metric> |
| <metric name="IsMainFrame"> |
| <summary> |
| Indicates whether the event is fired from main frame. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Media.WebMediaPlayerState"> |
| <owner>dalecurtis@chromium.org</owner> |
| <owner>media-dev@chromium.org</owner> |
| <summary> |
| Final state of WebMediaPlayerImpl instance. Records only immutable playback |
| properties. Contains a PlaybackID which links to Media.BasicPlayback events. |
| </summary> |
| <metric name="AudioEncryptionType" enum="MediaEncryptionType"> |
| <summary> |
| Encryption type of the audio stream such as whether audio is encrypted and |
| if so whether it has clear lead. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ContainerName"> |
| <summary> |
| media::container_names::MediaContainerName enum value. Only recorded for |
| !IsMSE src=URL playbacks, this is the container of the media being played |
| back; E.g., mp4, avi, mp3, etc. |
| </summary> |
| </metric> |
| <metric name="FinalPipelineStatus" enum="PipelineStatus"> |
| <summary> |
| media::PipelineStatus enum value. Always 0 if the playback succeeded; all |
| other values indicate the playback ended in an error. |
| </summary> |
| </metric> |
| <metric name="IsEME"> |
| <summary> |
| Boolean value indicating if this event is for an EME playback. Note: EME |
| can be attached anytime during the lifecycle of a WebMediaPlayerImpl, but |
| once attached can't be removed. |
| </summary> |
| </metric> |
| <metric name="IsHardwareSecure" enum="Boolean"> |
| <summary> |
| Boolean value indicating whether the EME playback is using hardware secure |
| pipeline. For clear playback, this will always be false. |
| </summary> |
| </metric> |
| <metric name="IsMSE"> |
| <summary> |
| Boolean value indicating if this event is for an MSE playback. If false it |
| means this was a SRC playback. |
| </summary> |
| </metric> |
| <metric name="IsTopFrame"> |
| <summary> |
| Flag indicating whether the report comes from the top frame or some inner |
| frame. For privacy, metrics from inner frames are recorded with the top |
| frame's origin, so this flag helps separate top frame vs. embedded |
| playbacks. |
| </summary> |
| </metric> |
| <metric name="KeySystem" enum="MediaKeySystem"> |
| <summary> |
| For EME playback, this is the key system used. For clear playback, this |
| will always be the default value 0 (kUnknownKeySystemForUkm). |
| </summary> |
| </metric> |
| <metric name="PlayerID"> |
| <summary> |
| ID which corresponds to a given WebMediaPlayerImpl instance. May be linked |
| with Media.BasicPlayback events to understand a playback more deeply. |
| </summary> |
| </metric> |
| <metric name="RendererType" enum="MediaRendererType"> |
| <summary> |
| Type of media::Renderer used for the playback. In most cases we do not |
| support dynamically changing RendererType during one playback. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TimeToFirstFrame"> |
| <summary> |
| Time in milliseconds from when WebMediaPlayerImpl starts loading until the |
| first video frame has been shown. |
| </summary> |
| </metric> |
| <metric name="TimeToMetadata"> |
| <summary> |
| Time in milliseconds from when WebMediaPlayerImpl starts loading until |
| metadata is known. |
| </summary> |
| </metric> |
| <metric name="TimeToPlayReady"> |
| <summary> |
| Time in milliseconds from when WebMediaPlayerImpl starts loading until it |
| has buffered enough to start playback. |
| </summary> |
| </metric> |
| <metric name="URLScheme"> |
| <summary> |
| media::mojom::MediaURLScheme enum value. Only recorded for !IsMSE src=URL |
| playbacks, this is the scheme of that URL; E.g., http, https, filesystem, |
| etc. |
| </summary> |
| </metric> |
| <metric name="VideoEncryptionType" enum="MediaEncryptionType"> |
| <summary> |
| Encryption type of the video stream such as whether video is encrypted and |
| if so whether it has clear lead. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="MediaRouter.CastWebSenderExtensionLoadUrl" singular="True"> |
| <owner>rwkeane@chromium.org</owner> |
| <owner>openscreen-eng@google.com</owner> |
| <summary> |
| Records that the a resource has been loaded from the Media Router Component |
| Extension. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred; only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MediaRouter.SiteInitiatedMirroringStarted"> |
| <owner>muyaoxu@google.com</owner> |
| <owner>openscreen-eng@google.com</owner> |
| <summary> |
| Recorded whenever user starts a site-initiated mirroring session via Media |
| Router. |
| </summary> |
| <metric name="AllowAudioCapture" enum="BooleanAllowed"> |
| <summary> |
| Whether audio capture is allowed in the cast session. If allowed, audio |
| playback will happen on the receiver side. If not allowed, audio playback |
| will happen on the sender side. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="MediaRouter.TabMirroringStarted"> |
| <owner>takumif@chromium.org</owner> |
| <owner>openscreen-eng@google.com</owner> |
| <summary> |
| Recorded whenever user starts a tab mirroring session via Media Router. |
| </summary> |
| <metric name="AudioState" enum="WebContentsAudioState"> |
| <summary> |
| The audio playback state of the WebContents at the start of the tab |
| mirroring session. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Memory.Experimental"> |
| <owner>erikchen@chromium.org</owner> |
| <owner>ssid@chromium.org</owner> |
| <summary> |
| Metrics associated with memory consumption, in MB. |
| </summary> |
| <metric name="ArrayBuffer"> |
| <summary> |
| Measure of memory consumed by Array Buffer. |
| </summary> |
| </metric> |
| <metric name="BlinkGC"> |
| <summary> |
| Measure of memory consumed by Oilpan. |
| </summary> |
| </metric> |
| <metric name="BlinkGC.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live allocations made from Oilpan. |
| </summary> |
| </metric> |
| <metric name="CanvasResourceProvider.SkSurface"> |
| <summary> |
| Measure of memory used due to CanvasResourceProvider's SkSurface. |
| </summary> |
| </metric> |
| <metric name="CommandBuffer"> |
| <summary> |
| Measure of memory consumed by GL command buffer. |
| </summary> |
| </metric> |
| <metric name="Discardable"> |
| <summary> |
| Measure of memory consumed by Discardable memory service. |
| </summary> |
| </metric> |
| <metric name="DownloadService"> |
| <summary> |
| Measure of memory used by download service. |
| </summary> |
| </metric> |
| <metric name="Extensions.ValueStore"> |
| <summary> |
| Measure of memory consumed by Key Value Store databases of extensions. |
| </summary> |
| </metric> |
| <metric name="FontCaches"> |
| <summary> |
| Measure of memory used by font platform and shape caches in renderer |
| process. |
| </summary> |
| </metric> |
| <metric name="GpuMemory"> |
| <summary> |
| Measure of GPU memory used by Chrome. |
| </summary> |
| </metric> |
| <metric name="History"> |
| <summary> |
| Approximate measure of memory consumed by History service. |
| </summary> |
| </metric> |
| <metric name="IsVisible"> |
| <summary> |
| Indicates whether the tab is visible or not at the time of metric |
| collection. |
| </summary> |
| </metric> |
| <metric name="JavaHeap"> |
| <summary> |
| Measure of memory consumed by java heap on Android. |
| </summary> |
| </metric> |
| <metric name="LevelDatabase"> |
| <summary> |
| Measure of memory consumed by unaccounted level databases. |
| </summary> |
| </metric> |
| <metric name="Malloc"> |
| <summary> |
| Measure of memory allocated by malloc, that is not classified by other |
| metrics. |
| </summary> |
| </metric> |
| <metric name="Malloc.AllocatedObjects"> |
| <summary> |
| Measure of total memory used by objects allocated using malloc. |
| </summary> |
| </metric> |
| <metric name="Net"> |
| <obsolete> |
| Deprecated as of 09/2021. |
| </obsolete> |
| <summary> |
| Measure of memory allocated by network sockets and caches. |
| </summary> |
| </metric> |
| <metric name="Net.UrlRequestContext"> |
| <obsolete> |
| Deprecated as of 09/2021. |
| </obsolete> |
| <summary> |
| Measure of memory allocated by all network requests. |
| </summary> |
| </metric> |
| <metric name="NumberOfAdSubframes"> |
| <summary> |
| The number of ad subframes that the associated renderer owns. |
| </summary> |
| </metric> |
| <metric name="NumberOfArrayBufferContents"> |
| <summary> |
| The number of arraybuffer contents that the associated renderer owns. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByClosing"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by closing/removal. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByClosing_After10sSinceDetaching"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by closing/removal, that |
| happened at least 10 seconds after detaching. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByClosing_After1minSinceDetaching"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by closing/removal, that |
| happened at least 1 minute after detaching. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByNavigation"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by navigating away. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByNavigation_After10sSinceDetaching"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by navigating away, that |
| happened at least 10 seconds after detaching. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByNavigation_After1minSinceDetaching"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by navigating away, that |
| happened at least 1 minute after detaching. |
| </summary> |
| </metric> |
| <metric name="NumberOfCallsInDetachedWindowByOtherReason"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by another reason. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByOtherReason_After10sSinceDetaching"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by another reason, that |
| happened at least 10 seconds after detaching. |
| </summary> |
| </metric> |
| <metric |
| name="NumberOfCallsInDetachedWindowByOtherReason_After1minSinceDetaching"> |
| <obsolete> |
| Deprecated as of 01/2020. |
| </obsolete> |
| <summary> |
| The number of function calls in a window detached by another reason, that |
| happened at least 1 minute after detaching. |
| </summary> |
| </metric> |
| <metric name="NumberOfDetachedScriptStates"> |
| <summary> |
| The number of detached ScriptState that the associated renderer owns. |
| </summary> |
| </metric> |
| <metric name="NumberOfDocuments"> |
| <summary> |
| The number of documents that the associated renderer owns. |
| </summary> |
| </metric> |
| <metric name="NumberOfExtensions"> |
| <summary> |
| The number of extensions that are served from the associated renderer |
| process. |
| </summary> |
| </metric> |
| <metric name="NumberOfFrames"> |
| <summary> |
| The number of frames that the associated renderer owns. |
| </summary> |
| </metric> |
| <metric name="NumberOfLayoutObjects"> |
| <summary> |
| The number of layout objects that the associated renderer owns. |
| </summary> |
| </metric> |
| <metric name="NumberOfMojoHandles"> |
| <summary> |
| The number of mojo handles stored in HandleTable. |
| </summary> |
| </metric> |
| <metric name="NumberOfNodes"> |
| <summary> |
| The number of nodes that the associated renderer owns. |
| </summary> |
| </metric> |
| <metric name="NumberOfWebMediaPlayers"> |
| <summary> |
| The number of web media players in the associated renderer. |
| </summary> |
| </metric> |
| <metric name="OmniboxSuggestions"> |
| <summary> |
| Measure of memory used due to URL indexing and autocomplete suggestions. |
| </summary> |
| </metric> |
| <metric name="PartitionAlloc"> |
| <summary> |
| Measure of memory allocated by PartitionAlloc allocator. |
| </summary> |
| </metric> |
| <metric name="PartitionAlloc.AllocatedObjects"> |
| <summary> |
| Measure of total memory used by objects allocated using PartitionAlloc. |
| </summary> |
| </metric> |
| <metric name="PartitionAlloc.Partitions.ArrayBuffer"> |
| <summary> |
| Measure of memory used by Array Buffer partition in PartitionAlloc. |
| </summary> |
| </metric> |
| <metric name="PartitionAlloc.Partitions.Buffer"> |
| <summary> |
| Measure of memory used by Buffer partition in PartitionAlloc. |
| </summary> |
| </metric> |
| <metric name="PartitionAlloc.Partitions.FastMalloc"> |
| <summary> |
| Measure of memory used by Fast Malloc partition in PartitionAlloc. |
| </summary> |
| </metric> |
| <metric name="PartitionAlloc.Partitions.Layout"> |
| <summary> |
| Measure of memory used by Layout partition in PartitionAlloc. |
| </summary> |
| </metric> |
| <metric name="PrivateMemoryFootprint"> |
| <summary> |
| Measure of total private memory consumed by process. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.ProcessType"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PrivateSwapFootprint"> |
| <summary> |
| Measure of private swap memory consumed by a process. Available on Linux |
| and Android. |
| </summary> |
| </metric> |
| <metric name="ProcessType"> |
| <summary> |
| Type of process (e.g. browser, renderer, GPU --- see |
| services/resource_coordinator/public/mojom/memory_instrumentation/memory_instrumentation.mojom) |
| of associated metrics. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics export="False"> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Resident"> |
| <summary> |
| Size of process' working set. |
| </summary> |
| </metric> |
| <metric name="SharedMemoryFootprint"> |
| <summary> |
| Measure of total shared memory consumed by process. |
| </summary> |
| </metric> |
| <metric name="SiteStorage"> |
| <summary> |
| Measure of memory used due to web storage APIs in browser process. |
| </summary> |
| </metric> |
| <metric name="SiteStorage.BlobStorage"> |
| <summary> |
| Measure of memory used by in-memory blob file API in browser process. |
| </summary> |
| </metric> |
| <metric name="SiteStorage.IndexDB"> |
| <summary> |
| Measure of memory used due to IndexedDB API in browser process. |
| </summary> |
| </metric> |
| <metric name="SiteStorage.LocalStorage"> |
| <summary> |
| Measure of memory used due to Local Storage API in browser process. |
| </summary> |
| </metric> |
| <metric name="SiteStorage.SessionStorage"> |
| <summary> |
| Measure of memory used due to Session Storage API in browser process. |
| </summary> |
| </metric> |
| <metric name="Skia"> |
| <summary> |
| Measure of memory used by Skia. |
| </summary> |
| </metric> |
| <metric name="Skia.SkGlyphCache"> |
| <summary> |
| Measure of memory used by Skia Glyph Cache. |
| </summary> |
| </metric> |
| <metric name="Skia.SkResourceCache"> |
| <summary> |
| Measure of memory used by Skia Resource Cache. |
| </summary> |
| </metric> |
| <metric name="Sqlite"> |
| <summary> |
| Measure of memory used by all sqlite databases. |
| </summary> |
| </metric> |
| <metric name="Sync"> |
| <summary> |
| Measure of memory used by Sync storage. |
| </summary> |
| </metric> |
| <metric name="TabRestore"> |
| <summary> |
| Approximate measure of memory used by Tab restore service. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastNavigation"> |
| <summary> |
| The time in seconds since the Tab navigated. Only emitted for tabs that |
| are not sharing a process. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastVisibilityChange"> |
| <summary> |
| The time in seconds since the Tab changed visibility. Only emitted for |
| tabs that are not sharing a process. |
| </summary> |
| </metric> |
| <metric name="Total2.PrivateMemoryFootprint"> |
| <summary> |
| Measure of total private memory consumed by all processes. |
| </summary> |
| </metric> |
| <metric name="Total2.SharedMemoryFootprint"> |
| <summary> |
| Measure of total shared memory consumed by all processes. |
| </summary> |
| </metric> |
| <metric name="UI"> |
| <summary> |
| Measure of memory used by Android UI bitmaps. |
| </summary> |
| </metric> |
| <metric name="Uptime"> |
| <summary> |
| Process uptime. |
| </summary> |
| </metric> |
| <metric name="V8"> |
| <summary> |
| Measure of memory consumed by V8. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.ProcessType"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="V8.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in V8. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.ProcessType"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="V8.Main"> |
| <summary> |
| Measure of memory consumed by the main isolate of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the main isolate of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.GlobalHandles"> |
| <summary> |
| Measure of memory consumed by global handles in V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.GlobalHandles.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by used global handles in V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap"> |
| <summary> |
| Measure of memory consumed by the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.CodeLargeObjectSpace"> |
| <summary> |
| Measure of memory consumed by the code large object space of the main heap |
| of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.CodeLargeObjectSpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the code large object space |
| of the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.CodeSpace"> |
| <summary> |
| Measure of memory consumed by the code space of the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.CodeSpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the code space of the main |
| heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.LargeObjectSpace"> |
| <summary> |
| Measure of memory consumed by the large object space of the main heap of |
| V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.LargeObjectSpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the large object space of |
| the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.MapSpace"> |
| <summary> |
| Measure of memory consumed by the map space of the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.MapSpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the map space of the main |
| heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.NewLargeObjectSpace"> |
| <summary> |
| Measure of memory consumed by the new large object space of the main heap |
| of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.NewLargeObjectSpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the new large object space |
| of the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.NewSpace"> |
| <summary> |
| Measure of memory consumed by the new space of the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.NewSpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the new space of the main |
| heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.OldSpace"> |
| <summary> |
| Measure of memory consumed by the old space of the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.OldSpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the old space of the main |
| heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.ReadOnlySpace"> |
| <summary> |
| Measure of memory consumed by the read-only space of the main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Heap.ReadOnlySpace.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in the read-only space of the |
| main heap of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Main.Malloc"> |
| <summary> |
| Measure of memory allocated by malloc in the main isolate of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Workers"> |
| <summary> |
| Measure of memory consumed by worker isolates of V8. |
| </summary> |
| </metric> |
| <metric name="V8.Workers.AllocatedObjects"> |
| <summary> |
| Measure of memory consumed by live objects in worker isolates of V8. |
| </summary> |
| </metric> |
| <metric name="WebCache"> |
| <summary> |
| Measure of memory consumed by all resources in Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.CSSStylesheetResources"> |
| <summary> |
| Measure of memory consumed by CSS Stylesheet resources in Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.EncodedSizeDuplicatedInDataUrls"> |
| <summary> |
| Measure of memory consumed by data URLs of Image resources in Blink Web |
| Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.FontResources"> |
| <summary> |
| Measure of memory consumed by Font resources in Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.ImageResources"> |
| <summary> |
| Measure of memory consumed by Image resources in Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.OtherResources"> |
| <summary> |
| Measure of memory consumed by other resources in Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.ScriptResources"> |
| <summary> |
| Measure of memory consumed by Script resources in Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.V8CodeCache"> |
| <summary> |
| Measure of memory consumed by V8 code cache held by Script resources in |
| Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebCache.XSLStylesheetResources"> |
| <summary> |
| Measure of memory consumed by XSL Stylesheet resources in Blink Web Cache. |
| </summary> |
| </metric> |
| <metric name="WebMediaPlayer.Audio"> |
| <summary> |
| Measure of total memory used by media/webmediaplayer/audio. |
| </summary> |
| </metric> |
| <metric name="WebMediaPlayer.DataSource"> |
| <summary> |
| Measure of total memory used by media/webmediaplayer/data_source. |
| </summary> |
| </metric> |
| <metric name="WebMediaPlayer.Demuxer"> |
| <summary> |
| Measure of total memory used by media/webmediaplayer/demuxer. |
| </summary> |
| </metric> |
| <metric name="WebMediaPlayer.Video"> |
| <summary> |
| Measure of total memory used by media/webmediaplayer/video. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Memory.TabFootprint"> |
| <owner>tommckee@chromium.org</owner> |
| <summary> |
| Measure of memory used by the processes that host an instance of a tab. |
| Intended as a high-level metric for analyzing effective memory use of |
| individual sites. |
| </summary> |
| <metric name="MainFrameProcessPMF"> |
| <summary> |
| Measure of private memory, in MB, consumed by the render process dedicated |
| to hosting the main frame. Undefined if the main frame is hosted by a |
| render process used by other tabs. If this is undefined, TabPMF will be |
| undefined. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SubFrameProcessPMF.Excluded"> |
| <summary> |
| Number of render processes that were blocked from contributing to |
| SubFrameProcessPMF.Total. A process can have its contribution blocked if |
| the process has responsibilities outside the scope of the relevant tab. If |
| this is non-zero, TabPMF will be undefined. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SubFrameProcessPMF.Included"> |
| <summary> |
| Number of render processes that contributed to SubFrameProcessPMF.Total. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SubFrameProcessPMF.Total"> |
| <summary> |
| Measure of total private memory, in MB, consumed by the render processes |
| dedicated to hosting sub-frames of the tab. Note that, if a render process |
| hosts frames of other tabs, it isn't considered to be 'dedicated' and so |
| it doesn't contribute to this total. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TabPMF"> |
| <summary> |
| Measure of private memory, in MB, consumed by all render processes |
| dedicated to hosting some part of a tab. Undefined if there are processes |
| responsible for hosting parts of this tab while hosting parts of other |
| tabs. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="MixedContentAutoupgrade.ResourceRequest"> |
| <owner>carlosil@chromium.org</owner> |
| <summary> |
| Status and Network error or HTTP response code for a resource request that |
| was autoupgraded to HTTPS as part of the mixed content autoupgrade |
| experiment. |
| </summary> |
| <metric name="Code"> |
| <summary> |
| The HTTP response or network error code for an autoupgraded request. |
| </summary> |
| </metric> |
| <metric name="Status"> |
| <summary> |
| An enum with 0 representing started, 1 failed, and 2 response received. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MobileFriendliness" singular="True"> |
| <owner>kumagi@google.com</owner> |
| <owner>gaul@google.com</owner> |
| <metric name="AllowUserZoom" enum="Boolean"> |
| <summary> |
| Whether the page allows the user to zoom in/out. |
| </summary> |
| </metric> |
| <metric name="BadTapTargetsRatio"> |
| <obsolete> |
| Deprecated 12/2022 in favor of MobileFriendliness.TappedBadTargets. |
| </obsolete> |
| <summary> |
| Percentage of tap targets whose center position is within another tap |
| target (expanded by a margin). The detail of the algorithm is |
| go/bad-tap-target-ukm. If evaluation time budget exceeded, this will be is |
| -2. |
| </summary> |
| </metric> |
| <metric name="SmallTextRatio"> |
| <summary> |
| Percentage of small font text area in total text area. |
| </summary> |
| </metric> |
| <metric name="TextContentOutsideViewportPercentage"> |
| <summary> |
| Percentage of pixels of text and images horizontally outside the viewport, |
| relative to the frame width. |
| </summary> |
| </metric> |
| <metric name="ViewportDeviceWidth" enum="Boolean"> |
| <summary> |
| Whether the width of the viewport specified as device-width or not. |
| </summary> |
| </metric> |
| <metric name="ViewportHardcodedWidth"> |
| <summary> |
| Specified hardcoded viewport width in CSS pixels. |
| </summary> |
| </metric> |
| <metric name="ViewportInitialScaleX10"> |
| <summary> |
| Specified initial viewport scaling multiplied by 10. 1 means 0.1, 100 |
| means 10. [1-100]. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MobileFriendliness.TappedBadTargets"> |
| <owner>kumagi@google.com</owner> |
| <owner>gaul@google.com</owner> |
| <metric name="CloseDisplayEdge" enum="Boolean"> |
| <summary> |
| The distance from the center position of tapped target to display's edge |
| is less than 5mm. |
| </summary> |
| </metric> |
| <metric name="HighlyZoomed" enum="Boolean"> |
| <summary> |
| Whether the page is manually 100%+ zoomed when tapped. |
| </summary> |
| </metric> |
| <metric name="TooClose" enum="Boolean"> |
| <summary> |
| Whether the center of the tapped tap target is close less than 5mm to |
| other tap target's edge. |
| </summary> |
| </metric> |
| <metric name="TooSmall" enum="Boolean"> |
| <summary> |
| Whether the tapped tap target is small as both width and height is less |
| than 7mm. |
| </summary> |
| </metric> |
| <metric name="Zoomed" enum="Boolean"> |
| <summary> |
| Whether the page is manually 20%+ zoomed when tapped. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MobileMenu.DirectShare"> |
| <owner>sayman@chromium.org</owner> |
| <summary> |
| User pressed 'Share' in the app menu. The intent most recently used to share |
| was invoked directly. See also MobileMenu.Share. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred; only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MobileMenu.FindInPage"> |
| <owner>frechette@chromium.org</owner> |
| <summary> |
| User pressed 'Find in page' in the app menu. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred (typically only records |
| true values). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="MobileMenu.Share"> |
| <owner>sayman@chromium.org</owner> |
| <summary> |
| User pressed 'Share' in the app menu. A picker was shown. See also |
| MobileMenu.DirectShare. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred; only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Navigation.IDNA2008Transition" singular="True"> |
| <owner>meacer@google.com</owner> |
| <owner>chrome-trusty-transport@google.com</owner> |
| <summary> |
| Recorded upon main frame navigations to hostnames that contain characters |
| that are treated differently between IDNA 2003 and IDNA 2008, aka deviation |
| characters. Ignores reload navigations. |
| </summary> |
| <metric name="Character" enum="IDNA2008DeviationCharacter"> |
| <summary> |
| The deviation character in the URLs eTLD+1. Chrome's URL parsing code |
| normalizes deviation characters so the characters don't appear in the |
| recorded URL. This is recorded to make the deviation character |
| identification simpler. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Navigation.ReceivedResponse"> |
| <owner>miketaylr@chromium.org</owner> |
| <owner>potassium-katabolism@google.com</owner> |
| <summary> |
| Recorded when the navigation receives a response from the networking layer. |
| Only recorded for main frames (i.e. top-level frames). |
| </summary> |
| <metric name="HasAcceptCHFrame"> |
| <summary> |
| A boolean value representing whether the navigation included the |
| processing of an ACCEPT_CH ALPS frame. |
| </summary> |
| </metric> |
| <metric name="NavigationFirstResponseLatency"> |
| <summary> |
| The duration (in milliseconds) for how long it took from the time the |
| navigation loader is created to the time the navigation loader receives |
| the response from the networking layer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationPredictorAnchorElementMetrics"> |
| <owner>ryansturm@chromium.org</owner> |
| <summary> |
| Metrics that describe an anchor element's data. This event is emitted at |
| most 10 times per page load, once for each of the top n URLs on a page, and |
| the order of the events is randomized. If there is no nth anchor element, no |
| value is returned. |
| </summary> |
| <metric name="AnchorIndex"> |
| <summary> |
| The index of the clicked-on anchor element in the tracked list. |
| </summary> |
| </metric> |
| <metric name="BucketedPathHash"> |
| <summary> |
| The anchor element's href URL path is hashed, then bucketed using 10 |
| different buckets. The bucket ({0, 1, ..., 9}) the hash falls into is |
| logged in this field. |
| </summary> |
| </metric> |
| <metric name="ContainsImage"> |
| <summary> |
| 1 if the anchor element contains an image. |
| </summary> |
| </metric> |
| <metric name="FontSize"> |
| <summary> |
| The bucketed font size of the anchor element, according to its computed |
| style. 1 corresponds to a pixel font size in [0, 10), 2 corresponds to a |
| fonts size in [10, 18) and 3 is logged when the font size is 18 pixels or |
| larger. |
| </summary> |
| </metric> |
| <metric name="HasTextSibling"> |
| <summary> |
| 1 if the anchor element has an immediate text sibling, 0 otherwise. |
| </summary> |
| </metric> |
| <metric name="IsBold"> |
| <summary> |
| 1 if the anchor's computed style's font-weight is greater than 500, 0 |
| otherwise. |
| </summary> |
| </metric> |
| <metric name="IsInIframe"> |
| <summary> |
| 1 if the anchor element is in an iframe. |
| </summary> |
| </metric> |
| <metric name="IsURLIncrementedByOne"> |
| <summary> |
| 1 if the anchor element's target URL and the document's source URL only |
| differ by one number, and the target URL increments that number in the |
| source URL by 1. |
| </summary> |
| </metric> |
| <metric name="NavigationStartToLinkLoggedMs"> |
| <summary> |
| The time in ms between navigation start and the moment this entry was |
| logged. Exponentially bucketed using GetExponentialBucketMin a value of |
| 1.3. |
| </summary> |
| </metric> |
| <metric name="PathDepth"> |
| <summary> |
| The number of slashes in the anchor element's href URL path. Truncated at |
| 5. |
| </summary> |
| </metric> |
| <metric name="PathLength"> |
| <summary> |
| The number of characters in the anchor element's href URL path. Buckets of |
| size 10, truncated at 100. |
| </summary> |
| </metric> |
| <metric name="PercentClickableArea"> |
| <summary> |
| The percent of the total document area that this anchor element's |
| clickable area occupies. |
| </summary> |
| </metric> |
| <metric name="PercentVerticalDistance"> |
| <summary> |
| How far down the document the top of the anchor element is, expressed as a |
| ratio with the total document height. |
| </summary> |
| </metric> |
| <metric name="SameOrigin"> |
| <summary> |
| 1 if the anchor element's target URL and the document's source URL are the |
| same origin. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationPredictorPageLinkClick"> |
| <owner>ryansturm@chromium.org</owner> |
| <summary> |
| Sent on an in-page link click. |
| </summary> |
| <metric name="AnchorElementIndex"> |
| <summary> |
| An integer (0-indexed), corresponding to the index of that anchor element |
| in the list of top ten anchor elements on that page, sorted by their |
| navigation scores. If an anchor element is clicked that is not in |
| NavigationPredictorAnchorElementMetrics, -1 is returned. |
| </summary> |
| </metric> |
| <metric name="HrefUnchanged"> |
| <summary> |
| 1 if the href of the anchor element at the time the click is handled is |
| the same as the href when the element was created. 0 if the href changed. |
| </summary> |
| </metric> |
| <metric name="NavigationStartToLinkClickedMs"> |
| <summary> |
| The time in milliseconds between the moment an entry for the anchor |
| element was logged to UKM and the moment the user clicked on it. |
| Exponentially bucketed, 1.3 factor. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationPredictorPageLinkMetrics" singular="True"> |
| <owner>ryansturm@chromium.org</owner> |
| <summary> |
| Metrics that describe aggregate information about the links within a page. |
| Some anchor elements present on a page may not be represented in these |
| metrics, if they are outside the viewport or if their placement in the page |
| is after the 40th anchor element. This event is emitted at most once per |
| page load. Unless otherwise specified, each of the aggregate metrics is |
| bucketted with exponential buckets of size 1.3. |
| </summary> |
| <metric name="MedianLinkLocation"> |
| <summary> |
| The median vertical link location in the viewport, as a ratio of the |
| distance from the top of the link to the visible top of the page. |
| Bucketted with a linear bucket size of 10. |
| </summary> |
| </metric> |
| <metric name="NumberOfAnchors.ContainsImage"> |
| <summary> |
| The total number of links in the page that are images. |
| </summary> |
| </metric> |
| <metric name="NumberOfAnchors.InIframe"> |
| <summary> |
| The total number of links in the page in any iframe. |
| </summary> |
| </metric> |
| <metric name="NumberOfAnchors.SameHost"> |
| <summary> |
| The total number of links in the page that point to the same origin as the |
| current page's origin. |
| </summary> |
| </metric> |
| <metric name="NumberOfAnchors.Total"> |
| <summary> |
| The total number of links within a page. |
| </summary> |
| </metric> |
| <metric name="NumberOfAnchors.URLIncremented"> |
| <summary> |
| The total number of links on the page, where each link only differs from |
| the current page's URL by a number, and that number is incremented by 1 in |
| the link. |
| </summary> |
| </metric> |
| <metric name="TotalClickableSpace"> |
| <summary> |
| The total clickable space in the entire page, expressed as a ratio of the |
| visible clickable region to the entire viewport region. |
| </summary> |
| </metric> |
| <metric name="Viewport.Height"> |
| <summary> |
| The height of the viewport, in pixels. |
| </summary> |
| </metric> |
| <metric name="Viewport.Width"> |
| <summary> |
| The width of the viewport, in pixels. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationPredictorPreloadOnHover"> |
| <owner>ryansturm@chromium.org</owner> |
| <owner>domenic@chromium.org</owner> |
| <owner>isaboori@google.com</owner> |
| <summary> |
| This event records required data to assess and fine-tune the preloading |
| on-hover and on pointer down heuristics, and is submitted once per mouse |
| over, mouse out, mouse down and mouse up events for randomly selected anchor |
| elements. |
| </summary> |
| <metric name="HoverNotTakenMs"> |
| <summary> |
| Duration that the user was hovering over the anchor element and it did not |
| result in a navigation to that link. Exponentially bucketed using |
| GetExponentialBucketMin with a spacing of 1.3. |
| </summary> |
| </metric> |
| <metric name="HoverTakenMs"> |
| <summary> |
| Duration that the user was hovering over the anchor element and it |
| resulted in a navigation to that link. Exponentially bucketed using |
| GetExponentialBucketMin with a spacing of 1.3. |
| </summary> |
| </metric> |
| <metric name="MouseDownNotTakenMs"> |
| <summary> |
| Time since the user pressed the left/middle mouse button over the anchor |
| element and that did not result in a navigation to that link. |
| Exponentially bucketed using GetExponentialBucketMin with a spacing of |
| 1.3. |
| </summary> |
| </metric> |
| <metric name="MouseDownTakenMs"> |
| <summary> |
| Time since the user presses the left/middle mouse button over the anchor |
| element and that resulted in a navigation to that link. Exponentially |
| bucketed using GetExponentialBucketMin with a spacing of 1.3. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationPredictorRendererWarmup"> |
| <obsolete> |
| Removed in M91. |
| </obsolete> |
| <owner>robertogden@chromium.org</owner> |
| <owner>tbansal@chromium.org</owner> |
| <summary> |
| Internal feature metrics for a feature that decides whether to start a spare |
| renderer on pages where Chrome heuristically determines that a cross-origin |
| page load is likely to occur based on the anchor elements on the page being |
| cross-origin and/or whether the current page is a search engine result page. |
| </summary> |
| <metric name="CrossOriginLinksRatio"> |
| <summary> |
| An int in the range [0, 100] to represent a percentage of the ratio of the |
| links on a page that are cross-origin to the source document. Recorded |
| when there are 1 or more links on a page. |
| </summary> |
| </metric> |
| <metric name="DidWarmup" enum="Boolean"> |
| <summary> |
| A bool that is set if a spare renderer was started. Also set on |
| counter-factual arms when the same criteria were met. |
| </summary> |
| </metric> |
| <metric name="PageIndependentStatusBitMask"> |
| <summary> |
| A bitmask, recorded on every page when the feature flag is enabled. 0b0001 |
| - Set if the feature is in a cooldown period following the last renderer |
| warmup. 0b0010 - Set if the browser already had a spare renderer. 0b0100 - |
| Set if the device memory is below the experiment threshold. |
| </summary> |
| </metric> |
| <metric name="WasDSESRP" enum="Boolean"> |
| <summary> |
| A bool that is set if the page is a search result page for the browser's |
| default search engine |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationPredictorUserInteractions"> |
| <owner>ryansturm@chromium.org</owner> |
| <owner>isaboori@google.com</owner> |
| <summary> |
| Metrics that describe user interaction with an anchor element. This event is |
| emitted once per randomly selected anchor elements. |
| </summary> |
| <metric name="AnchorIndex"> |
| <summary> |
| The index of the anchor element in NavigationPredictor's |top_urls_|. |
| </summary> |
| </metric> |
| <metric name="IsInViewport"> |
| <summary> |
| 1 if anchor element is in viewport, otherwise 0. |
| </summary> |
| </metric> |
| <metric name="IsPointerHoveringOver"> |
| <summary> |
| 1 if the pointer is hovering over the anchor element, otherwise 0. |
| </summary> |
| </metric> |
| <metric name="MaxEnteredViewportToLeftViewportMs"> |
| <summary> |
| Maximum time between the moment the anchor element entered the viewport |
| and the moment it left the viewport in milliseconds. Exponentially |
| bucketed using GetExponentialBucketMin a value of 1.3. |
| </summary> |
| </metric> |
| <metric name="MaxHoverDwellTimeMs"> |
| <summary> |
| Maximum dwelltime of pointer hovering over the anchor element in |
| milliseconds. Exponentially bucketed using GetExponentialBucketMin a value |
| of 1.3. |
| </summary> |
| </metric> |
| <metric name="PointerHoveringOverCount"> |
| <summary> |
| How many times the pointer was hovering over the anchor element. |
| Exponentially bucketed using GetExponentialBucketMin a value of 1.3. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationThrottleDeferredTime"> |
| <owner>ryansturm@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| Information recorded about a navigation throttle when a navigation is |
| deferred at any stage of the navigation. Only recorded for main frame |
| navigations that were deferred and later resumed. |
| </summary> |
| <metric name="DurationOfNavigationDeferralMs"> |
| <summary> |
| The duration from the start of the navigation deferral until the throttle |
| resumes the navigation recorded in milliseconds. |
| </summary> |
| </metric> |
| <metric name="NavigationThrottleEventType"> |
| <summary> |
| An enum representing each event that can cause deferral method |
| (WillFailRequest, WillProcessResponse, WillRedirectRequest, |
| WillStartRequest). See NavigationThrottleRunner::Event for enum details. |
| </summary> |
| </metric> |
| <metric name="NavigationThrottleNameHash"> |
| <summary> |
| A (MD5) hash of the logging name string which represents a unique |
| navigation throttle class (subclass of NavigationThrottle). See |
| NavigationThrottle::GetNameForLogging(). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NavigationTiming" singular="True"> |
| <owner>nhiroki@chromium.org</owner> |
| <owner>chrome-loading@google.com</owner> |
| <summary> |
| Metrics associated with main frame navigation. |
| </summary> |
| <metric name="EarlyHintsForFinalRequest"> |
| <obsolete> |
| Deprecated 09/2021 |
| </obsolete> |
| <owner>nhiroki@chromium.org</owner> |
| <owner>chrome-loading@google.com</owner> |
| <summary> |
| The time relative to navigation start that the headers of the 103 Early |
| Hints response are received in reply to the final HTTP request for the |
| main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="EarlyHintsForFirstRequest"> |
| <obsolete> |
| Deprecated 09/2021 |
| </obsolete> |
| <owner>nhiroki@chromium.org</owner> |
| <owner>chrome-loading@google.com</owner> |
| <summary> |
| The time relative to navigation start that the headers of the 103 Early |
| Hints response are received in reply to the first HTTP request for the |
| main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="FinalLoaderCallback"> |
| <summary> |
| The time relative to navigation start that a callback for the navigation |
| loader is last invoked for the main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="FinalRequestStart"> |
| <summary> |
| The time relative to navigation start that the final HTTP request is sent |
| for the main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="FinalResponseStart"> |
| <summary> |
| The time relative to navigation start that the headers of the final HTTP |
| response are received for the main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="FirstLoaderCallback"> |
| <summary> |
| The time relative to navigation start that a callback for the navigation |
| loader is first invoked for the main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="FirstRequestStart"> |
| <summary> |
| The time relative to navigation start that the first HTTP request is sent |
| for the main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="FirstResponseStart"> |
| <summary> |
| The time relative to navigation start that the headers of the first HTTP |
| response are received for the main resource of a main frame navigation. |
| </summary> |
| </metric> |
| <metric name="NavigationCommitSent"> |
| <summary> |
| The time relative to navigation start that navigation commit message for a |
| main frame navigation is sent to a renderer process. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Net.LegacyTLSVersion"> |
| <obsolete> |
| Deprecated as of 2/2023. |
| </obsolete> |
| <owner>davidben@chromium.org</owner> |
| <summary> |
| Recorded when a resource is loaded using TLS 1.0 or TLS 1.1. |
| </summary> |
| <metric name="IsAdResource"> |
| <summary> |
| Boolean value representing whether the request is for an ad resource. Only |
| set if IsSubresource is true. |
| </summary> |
| </metric> |
| <metric name="IsMainFrame"> |
| <summary> |
| Boolean value representing whether the request is in the main frame or not |
| (if false, the request is from a subframe). |
| </summary> |
| </metric> |
| <metric name="IsSubresource"> |
| <summary> |
| Boolean value representing whether the request is for a subresource. If |
| false, then the request was a main frame page load. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Network.CacheTransparency"> |
| <obsolete> |
| Deprecated in Jan 2023 in favor of Network.CacheTransparency2. |
| </obsolete> |
| <owner>nidhijaju@chromium.org</owner> |
| <owner>ricea@chromium.org</owner> |
| <summary> |
| Metrics for Cache Transparency which aims to allow a list of pervasive |
| payloads to be specified and cached in a single-keyed cache to improve |
| loading performance. Recorded for each navigation and subresource load. |
| </summary> |
| <metric name="FoundPervasivePayload" enum="Boolean"> |
| <summary> |
| Records whether a requested resource's URL matched with any of the URLs in |
| the Cache Transparency Pervasive Payloads List. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TotalBytesFetched"> |
| <summary> |
| Records the total bytes fetched by the network. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Network.CacheTransparency2"> |
| <owner>nidhijaju@chromium.org</owner> |
| <owner>ricea@chromium.org</owner> |
| <summary> |
| Metrics for Cache Transparency which aims to allow a list of pervasive |
| payloads to be specified and cached in a single-keyed cache to improve |
| loading performance. Recorded for each navigation and subresource load. |
| </summary> |
| <metric name="FoundPervasivePayload" enum="Boolean"> |
| <summary> |
| Records whether a requested resource's URL matched with any of the URLs in |
| the Cache Transparency Pervasive Payloads List. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PervasiveBytesFetched"> |
| <summary> |
| Records the number of bytes fetched by the network for pervasive payloads |
| on a page. |
| </summary> |
| </metric> |
| <metric name="TotalBytesFetched"> |
| <summary> |
| Records the total bytes fetched by the network. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NewTabPage.HistoryClusters"> |
| <owner>sophiechang@chromium.org</owner> |
| <owner>tiborg@chromium.org</owner> |
| <summary> |
| Metrics related to a History Clusters module shown on the New Tab Page. |
| Recorded for each History Clusters module shown on a 1P New Tab Page load, |
| which can be multiple for a page load. |
| </summary> |
| <metric name="BelongsToBoostedCategory" enum="Boolean"> |
| <summary> |
| Cluster is of a boosted category. |
| </summary> |
| </metric> |
| <metric name="DidEngageWithModule" enum="Boolean"> |
| <summary> |
| Whether the user engaged with the module. |
| </summary> |
| </metric> |
| <metric name="LayoutTypeShown" enum="NTPHistoryClustersModuleDisplayLayout"> |
| <summary> |
| The layout type that was shown to the user for this module. |
| </summary> |
| </metric> |
| <metric name="MinutesSinceMostRecentVisit"> |
| <summary> |
| Minutes since the shown cluster's most recent visit, exponentially |
| bucketed using GetExponentialBucketMin with a spacing of 1.3. |
| </summary> |
| </metric> |
| <metric name="NumAbandonedCarts"> |
| <summary> |
| Number of abandoned carts associated with the cluster. |
| </summary> |
| </metric> |
| <metric name="NumTotalVisits"> |
| <summary> |
| Number of total visits in the same cluster including ones that are not |
| necessarily shown in the module. |
| </summary> |
| </metric> |
| <metric name="NumUniqueHosts"> |
| <summary> |
| Number of unique hosts represented in the cluster. |
| </summary> |
| </metric> |
| <metric name="NumVisitsWithImage"> |
| <summary> |
| Number of visits with an image to show. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="NoStatePrefetch" singular="True"> |
| <owner>tbansal@chromium.org</owner> |
| <summary> |
| Metrics related to NoStatePrefetch that are recorded using the same UKM IDs |
| as PageLoad. |
| </summary> |
| <metric name="PrefetchedRecently.FinalStatus"> |
| <summary> |
| Final status of the nostate prefetch if one was recently attempted for |
| either the committed URL of this navigation or for any URL in the redirect |
| chain for the main frame resource for this navigation. page. Recorded as |
| enum PrerenderFinalStatus in //tools/metrics/histograms/enums.xml. |
| </summary> |
| </metric> |
| <metric name="PrefetchedRecently.Origin"> |
| <summary> |
| Triggering origin of the nostate prefetch if one was recently attempted |
| for either the committed URL of this navigation or for any URL in the |
| redirect chain for the main frame resource for this navigation. Recorded |
| as enum PrerenderOrigin in //tools/metrics/histograms/enums.xml. |
| </summary> |
| </metric> |
| <metric name="PrefetchedRecently.PrefetchAge"> |
| <summary> |
| Records the time (in milliseconds) from the start of the nostate prefetch |
| to the time of commit of this navigation. Metric is recorded down to the |
| nearest power of 2. Recorded only if a nostate prefetch was recently |
| attempted for either the committed URL of this navigation or for any URL |
| in the redirect chain for the main frame resource for this navigation. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Notification"> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| A notification event corresponds with the entire lifespan of a single |
| notification, and will be logged to UKM when the notification is deleted |
| from the notification database. |
| </summary> |
| <metric name="ClosedReason"> |
| <summary> |
| Enum for how the notification was closed. {user, developer, unknown} |
| </summary> |
| </metric> |
| <metric name="DidReplaceAnotherNotification"> |
| <summary> |
| Boolean value representing whether a tag is present and a previously shown |
| notification has been replaced. For UKM logging, we treat a replacement |
| notification as a new notification. |
| </summary> |
| </metric> |
| <metric name="DidUserOpenSettings"> |
| <summary> |
| Boolean value indicating whether the user accessed the Chrome provided |
| settings from the notification. |
| </summary> |
| </metric> |
| <metric name="HasBadge"> |
| <summary> |
| Boolean value representing if a badge URL was included. |
| </summary> |
| </metric> |
| <metric name="HasIcon"> |
| <summary> |
| Boolean value representing if an icon URL was included. |
| </summary> |
| </metric> |
| <metric name="HasImage"> |
| <summary> |
| Boolean value representing if an image URL was included. |
| </summary> |
| </metric> |
| <metric name="HasRenotify"> |
| <summary> |
| Boolean value representing whether default notification indicators (sound, |
| vibration, light) should be played again if the notification is replacing |
| an older notification. |
| </summary> |
| </metric> |
| <metric name="HasTag"> |
| <summary> |
| Boolean value representing if a tag is present. |
| </summary> |
| </metric> |
| <metric name="IsSilent"> |
| <summary> |
| Boolean value representing whether default notification indicators (sound, |
| vibration, light) should be suppressed. |
| </summary> |
| </metric> |
| <metric name="NumActionButtonClicks"> |
| <summary> |
| Number of clicks on developer provided action buttons. |
| </summary> |
| </metric> |
| <metric name="NumActions"> |
| <summary> |
| Number of developer specified actions that can be taken. |
| </summary> |
| </metric> |
| <metric name="NumClicks"> |
| <summary> |
| Number of clicks, excluding action buttons. I.e. clicks on the |
| notification itself. |
| </summary> |
| </metric> |
| <metric name="RequireInteraction"> |
| <summary> |
| Boolean value representing whether the notification should remain onscreen |
| indefinitely, rather than being auto-minimized to the notification center |
| (if allowed by platform). |
| </summary> |
| </metric> |
| <metric name="TimeUntilClose"> |
| <summary> |
| The length of time, in ms, between when the notification was triggered and |
| when it was closed. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TimeUntilFirstClick"> |
| <summary> |
| Time, in ms, between when the notification is shown and the first click. |
| </summary> |
| </metric> |
| <metric name="TimeUntilLastClick"> |
| <summary> |
| Time, in ms, between when the notification is shown and the last click. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="OfflineMeasurements"> |
| <obsolete> |
| Removed M100. No longer used. |
| </obsolete> |
| <owner>curranmax@chromium.org</owner> |
| <summary> |
| Data collected by the OfflineMeasurementsBackgroundTask. At a regular |
| interval the background task checks the state of the system including how |
| the user is interacting with the system and whether the system is online or |
| offline. The data for each run of the background task is persisted to prefs. |
| Upon a successful navigation in Chrome, all data in prefs are logged to UKM |
| and then cleared. This means that the first page load of a session will have |
| a burst of events being recorded, but subsequent page loads will likely have |
| no events. The background task is scheduled when Chrome opens, and it will |
| continue to run even if Chrome is not running. |
| </summary> |
| <metric name="DurationMillis"> |
| <summary> |
| The time, in milliseconds, since the last background task ran. This value |
| is bucketed using ukm::GetExponentialBucketMinForUserTiming. |
| </summary> |
| </metric> |
| <metric name="IsAirplaneModeEnabled" enum="BooleanEnabled"> |
| <summary> |
| Whether airplane mode was enabled when the background task ran. |
| </summary> |
| </metric> |
| <metric name="IsRoaming" enum="Boolean"> |
| <summary> |
| Whether the device was roaming when the background task ran. This field is |
| only set if we can determine whether the network was roaming or not. This |
| means in cases where the HTTP probe was cancelled or we ecountered an |
| error while getting whether the network is roaming or not that this field |
| will be null. |
| </summary> |
| </metric> |
| <metric name="LocalHourOfDayStart"> |
| <summary> |
| The local hour when the background task ran. In the range of 0 to 23 |
| inclusive. |
| </summary> |
| </metric> |
| <metric name="ProbeResult" enum="OfflineMeasurementsHttpProbeResult"> |
| <summary> |
| The result of the HTTP probe when the background task ran. |
| </summary> |
| </metric> |
| <metric name="UserState" enum="OfflineMeasurementsUserState"> |
| <summary> |
| How the user is interacting with the device when the background task ran. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="OfflinePages.SavePageRequested"> |
| <obsolete> |
| Deprecated 03/2019 |
| </obsolete> |
| <owner>petewil@chromium.org</owner> |
| <metric name="RequestedFromForeground"> |
| <summary> |
| Metrics that measure which URLs the user is requesting offline page copies |
| of, and whether they were requested from the foreground or background UI. |
| The value is 1 if requested from the foreground, 0 from background. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Omnibox.EditUrlSuggestion.Share"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>ssid@chromium.org</owner> |
| <summary> |
| User pressed 'Share' while viewing edit URL suggestions which shares the |
| current URL. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred; only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="OmniboxSecurityIndicator.FormSubmission"> |
| <owner>meacer@chromium.org</owner> |
| <summary> |
| Recorded when a form is submitted on an HTTPS page. Used to understand any |
| regression introduced by updated omnibox security indicators. |
| </summary> |
| <metric name="Submitted"> |
| <summary> |
| Placeholder metric, always true. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="OptimizationGuide" singular="True"> |
| <owner>sophiechang@chromium.org</owner> |
| <summary> |
| Optimization guide metrics associated with a page load. It is recorded when |
| the optimization guide was consulted in making a decision for the page load. |
| See //components/optimization_guide/. |
| </summary> |
| <metric name="HintGenerationTimestamp"> |
| <obsolete> |
| Obsolete as of 04/2020. |
| </obsolete> |
| <summary> |
| The timestamp, in seconds from epoch, that the server generated the hint |
| for the optimization applied on the page load. |
| </summary> |
| </metric> |
| <metric name="HintSource"> |
| <obsolete> |
| Obsolete as of 04/2020. |
| </obsolete> |
| <summary> |
| The |optimization_guide::proto::HintSource| for the optimization that was |
| applied on the page load. |
| </summary> |
| </metric> |
| <metric name="NavigationHintsFetchAttemptStatus" |
| enum="OptimizationGuideRaceNavigationFetchAttemptStatus"> |
| <summary> |
| An enum value representing the status of a fetch attempt for the page load |
| and what it contains (i.e. hosts or URLs). Captured at the start of the |
| navigation. |
| </summary> |
| </metric> |
| <metric name="NavigationHintsFetchRequestLatency"> |
| <summary> |
| The duration (in milliseconds) for how long it took from the request to go |
| out to when it was usable on the client. Only recorded if a fetch was |
| initiated for the navigation. Will be recorded as INT64_MAX if the request |
| did not complete successfully. |
| </summary> |
| </metric> |
| <metric name="NavigationHostCovered" |
| enum="OptimizationGuideNavigationHostCoveredStatus"> |
| <obsolete> |
| Obsolete as of 04/2020. |
| </obsolete> |
| <summary> |
| An enum value representing whether Chrome had a hint cached for the |
| navigation or had attempted to fetch a hint from the remote Optimization |
| Guide Service in the last 7 days. The enum is defined in |
| |optimization_guide::NavigationHostCoveredStatus|. |
| </summary> |
| </metric> |
| <metric name="PainfulPageLoadModelPredictionScore"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The score output after evaluating the painful page load model. If |
| populated, this is 100x the fractional value output by the model |
| evaluation. This will be a value between 0 and 100. |
| </summary> |
| </metric> |
| <metric name="PainfulPageLoadModelVersion"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The server-generated version of the painful page load model that was |
| evaluated for the page load. |
| </summary> |
| </metric> |
| <metric name="PredictionModelFeatureEffectiveConnectionType"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The |net::EffectiveConnectionType| at the time a prediction was requested. |
| Recorded once per page load. |
| </summary> |
| </metric> |
| <metric name="PredictionModelFeatureIsSameOriginNavigation"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| Whether the current navigatation is the same origin as the previous one at |
| the time a prediction was requested. Recorded once per page load. |
| </summary> |
| </metric> |
| <metric name="PredictionModelFeatureNavigationToFCPSessionMean"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The average navigation to first contentful paint for the current session |
| at the time a prediction was requested. Recorded once per page load. |
| </summary> |
| </metric> |
| <metric name="PredictionModelFeatureNavigationToFCPSessionStdDev"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The standard deviation of navigation to first contentful paint for page |
| loads in the current session at the time a prediction was requested. |
| Recorded once per page load. |
| </summary> |
| </metric> |
| <metric name="PredictionModelFeaturePageTransition"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The |ui::PageTransition| of the current navigation at the time a |
| prediction was requested. Recorded once per page load. |
| </summary> |
| </metric> |
| <metric name="PredictionModelFeaturePreviousPageLoadNavigationToFCP"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The navigation to to first contentful paint for the previous page load at |
| the time a prediction was requested. Recorded once per page load. |
| </summary> |
| </metric> |
| <metric name="PredictionModelFeatureSiteEngagementScore"> |
| <obsolete> |
| Obsolete as of 04/2021. |
| </obsolete> |
| <summary> |
| The site engagement score of the host of the current navigation at the |
| time a prediction was requested. Recorded once per page load. |
| </summary> |
| </metric> |
| <metric name="RegisteredOptimizationTargets"> |
| <summary> |
| A bitmask of the optimization targets that were registered at the start of |
| the page load where each flipped bit corresponds to its int value in |
| |optimization_guide::proto::OptimizationTarget|. |
| </summary> |
| </metric> |
| <metric name="RegisteredOptimizationTypes"> |
| <summary> |
| A bitmask of the optimization types that were registered at the start of |
| the page load where each flipped bit corresponds to its int value in |
| |optimization_guide::proto::OptimizationTarget|. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="OptimizationGuideAutotuning"> |
| <obsolete> |
| Removed 8/2021. |
| </obsolete> |
| <owner>sophiechang@chromium.org</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Metrics associated with an autotuning event initiated by the Optimization |
| Guide. |
| </summary> |
| <metric name="OptimizationType"> |
| <summary> |
| The |optimization_guide::proto::OptimizationType| that is being tuned. |
| </summary> |
| </metric> |
| <metric name="TuningVersion"> |
| <summary> |
| The version of the tuning group for the optimization type that was served. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageContentAnnotations" singular="True"> |
| <obsolete> |
| Removed in 10/2022. |
| </obsolete> |
| <owner>chrome-intelligence-core@google.com</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Metrics on the content annotations of the page, one record per page load |
| commit and has an annotation calculated on it. The metrics are recorded in a |
| RAPPOR-style with low-entropy so only aggregate analysis can be performed. |
| </summary> |
| <metric name="VisibilityScore"> |
| <summary> |
| Records a low entropy respresentation of the visibility score output by a |
| content annotations model. The low entropy value is calculated using a |
| RAPPOR-style calculation to enable analysis only on aggregated results. |
| The raw score is between 0 and 1, scaled to between 0 and 100. The score |
| is then placed into one of 16 linearly spaced buckets by dividing the |
| score by the bucket size and taking the floor. The resulting bucket value |
| has noise added with a probability of .5 where the noise is randomly |
| applied to each individual bit. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageContentAnnotations2" singular="True"> |
| <owner>chrome-intelligence-core@google.com</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Metrics on the content annotations of the page, one record per page load |
| commit and has an annotation calculated on it. The metrics are recorded in a |
| RAPPOR-style with low-entropy so only aggregate analysis can be performed. |
| </summary> |
| <metric name="VisibilityScore"> |
| <summary> |
| Records a low entropy respresentation of the visibility score output by a |
| content annotations model. The low entropy value is calculated using a |
| RAPPOR-style calculation to enable analysis only on aggregated results. |
| The raw score is between 0 and 1, scaled to between 0 and 100. The score |
| is then placed into one of 16 linearly spaced buckets by dividing the |
| score by the bucket size and taking the floor. The resulting bucket value |
| has noise added with a probability of .5 where the noise is randomly |
| applied to each individual bit. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageDomainInfo"> |
| <owner>uthakore@chromium.org</owner> |
| <owner>invernizzi@chromium.org</owner> |
| <summary> |
| Metrics that describe the domain of pages that successfully commit. One |
| event is generated per page load that commits. Currently associated with |
| LocalNetworkRequests UKM metric collection. |
| </summary> |
| <metric name="DomainType"> |
| <summary> |
| An enum value representing the type of domain of the loaded page. The enum |
| is defined in |LocalNetworkRequestsPageLoadMetricsObserver|. Possible |
| values are 0 for unknown (should never be logged), 1 for pages with public |
| domains, 2 for pages with private domains (IP addresses that are part of a |
| reserved IP space not including localhost), or 4 for localhost. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageForegroundSession"> |
| <owner>sullivan@chromium.org</owner> |
| <summary> |
| Total time in foreground in milliseconds, recorded each time the page is |
| backgrounded. May be recorded multiple times for a single page visit. |
| </summary> |
| <metric name="ForegroundDuration"> |
| <summary> |
| Total time in foreground in milliseconds, recorded each time the page is |
| backgrounded. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ForegroundNumInputEvents"> |
| <summary> |
| The number of Input Events, including click, tap, key press, cancellable |
| touchstart, or pointer down followed by apointer up. This metric gets |
| recorded each time the page is backgrounded. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ForegroundTotalAdjustedInputDelay"> |
| <summary> |
| sum(max(Input Delay - 50, 0)), recorded each time the page is |
| backgrounded. The Input Delay refers to the duration between the hardware |
| timestamp and the start of event processing on the main thread for the |
| meaningful input. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ForegroundTotalInputDelay"> |
| <summary> |
| sum(Input Delay), recorded each time the page is backgrounded. The Input |
| Delay refers to the duration between the hardware timestamp and the start |
| of event processing on the main thread for the meaningful input. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="PageInfoBubble"> |
| <owner>dullweber@chromium.org</owner> |
| <owner>chrome-privacy-core@google.com</owner> |
| <summary> |
| Recorded when an action on the Page Info Bubble (aka Origin Info Bubble or |
| WebsiteSettings Bubble) is taken. May be recorded multiple times for a |
| single page visit. |
| </summary> |
| <metric name="ActionTaken" enum="WebsiteSettingsAction"> |
| <summary> |
| Records an enum value representing which action on the Page Info Bubble |
| was taken. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="PageLoad" singular="True"> |
| <owner>sullivan@chromium.org</owner> |
| <owner>chrome-metrics-team@google.com</owner> |
| <summary> |
| Core metrics associated with web page loads. |
| </summary> |
| <metric name="CpuTime"> |
| <summary> |
| Amount of CPU wall time over the duration of a page load, while the page |
| is in the foreground. Measured in milliseconds. |
| </summary> |
| </metric> |
| <metric name="DayOfWeek"> |
| <summary> |
| The day of the week when the page load was initiated. The time is measured |
| in the local time zone according to the system clock. Only collected for |
| page loads that start while on foreground. |
| </summary> |
| </metric> |
| <metric name="DocumentTiming.NavigationToDOMContentLoadedEventFired"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time the DOMContentLoaded event is fired, for main frame |
| documents. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DocumentTiming.NavigationToLoadEventFired"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time the load event is fired, for main frame documents. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DurationSinceLastVisitSeconds"> |
| <summary> |
| The duration since the last visit to this URL in seconds, if the user has |
| visited the URL before. Recorded as -1 if the user has not visited the URL |
| before, or if the History service is unavailable or slow to respond. Any |
| duration that exceeds 30 days will be recorded as 30 days, so in practice, |
| if this duration indicates 30 days, it can be anything from 30 to the |
| maximum duration that local history is stored. |
| </summary> |
| </metric> |
| <metric name="Experimental.InputToNavigationStart"> |
| <summary> |
| Measures the time in milliseconds from when the OS level input event |
| occurred which triggered a navigation, until the navigation was started. |
| Only set if the code can trace back to the original input event. Some |
| known cases where it is missing: crbug.com/889223 crbug.com/893162 |
| crbug.com/897837 crbug.com/897840 |
| </summary> |
| </metric> |
| <metric |
| name="Experimental.LayoutInstability.CumulativeShiftScoreAtFirstOnHidden"> |
| <summary> |
| Measures the cumulative layout shift (bit.ly/lsm-explainer) that has |
| occurred on the page (including all subframes) until the first time the |
| page moves from the foreground to the background. This metric's integral |
| value is 100x the fractional cumulative layout shift score described in |
| the explainer. Stable since M98. Log of major changes: |
| http://bit.ly/chrome-speed-metrics-changelog. This metric is trying to |
| record the layout shift values which are not able to be recorded in |
| LayoutInstability.CumulativeShiftScore for some reasons. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="Experimental.LayoutInstability.MaxCumulativeShiftScoreAtFirstOnHidden.SessionWindow.Gap1000ms.Max5000ms"> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window until the first time the page moves from |
| the foreground to the background. The gap between two consecutive shifts |
| in a window is not bigger than 1000ms and the maximum window size is |
| 5000ms. This metric's integral value is 100x the fractional cumulative |
| layout shift score described in the explainer. This metric is trying to |
| record the layout shift values which are not able to be recorded in |
| LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms.Max5000ms |
| for some reasons. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Experimental.Navigation.UserInitiated"> |
| <summary> |
| True if this navigation was initiated by user input. For renderer |
| navigations, only true if the code can trace back to the original input |
| event. Some known cases where it is missing: crbug.com/889223 |
| crbug.com/897837 crbug.com/897840 |
| </summary> |
| </metric> |
| <metric name="Experimental.NavigationToInteractive"> |
| <obsolete> |
| Removed 2/2020. Do not use Time to Interactive as a RUM metric. |
| </obsolete> |
| <summary> |
| Measures Time to Interactive, a metric based on main thread and network |
| heuristics to approximate the point in time when the page feels |
| interactive to the user. See https://goo.gl/TFw6xz for detailed |
| explanation. This histogram uses First Meaningful Paint as the lower bound |
| for quiescent windows. The unit of time is ms. |
| </summary> |
| </metric> |
| <metric name="Experimental.PageLoadType" enum="PageVisitFinalStatus"> |
| <obsolete> |
| Renamed in 11/2021, use PageVisitFinalStatus instead. |
| </obsolete> |
| <summary> |
| Determines the PageLoadType for this page load. That is, records whether |
| the page was never foregrounded, was foregrounded but did not reach FCP, |
| or did reach FCP. The metric is recorded at the end of each page load. As |
| usual with PageLoad metrics, we consider app backgrounding on Android to |
| be the end of page load as well as the app could be evicted by Android |
| anytime after that happens. |
| </summary> |
| </metric> |
| <metric name="Experimental.PaintTiming.NavigationToFirstMeaningfulPaint"> |
| <obsolete> |
| Removed on 11/2022 |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the first meaningful paint (http://bit.ly/ttfmp-doc), for main |
| frame documents. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Experimental.PaintTiming.NavigationToLargestContentPaint"> |
| <obsolete> |
| Deprecated 7/2019, replaced by |
| PaintTiming.NavigationToLargestContentfulPaint.MainFrame. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport. See http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric |
| name="Experimental.PaintTiming.NavigationToLargestContentPaintAllFrames"> |
| <obsolete> |
| Deprecated 7/2019, replaced by |
| PaintTiming.NavigationToLargestContentfulPaint |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport. Compared with NavigationToLargestContentPaint, |
| this is the aggregate results from all frames, while |
| NavigationToLargestContentPaint is only for main frame. See |
| http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric name="Experimental.PaintTiming.NavigationToLargestImagePaint"> |
| <obsolete> |
| Removed on 01/2020 |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest image within |
| viewport after the image finishes loading. The value is recorded at the |
| end of each page load. See http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric |
| name="Experimental.PaintTiming.NavigationToLargestImagePaint.BeforeUserInput"> |
| <obsolete> |
| Deprecated 01/2019 |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest image within |
| viewport after the image finishes loading, before user input. See |
| http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric name="Experimental.PaintTiming.NavigationToLargestTextPaint"> |
| <obsolete> |
| Removed on 01/2020 |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest text within |
| viewport. The value is recorded at the end of each page load. See |
| http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric |
| name="Experimental.PaintTiming.NavigationToLargestTextPaint.BeforeUserInput"> |
| <obsolete> |
| Deprecated 01/2019 |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest text within |
| viewport, before user input. See http://bit.ly/fcp_plus_plus for more |
| details. |
| </summary> |
| </metric> |
| <metric name="Experimental.PaintTiming.NavigationToLastImagePaint"> |
| <obsolete> |
| Deprecated on March 2019. This metric as a page load metric hasn't shown a |
| good correlation with user experience. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the last image within |
| viewport after the image finishes loading. The value is recorded at the |
| end of each page load. See http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric name="Experimental.PaintTiming.NavigationToLastTextPaint"> |
| <obsolete> |
| Deprecated on March 2019. This metric as a page load metric hasn't shown a |
| good correlation with user experience. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the last Text within |
| viewport. The value is recorded at the end of each page load. See |
| http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric name="Experimental.TotalForegroundDuration"> |
| <obsolete> |
| Deprecated on November 2021, replaced by |
| PageTiming.TotalForegroundDuration. |
| </obsolete> |
| <summary> |
| The total amount of time the page spent in the foreground, in |
| milliseconds. Note that this metric adds all foreground durations |
| occurring for the page. For example: if the page starts foregrounded |
| during 1 second, then goes to the background for a while, then is |
| foregrounded again for 2 seconds, and then is unloaded, this metric |
| reports 3 seconds. To see metrics about consecutive foreground sessions, |
| see the PageForegroundSession event instead. This metric is recorded at |
| the end of each page load. As usual with PageLoad metrics, we consider app |
| backgrounding on Android to be the end of page load as well as the app |
| could be evicted by Android anytime after that happens. |
| </summary> |
| </metric> |
| <metric name="HourOfDay"> |
| <summary> |
| The hour of the day when the page load was initiated. The time is measured |
| in the local time zone according to the system clock. Only collected for |
| page loads that start while on foreground. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.AverageUserInteractionLatencyOverBudget.MaxEventDuration"> |
| <summary> |
| The average value of user interaction latency above budget of a page load, |
| in ms. For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.AverageUserInteractionLatencyOverBudget.TotalEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The average value of user interaction latency above budget of a page load, |
| in ms. For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputDelay"> |
| <obsolete> |
| Deprecated on January 2019 in favor of InteractiveTiming.FirstInputDelay2, |
| which correctly excludes some scrolling cases that were previously not |
| excluded from this metric. |
| </obsolete> |
| <summary> |
| Measures First Input Delay, the duration between the hardware timestamp |
| and the start of event processing on the main thread for the first |
| meaningful input per navigation. See https://goo.gl/tr1oTZ for a detailed |
| explanation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputDelay.SkipFilteringComparison"> |
| <obsolete> |
| Removed in January 2020 as the experiment is launched. |
| </obsolete> |
| <summary> |
| For comparing FirstInputDelay metrics in the SkipTouchEventFilter |
| experiment. Measures First Input Delay, the duration between the hardware |
| timestamp and the start of event processing on the main thread for the |
| first meaningful input per navigation. See https://goo.gl/tr1oTZ for a |
| detailed explanation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputDelay2"> |
| <obsolete> |
| Removed on February 2019 in favor of InteractiveTiming.FirstInputDelay3 |
| which brings the metric more in line with the EventTiming API. |
| </obsolete> |
| <summary> |
| Measures First Input Delay, the duration between the hardware timestamp |
| and the start of event processing on the main thread for the first |
| meaningful input per navigation. See https://goo.gl/tr1oTZ for a detailed |
| explanation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputDelay3"> |
| <obsolete> |
| Removed in July 2019 in favor of InteractiveTiming.FirstInputDelay4 which |
| includes events which were previously filtered. |
| </obsolete> |
| <summary> |
| Measures First Input Delay, the duration between the hardware timestamp |
| and the start of event processing on the main thread for the first |
| meaningful input per navigation. See https://goo.gl/tr1oTZ for a detailed |
| explanation. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputDelay4"> |
| <summary> |
| Measures First Input Delay, the duration between the hardware timestamp |
| and the start of event processing on the main thread for the first |
| meaningful input per navigation. See https://goo.gl/tr1oTZ for a detailed |
| explanation. In ms. Log of major changes: |
| http://bit.ly/chrome-speed-metrics-changelog |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputProcessingTimes"> |
| <summary> |
| Measures First Input Processing Time, the duration of event handlers |
| processing the first input event. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputTimestamp"> |
| <obsolete> |
| Deprecated on January 2019 in favor of |
| InteractiveTiming.FirstInputTimestamp2, which correctly excludes some |
| scrolling cases that were previously not excluded from this metric. |
| </obsolete> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| first meaningful input per navigation. See https://goo.gl/tr1oTZ for a |
| detailed explanation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputTimestamp.SkipFilteringComparison"> |
| <obsolete> |
| Removed in Jaunary 2020 as the experiment is launched. |
| </obsolete> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| first meaningful input per navigation. See https://goo.gl/tr1oTZ for a |
| detailed explanation. In ms. |
| |
| This metric is used for comparing FirstInputTimestamp metrics in the |
| SkipTouchEventFilter experiment. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputTimestamp2"> |
| <obsolete> |
| Removed on February 2019 in favor of |
| InteractiveTiming.FirstInputTimestamp3 which brings the metric more in |
| line with the EventTiming API. |
| </obsolete> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| first meaningful input per navigation. See https://goo.gl/tr1oTZ for a |
| detailed explanation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputTimestamp3"> |
| <obsolete> |
| Removed in July 2019 in favor of InteractiveTiming.FirstInputTimestamp4 |
| which includes events which were previously filtered. |
| </obsolete> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| first meaningful input per navigation. See https://goo.gl/tr1oTZ for a |
| detailed explanation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputTimestamp4"> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| first meaningful input per navigation. See https://goo.gl/tr1oTZ for a |
| detailed explanation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstScrollDelay"> |
| <summary> |
| Measures the time, in milliseconds, from when a user starts scrolling |
| until the result shows up on screen if the scroll was the first scroll |
| since navigation. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.FirstScrollTimestamp"> |
| <summary> |
| The duration between navigation start and the timestamp of the first |
| scroll per navigation. In ms. This is rounded down to the nearest |
| exponential bucket. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputDelay"> |
| <obsolete> |
| Deprecated on January 2019 in favor of |
| InteractiveTiming.LongestInputDelay2, which correctly excludes some |
| scrolling cases that were previously not excluded from this metric. |
| </obsolete> |
| <summary> |
| Measures longest Input Delay, the longest duration between the hardware |
| timestamp and the start of event processing on the main thread for the |
| meaningful input per navigation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputDelay2"> |
| <obsolete> |
| Removed on February 2019 in favor of InteractiveTiming.LongestInputDelay3 |
| which brings the metric more in line with the EventTiming API. |
| </obsolete> |
| <summary> |
| Measures longest Input Delay, the longest duration between the hardware |
| timestamp and the start of event processing on the main thread for the |
| meaningful input per navigation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputDelay3"> |
| <obsolete> |
| Removed on September 2019 in favor of InteractiveTiming.LongestInputDelay4 |
| which includes events which otherwise would have been filtered. |
| </obsolete> |
| <summary> |
| Measures longest Input Delay, the longest duration between the hardware |
| timestamp and the start of event processing on the main thread for the |
| meaningful input per navigation. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputDelay4"> |
| <summary> |
| Measures longest Input Delay, the longest duration between the hardware |
| timestamp and the start of event processing on the main thread for the |
| meaningful input per navigation. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputTimestamp"> |
| <obsolete> |
| Deprecated on January 2019 in favor of |
| InteractiveTiming.LongestInputTimestamp2, which correctly excludes some |
| scrolling cases that were previously not excluded from this metric. |
| </obsolete> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| meaningful input with longest queuing delay per navigation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputTimestamp2"> |
| <obsolete> |
| Removed on February 2019 in favor of |
| InteractiveTiming.LongestInputTimestamp3 which brings the metric more in |
| line with the EventTiming API. |
| </obsolete> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| meaningful input with longest queuing delay per navigation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputTimestamp3"> |
| <obsolete> |
| Removed on February 2019 in favor of |
| InteractiveTiming.LongestInputTimestamp4 which includes inputs which would |
| have previously been filtered. |
| </obsolete> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| meaningful input with longest queuing delay per navigation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.LongestInputTimestamp4"> |
| <summary> |
| The duration between navigation start and the hardware timestamp of the |
| meaningful input with longest queuing delay per navigation. In ms. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.NumInputEvents"> |
| <summary> |
| The number of Input Events, including click, tap, key press, cancellable |
| touchstart, or pointer down followed by a pointer up. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.NumInteractions"> |
| <summary> |
| The number of distinct user interactions. See definition of user |
| interaction: |
| https://web.dev/better-responsiveness-metric/#group-events-into-interactions |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile.MaxEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of a high percentile of user interaction latency above |
| budget of a page load, in ms. For this metric, we measure the latency of |
| user interactions by Responsiveness.UserInteraction.MaxEventDuration and |
| we deduct a budget from the original value. If the latency value is below |
| the budget, it will be treated as 0 ms. Each type of interaction has its |
| own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile.TotalEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of a high percentile of user interaction latency above |
| budget of a page load, in ms. For this metric, we measure the latency of |
| user interactions by Responsiveness.UserInteraction.TotalEventDuration and |
| we deduct a budget from the original value. If the latency value is below |
| the budget, it will be treated as 0 ms. Each type of interaction has its |
| own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile2.MaxEventDuration"> |
| <summary> |
| An approximation of a high percentile of user interaction latency above |
| budget of a page load, in ms. For this metric, we measure the latency of |
| user interactions by Responsiveness.UserInteraction.MaxEventDuration and |
| we deduct a budget from the original value. If the latency value is below |
| the budget, it will be treated as 0 ms. Each type of interaction has its |
| own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.SlowUserInteractionLatencyOverBudget.HighPercentile2.TotalEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| An approximation of a high percentile of user interaction latency above |
| budget of a page load, in ms. For this metric, we measure the latency of |
| user interactions by Responsiveness.UserInteraction.TotalEventDuration and |
| we deduct a budget from the original value. If the latency value is below |
| the budget, it will be treated as 0 ms. Each type of interaction has its |
| own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.SumOfUserInteractionLatencyOverBudget.MaxEventDuration"> |
| <summary> |
| The sum of user interaction latency above budget of a page load, in ms. |
| For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.SumOfUserInteractionLatencyOverBudget.TotalEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The sum of user interaction latency above budget of a page load, in ms. |
| For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.TotalAdjustedInputDelay"> |
| <summary> |
| sum(max(Input Delay - 50, 0)). The Input Delay refers to the duration |
| between the hardware timestamp and the start of event processing on the |
| main thread for the meaningful input. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.TotalInputDelay"> |
| <summary> |
| sum(Input Delay). The Input Delay refers to the duration between the |
| hardware timestamp and the start of event processing on the main thread |
| for the meaningful input. In ms. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="InteractiveTiming.TotalUserInteractionLatencyOverBudget.MaxEventDuration"> |
| <obsolete> |
| Deprecated 10/2021. Replaced by |
| "InteractiveTiming.SumOfUserInteractionLatencyOverBudget.MaxEventDuration". |
| </obsolete> |
| <summary> |
| The sum of user interaction latency above budget of a page load, in ms. |
| For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.TotalUserInteractionLatencyOverBudget.TotalEventDuration"> |
| <obsolete> |
| Deprecated 10/2021. Replaced by |
| "InteractiveTiming.SumOfUserInteractionLatencyOverBudget.TotalEventDuration". |
| </obsolete> |
| <summary> |
| The sum of user interaction latency above budget of a page load, in ms. |
| For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.UserInteractionLatency.HighPercentile2.MaxEventDuration"> |
| <summary> |
| An approximation of a high percentile of user interaction latency of a |
| page load, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.MaxEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.UserInteractionLatencyAtFirstOnHidden.HighPercentile2.MaxEventDuration"> |
| <summary> |
| An approximation of a high percentile of user interaction latency of a |
| page load, in ms. For this metric, we measure the latency of user |
| interactions by Responsiveness.UserInteraction.MaxEventDuration. We record |
| it when a page is moved from the foreground to the background for the |
| first time. This metric is trying to record the INP values which are not |
| able to be recorded in |
| InteractiveTiming.UserInteractionLatency.HighPercentile2.MaxEventDuration |
| for some reasons. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.WorstUserInteractionLatency.MaxEventDuration"> |
| <summary> |
| The maximum value of user interaction latency of a page load, in ms. For |
| this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration. Each type of interaction |
| has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.WorstUserInteractionLatency.TotalEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency of a page load, in ms. For |
| this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration. Each type of |
| interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.WorstUserInteractionLatencyOverBudget.MaxEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency above budget of a page load, |
| in ms. For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.WorstUserInteractionLatencyOverBudget.TotalEventDuration"> |
| <obsolete> |
| Deprecated March 2022 for |
| SlowUserInteractionLatency.HighPercentile2.MaxEventDuration |
| </obsolete> |
| <summary> |
| The maximum value of user interaction latency above budget of a page load, |
| in ms. For this metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.TotalEventDuration and we reduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric name="IsCrossProcessNavigation"> |
| <owner>altimin@chromium.org</owner> |
| <owner>arthursonzogni@chromium.org</owner> |
| <summary> |
| Whether the navigation resulted in the main frame being hosted in a |
| different renderer process than the current document or not. |
| </summary> |
| </metric> |
| <metric name="IsExistingBookmark" enum="Boolean"> |
| <summary> |
| Marked true if the page was already bookmarked when the navigation |
| committed. |
| </summary> |
| </metric> |
| <metric name="IsExistingPartOfTabGroup" enum="Boolean"> |
| <summary> |
| Marked true if the page was already part of a tab group when the |
| navigation committed. |
| </summary> |
| </metric> |
| <metric name="IsNewBookmark" enum="Boolean"> |
| <summary> |
| Roughly: measures if the page was newly bookmarked. Specifically: this is |
| marked true if the page was not bookmarked when the navigation committed, |
| and is bookmarked at the end of the page lifetime. |
| |
| Note, this means this boolean is mutually exclusive with |
| IsExistingBookmark. |
| |
| Also note, this means that a page that is bookmarked, and then |
| sebsequently un-bookmarked is counted as false. |
| </summary> |
| </metric> |
| <metric name="IsNTPCustomLink" enum="Boolean"> |
| <summary> |
| Marked true if the page has been explicitly added (by the user) to the |
| list of custom links displayed in the NTP. Links added to the NTP by |
| History TopSites don't count for this. Always false on Android, because |
| Android does not have NTP custom links. |
| </summary> |
| </metric> |
| <metric name="IsPlacedInTabGroup" enum="Boolean"> |
| <summary> |
| Roughly: measures if the page was added to a tab group. Specifically: this |
| is marked true if the page was not part of a tab group when the navigation |
| committed, and is part of a tab group at the end of the page lifetime. |
| |
| Note, this means this boolean is mutually exclusive with |
| IsExistingPartOfTabGroup. |
| |
| Also note, this means that a page that is added, and then sebsequently |
| removed from a tab group is counted as false. |
| </summary> |
| </metric> |
| <metric name="IsScopedSearchLikeNavigation" enum="Boolean"> |
| <summary> |
| Marked true if the page was eligible for a scoped search when the |
| navigation committed. |
| </summary> |
| </metric> |
| <metric name="IsSignedExchangeInnerResponse"> |
| <obsolete> |
| Migrated to the PageLoad.SignedExchange event. The presence of that event |
| indicates the associated source was served via signed exchange. |
| </obsolete> |
| <summary> |
| Set to 1 if the main resource is an inner response of a signed exchange. |
| </summary> |
| </metric> |
| <metric |
| name="LayoutInstability.AverageCumulativeShiftScore.SessionWindow.Gap5000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the average cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window. The gap between two consecutive shifts |
| in a window is not bigger than 5000ms. This metric's integral value is |
| 100x the fractional cumulative layout shift score described in the |
| explainer. |
| </summary> |
| </metric> |
| <metric name="LayoutInstability.CumulativeShiftScore"> |
| <summary> |
| Deprecated as of 04/23. It is still reported, but most users should use |
| PageLoad.LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms.Max5000ms. |
| |
| Measures the cumulative layout shift (bit.ly/lsm-explainer) that has |
| occurred on the page (including all subframes) during the session. This |
| metric's integral value is 100x the fractional cumulative layout shift |
| score described in the explainer. Stable since M79; previous versions are |
| experimental and subject to fluctuation between releases. Log of major |
| changes: http://bit.ly/chrome-speed-metrics-changelog |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LayoutInstability.CumulativeShiftScore.BeforeInputOrScroll"> |
| <summary> |
| Measures the cumulative layout shift (bit.ly/lsm-explainer) that has |
| occurred on the page (including all subframes) during the session, before |
| any user input or scroll (in any frame). This metric's integral value is |
| 100x the fractional cumulative layout shift score described in the |
| explainer. |
| </summary> |
| </metric> |
| <metric name="LayoutInstability.CumulativeShiftScore.MainFrame"> |
| <summary> |
| Measures the cumulative layout shift (bit.ly/lsm-explainer) that has |
| occurred in the main frame during the session. This metric's integral |
| value is 100x the fractional cumulative layout shift score described in |
| the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="LayoutInstability.CumulativeShiftScore.MainFrame.BeforeInputOrScroll"> |
| <summary> |
| Measures the cumulative layout shift (bit.ly/lsm-explainer) that has |
| occurred in the main frame during the session, before any user input or |
| scroll. This metric's integral value is 100x the fractional cumulative |
| layout shift score described in the explainer. |
| </summary> |
| </metric> |
| <metric |
| name="LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window. The gap between two consecutive shifts |
| in a window is not bigger than 1000ms. This metric's integral value is |
| 100x the fractional cumulative layout shift score described in the |
| explainer. |
| </summary> |
| </metric> |
| <metric |
| name="LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms.Max5000ms"> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window. The gap between two consecutive shifts |
| in a window is not bigger than 1000ms and the maximum window size is |
| 5000ms. This metric's integral value is 100x the fractional cumulative |
| layout shift score described in the explainer. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="LayoutInstability.MaxCumulativeShiftScore.SessionWindowByInputs.Gap1000ms.Max5000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a session window. The gap between two consecutive shifts |
| in a window is not bigger than 1000ms or segmented by a user input. The |
| maximum window size is 5000ms. This metric's integral value is 100x the |
| fractional cumulative layout shift score described in the explainer. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="LayoutInstability.MaxCumulativeShiftScore.SlidingWindow.Duration1000ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a 1000ms sliding window. This metric's integral value is |
| 100x the fractional cumulative layout shift score described in the |
| explainer. |
| </summary> |
| </metric> |
| <metric |
| name="LayoutInstability.MaxCumulativeShiftScore.SlidingWindow.Duration300ms"> |
| <obsolete> |
| Deprecated 06/2021. |
| </obsolete> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred in a 300ms sliding window. This metric's integral value is |
| 100x the fractional cumulative layout shift score described in the |
| explainer. |
| </summary> |
| </metric> |
| <metric name="LayoutStability.JankScore"> |
| <obsolete> |
| Removed July 2019 in favor of LayoutInstability.CumulativeShiftScore. |
| </obsolete> |
| <summary> |
| Measures the amount of layout jank (bit.ly/lsm-explainer) that has |
| occurred on the page (including all subframes) during the session. This |
| metric's integral value is 100x the fractional jank score described in the |
| explainer. |
| </summary> |
| </metric> |
| <metric name="LayoutStability.JankScore.MainFrame"> |
| <obsolete> |
| Removed July 2019 in favor of |
| LayoutInstability.CumulativeShiftScore.MainFrame. |
| </obsolete> |
| <summary> |
| Measures the amount of layout jank (bit.ly/lsm-explainer) that has |
| occurred in the main frame during the session. This metric's integral |
| value is 100x the fractional jank score described in the explainer. |
| </summary> |
| </metric> |
| <metric name="LayoutStability.JankScore.MainFrame.BeforeInputOrScroll"> |
| <obsolete> |
| Removed July 2019 in favor of |
| LayoutInstability.CumulativeShiftScore.MainFrame.BeforeInputOrScroll. |
| </obsolete> |
| <summary> |
| Measures the amount of layout jank (bit.ly/lsm-explainer) that has |
| occurred in the main frame during the session, before any user input or |
| document scroll. This metric's integral value is 100x the fractional jank |
| score described in the explainer. |
| </summary> |
| </metric> |
| <metric name="MainDocumentSequenceNumber"> |
| <owner>altimin@chromium.org</owner> |
| <owner>arthursonzogni@chromium.org</owner> |
| <summary> |
| An id for the main frame's document associated with the current |
| navigation. It doesn't change for same-document navigations and when |
| navigating back to the same document. Unique during the browsing session. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.ConnectDelay"> |
| <summary> |
| The duration between the start of the connection establishment to the end |
| of the connection establishment to the origin of the main frame request. |
| In ms. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.DNSDelay"> |
| <summary> |
| The duration between the start of the DNS resolution to the end for the |
| origin of the main frame request. In ms. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.HttpProtocolScheme"> |
| <summary> |
| HTTP Protocol scheme of the connection using which the main frame response |
| was fetched. Recorded as HttpProtocolScheme enum in |
| tools/metrics/histograms/enum.xml. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.NavigationStartToReceiveHeadersStart"> |
| <summary> |
| The duration from the start of the navigation to the start of the response |
| headers being received. In ms. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.NavigationStartToRequestStart"> |
| <summary> |
| The duration from the start of the navigation to the start of the main |
| frame request. This includes the time to process any redirects on the main |
| frame request. In ms. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.RedirectCount"> |
| <summary> |
| The number of main frame redirects that occurred before commit. Unset if |
| there were no redirects. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.RequestHadCookies" enum="Boolean"> |
| <summary> |
| A boolean indicating if any mainpage request in the redirect chain or |
| committed request had cookies set on it. Only set when a query result was |
| received from the cookie manager before event recording. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.RequestHasNoStore" enum="Boolean"> |
| <summary> |
| A boolean indicating if any mainpage resource has a 'Cache-control: |
| no-store' response header. Recorded only for main frame request. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.RequestStartToReceiveHeadersEnd"> |
| <summary> |
| The duration from when the request was started to the time when its |
| response headers were received. Recorded only for the main frame request. |
| In ms. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.RequestStartToSendStart"> |
| <summary> |
| The duration from when the request was started to the time when its |
| request headers were sent. Recorded only for the main frame request. In |
| ms. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.SendStartToReceiveHeadersEnd"> |
| <summary> |
| The duration from when the request headers were sent to when its response |
| headers were received. Recorded only for the main frame request. In ms. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.SocketReused"> |
| <summary> |
| True if the socket was reused when establishing connection to the origin |
| of the main frame request. |
| </summary> |
| </metric> |
| <metric name="Navigation.PageEndReason"> |
| <obsolete> |
| Deprecated May 2020 in favor of Navigation.PageEndReason2. |
| </obsolete> |
| <summary> |
| The |page_load_metrics::PageEndReason| for the main frame navigation of |
| this page load. |
| </summary> |
| </metric> |
| <metric name="Navigation.PageEndReason2" enum="PageEndReason"> |
| <obsolete> |
| Deprecated Jan 2021 in favor of Navigation.PageEndReason3. |
| </obsolete> |
| <summary> |
| The |page_load_metrics::PageEndReason| for the main frame navigation of |
| this page load. Replaced Navigation.PageEndReason at the end of May 2020 |
| to reduce occurrences of page_load_metrics::PageEndReason::END_NONE by |
| setting the value to page_load_metrics::PageEndReason::END_HIDDEN when the |
| metric is recorded after the page became hidden. |
| </summary> |
| </metric> |
| <metric name="Navigation.PageEndReason3" enum="PageEndReason"> |
| <summary> |
| The |page_load_metrics::PageEndReason| for the main frame navigation of |
| this page load. Replaced Navigation.PageEndReason2 on January 2021 to get |
| rid of END_HIDDEN and use END_APP_BACKGROUND on cases where the metrics |
| are flushed and the app enters the background. |
| </summary> |
| </metric> |
| <metric name="Navigation.PageTransition"> |
| <summary> |
| The |ui::PageTransition| for the main frame navigation of this page load. |
| </summary> |
| </metric> |
| <metric name="NavigationEntryOffset"> |
| <owner>altimin@chromium.org</owner> |
| <owner>arthursonzogni@chromium.org</owner> |
| <summary> |
| Difference between the last committed navigation entry index before and |
| after the commit of this navigation. |
| </summary> |
| </metric> |
| <metric name="Net.CacheBytes"> |
| <obsolete> |
| Deprecated 06/2019 in favor of Net.CacheBytes2. |
| </obsolete> |
| <summary> |
| The total number of body bytes loaded from cache for all resources on the |
| page. This is rounded down to the nearest exponential bucket (with a |
| bucket spacing factor of 1.3). |
| </summary> |
| </metric> |
| <metric name="Net.CacheBytes2"> |
| <summary> |
| The total number of body bytes loaded from cache for all resources on the |
| page. This includes the http and memory cache. This is rounded down to the |
| nearest exponential bucket (with a bucket spacing factor of 1.3). |
| </summary> |
| </metric> |
| <metric name="Net.DownstreamKbpsEstimate.OnNavigationStart"> |
| <owner>tbansal@chromium.org</owner> |
| <summary> |
| The downstream throughput (in kilobits per second) for this page load, at |
| the time the navigation for this page load was initiated. |
| </summary> |
| </metric> |
| <metric name="Net.EffectiveConnectionType.OnNavigationStart"> |
| <obsolete> |
| Deprecated 7/2017 in favor of |
| Net.EffectiveConnectionType2.OnNavigationStart. |
| </obsolete> |
| <summary> |
| The |net::EffectiveConnectionType| at the time the navigation for this |
| page load was initiated. |
| </summary> |
| </metric> |
| <metric name="Net.EffectiveConnectionType2.OnNavigationStart"> |
| <summary> |
| The |SystemProfileProto::Network::EffectiveConnectionType| at the time the |
| navigation for this page load was initiated. |
| </summary> |
| </metric> |
| <metric name="Net.ErrorCode.OnFailedProvisionalLoad"> |
| <summary> |
| The |net::Error| code for this page load. Only logged for failed |
| provisional navigations. |
| </summary> |
| </metric> |
| <metric name="Net.HttpResponseCode"> |
| <summary> |
| The HTTP response code (e.g., 200, 404, etc.) associated with the main |
| frame page load. |
| </summary> |
| </metric> |
| <metric name="Net.HttpRttEstimate.OnNavigationStart"> |
| <summary> |
| The HTTP round trip time estimate for this page load, at the time the |
| navigation for this page load was initiated. |
| </summary> |
| </metric> |
| <metric name="Net.ImageBytes"> |
| <obsolete> |
| Deprecated 09/2021 in favor of Net.ImageBytes2. |
| </obsolete> |
| <summary> |
| The total number of bytes loaded from the network for images on the page. |
| This is rounded down to the nearest exponential bucket (with a bucket |
| spacing factor of 1.3). On mobile this only records bytes up until the |
| page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.ImageBytes2"> |
| <summary> |
| The total number of bytes loaded from the network for images on the page. |
| This is rounded down to the nearest exponential bucket (with a bucket |
| spacing factor of 1.3). On mobile this only records bytes up until the |
| page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.ImageSubframeBytes"> |
| <obsolete> |
| Deprecated 09/2021 in favor of Net.ImageSubframeBytes2. |
| </obsolete> |
| <summary> |
| The total number of bytes loaded from the network for images on the |
| subframes of the page. This is rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 1.3). On mobile this only records |
| bytes up until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.ImageSubframeBytes2"> |
| <summary> |
| The total number of bytes loaded from the network for images on the |
| subframes of the page. This is rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 1.3). On mobile this only records |
| bytes up until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.JavaScriptBytes"> |
| <obsolete> |
| Deprecated 09/2021 in favor of Net.JavaScriptBytes2. |
| </obsolete> |
| <summary> |
| The sum of decoded body lengths of all JavaScript resources that completed |
| loading on the page. This is rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 10). On mobile this only records |
| bytes up until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.JavaScriptBytes2"> |
| <summary> |
| The sum of decoded body lengths of all JavaScript resources that completed |
| loading on the page. This is rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 1.3). On mobile this only records |
| bytes up until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.JavaScriptMaxBytes"> |
| <obsolete> |
| Deprecated 09/2021 in favor of Net.JavaScriptMaxBytes2. |
| </obsolete> |
| <summary> |
| The max of decoded body lengths of all JavaScript resources that completed |
| loading on the page. This is rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 10). On mobile this only records |
| bytes up until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.JavaScriptMaxBytes2"> |
| <summary> |
| The max of decoded body lengths of all JavaScript resources that completed |
| loading on the page. This is rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 1.3). On mobile this only records |
| bytes up until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.MediaBytes"> |
| <obsolete> |
| Deprecated 09/2021 in favor of Net.MediaBytes2. |
| </obsolete> |
| <summary> |
| The total number of bytes loaded from the network for media (video, audio) |
| on the page. This is rounded down to the nearest exponential bucket (with |
| a bucket spacing factor of 1.3). On mobile this only records bytes up |
| until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.MediaBytes2"> |
| <summary> |
| The total number of bytes loaded from the network for media (video, audio) |
| on the page. This is rounded down to the nearest exponential bucket (with |
| a bucket spacing factor of 1.3). On mobile this only records bytes up |
| until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.NetworkBytes"> |
| <obsolete> |
| Deprecated 03/2019 in favor of Net.NetworkBytes2. |
| </obsolete> |
| <summary> |
| The total number of body bytes loaded from the network for all resources |
| on the page. This is rounded down to the nearest exponential bucket (with |
| a bucket spacing factor of 1.3). |
| </summary> |
| </metric> |
| <metric name="Net.NetworkBytes2"> |
| <summary> |
| The total number of bytes loaded from the network for all resources on the |
| page, including incomplete resources and headers. This is rounded down to |
| the nearest exponential bucket (with a bucket spacing factor of 1.3). On |
| mobile this only records bytes up until the page/app is backgrounded. |
| </summary> |
| </metric> |
| <metric name="Net.TransportRttEstimate.OnNavigationStart"> |
| <summary> |
| The transport round trip time estimate for this page load, at the time the |
| navigation for this page load was initiated. |
| </summary> |
| </metric> |
| <metric name="OmniboxUrlCopied" enum="Boolean"> |
| <summary> |
| Marked true if the user copied the page's URL from the omnibox at any time |
| for this page load. |
| </summary> |
| </metric> |
| <metric name="PageTiming.ForegroundDuration"> |
| <summary> |
| For page loads that start in the foreground, measures the duration of time |
| in milliseconds until one of the following events occurs: the load of the |
| main resource fails, the page load is stopped, the tab hosting the page is |
| closed, the render process hosting the page goes away, a new navigation |
| which later commits is initiated in the same tab, or the tab hosting the |
| page is backgrounded. This metric has a very long tail, for pages that |
| spend a long period of time in the foreground. As such, use of the mean or |
| tail values are not recommended. |
| </summary> |
| </metric> |
| <metric name="PageTiming.NavigationToFailedProvisionalLoad"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time the provisional load failed. Only measures provisional |
| loads that failed in the foreground. |
| </summary> |
| </metric> |
| <metric name="PageTiming.TotalForegroundDuration"> |
| <summary> |
| The total amount of time the page spent in the foreground, in |
| milliseconds. Note that this metric adds all foreground durations |
| occurring for the page. For example: if the page starts foregrounded |
| during 1 second, then goes to the background for a while, then is |
| foregrounded again for 2 seconds, and then is unloaded, this metric |
| reports 3 seconds. To see metrics about consecutive foreground sessions, |
| see the PageForegroundSession event instead. This metric is recorded at |
| the end of each page load. As usual with PageLoad metrics, we consider app |
| backgrounding on Android to be the end of page load as well as the app |
| could be evicted by Android anytime after that happens. |
| </summary> |
| </metric> |
| <metric name="PageTiming.UserTimingMarkFullyLoaded"> |
| <summary> |
| When the page UserTiming mark API is called with the standard |
| 'mark_fully_loaded' name to mark that the page is fully loaded. If the |
| mark is called more than once, the last is used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PageTiming.UserTimingMarkFullyVisible"> |
| <summary> |
| When the page UserTiming mark API is called with the standard |
| 'mark_fully_visible' name to mark that the page is fully visible. If the |
| mark is called more than once, the last is used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PageTiming.UserTimingMarkInteractive"> |
| <summary> |
| When the page UserTiming mark API is called with the standard |
| 'mark_interactive' name to mark that the page is interactive. If the mark |
| is called more than once, the last is used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PageVisitFinalStatus" enum="PageVisitFinalStatus"> |
| <summary> |
| Determines the final status for this page load. That is, records whether |
| the page was never foregrounded, was foregrounded but did not reach FCP, |
| or did reach FCP. The metric is recorded at the end of each page load. As |
| usual with PageLoad metrics, we consider app backgrounding on Android to |
| be the end of page load as well as the app could be evicted by Android |
| anytime after that happens. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.LargestContentfulPaintBPP" |
| enum="BitsPerPixelExponential"> |
| <summary> |
| Measures the ratio of image file size (in bits) to displayed pixels for |
| the LCP candidate. Bucketed into roughly exponential intervals to account |
| for the wide range of encountered values (less than 1:100000 to greater |
| than 10000:1). This metric is recorded whenever the LCP candidate is an |
| image, and omitted when it is text. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.LargestContentfulPaintImageLoadEnd"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the LCP element(image) finishes loading. For |
| animated images, this is when the image resource finishes loading |
| completely, not the first frame time. See web.dev/optimize-lcp for more |
| details. This metric is not recorded when the LCP element is text or |
| video. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.LargestContentfulPaintImageLoadStart"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the LCP element(image) starts loading. See |
| web.dev/optimize-lcp for more details. This metric is not recorded when |
| the LCP element is text or video. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.LargestContentfulPaintRequestPriority" |
| enum="NetRequestPriority"> |
| <summary> |
| Resource loading priority used for the LCP candidate. This metric is |
| recorded whenever the LCP candidate is an image, and omitted when it is |
| text or video. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.LargestContentfulPaintType"> |
| <summary> |
| Indicates that type of the LargestContentfulPaint candidate. This value is |
| a packed set of flags, defined in |
| third_party/blink/public/common/performance/largest_contentful_paint_type.h |
| </summary> |
| </metric> |
| <metric name="PaintTiming.NavigationToExperimentalLargestContentfulPaint"> |
| <obsolete> |
| Replaced by PaintTiming.NavigationToLargestContentfulPaint2 on Oct 2020. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, across all frames. Differs from |
| PaintTiming.NavigationToLargestContentfulPaint in that this experimental |
| version includes content that has been removed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="PaintTiming.NavigationToExperimentalLargestContentfulPaint.MainFrame"> |
| <obsolete> |
| Replaced by PaintTiming.NavigationToLargestContentfulPaint2.MainFrame on |
| Oct 2020. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, in the main frame. Differs from |
| PaintTiming.NavigationToLargestContentfulPaint.MainFrame in that this |
| experimental version includes content that has been removed. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.NavigationToFirstContentfulPaint"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints content. A contentful paint |
| includes a paint of text, image, SVG, or canvas. Log of major changes: |
| http://bit.ly/chrome-speed-metrics-changelog |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.gender"/> |
| <index fields="profile.gender,profile.generation"/> |
| <index fields="profile.generation"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PaintTiming.NavigationToFirstPaint"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time the first paint is performed. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PaintTiming.NavigationToLargestContentfulPaint"> |
| <obsolete> |
| Replaced by PaintTiming.NavigationToLargestContentfulPaint2. No longer |
| reported from Nov 2021. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, across all frames. See http://bit.ly/fcp_plus_plus |
| for more details. Stable since M79; previous versions are experimental and |
| subject to fluctuation between releases. Log of major changes: |
| http://bit.ly/chrome-speed-metrics-changelog Note: Will be replaced by |
| PaintTiming.NavigationToLargestContentfulPaint2. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PaintTiming.NavigationToLargestContentfulPaint.MainFrame"> |
| <obsolete> |
| Replaced by PaintTiming.NavigationToLargestContentfulPaint2.MainFrame. No |
| longer reported from Nov 2021. |
| </obsolete> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, in the main frame. See http://bit.ly/fcp_plus_plus |
| for more details. Note: Will be replaced by |
| PaintTiming.NavigationToLargestContentfulPaint2.MainFrame. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.NavigationToLargestContentfulPaint2"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, across all frames. See http://bit.ly/fcp_plus_plus |
| for more details. Log of major changes: |
| http://bit.ly/chrome-speed-metrics-changelog. Version 2 differs from the |
| first version in that it includes content that has been removed from the |
| page. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="PaintTiming.NavigationToLargestContentfulPaint2.CrossSiteSubFrame"> |
| <summary> |
| Similar to PaintTiming.NavigationToLargestContentfulPaint2, this measures |
| the time in milliseconds from the navigation start of the top-level frame |
| to the time when the page first paints the largest content (text or image) |
| in the cross-site subframe which is the top candidate of largest |
| contentful paint. This metric is computed separately from the page-level |
| LCP, it's recorded even in page loads where the page-level LCP is not that |
| cross-site LCP. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.NavigationToLargestContentfulPaint2.MainFrame"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, in the main frame. Includes content that has been |
| removed from the page. See http://bit.ly/fcp_plus_plus for more details. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.NavigationToLargestContentfulPaint2AtFirstOnHidden"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time when the page first paints the largest content (text or |
| image) within viewport, across all frames. Recorded at the point when a |
| page which has been opened in the foreground is moved to the background |
| for the first time. See http://bit.ly/fcp_plus_plus for more details. Log |
| of major changes: http://bit.ly/chrome-speed-metrics-changelog. This |
| metric is trying to record the LCP values which are not able to be |
| recorded in PaintTiming.NavigationToLargestContentfulPaint2 for some |
| reasons. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ParseTiming.NavigationToParseStart"> |
| <summary> |
| Measures the time in milliseconds from navigation timing's navigation |
| start to the time the parser started, for main frame documents. |
| </summary> |
| </metric> |
| <metric name="RefreshRateThrottled" enum="Boolean"> |
| <summary> |
| Records whether the refresh rate is throttled (capped to 30Hz) by Power |
| Saver Mode for this Page Load, when the navigation starts. It is possible |
| but very unlikely for this to change mid navigation, for instance due to a |
| change by the user in settings or the battery being recharged above 20%. |
| </summary> |
| </metric> |
| <metric name="SiteEngagementScore"> |
| <owner>mcrouse@chromium.org</owner> |
| <owner>tbansal@chromium.org</owner> |
| <summary> |
| Measures the Site Engagement Score for the committed URL rounded to the |
| nearest 10. |
| </summary> |
| </metric> |
| <metric name="SiteInstanceRenderProcessAssignment" |
| enum="SiteInstanceProcessAssignment"> |
| <summary> |
| Records how the main frame's site instance was assigned to a renderer |
| process. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SoftNavigationCount"> |
| <summary> |
| Number of soft navigations detected by heuristics. See |
| https://bit.ly/soft-navigation |
| |
| Soft navigations are JS-driven same-document navigations that are using |
| the history API or the new Navigation API, triggered by a user gesture and |
| meaningfully modify the DOM, replacing the previous content with new one. |
| </summary> |
| </metric> |
| <metric name="ThirdPartyCookieBlockingEnabledForSite" enum="Boolean"> |
| <owner>dullweber@chromium.org</owner> |
| <owner>huanzhong@chromium.org</owner> |
| <summary> |
| Records whether third party cookie blocking was enabled for a site. Only |
| recorded for users who enabled the cookie controls ui. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WasCached"> |
| <summary> |
| Set to 1 if the main resource was served from cache. |
| </summary> |
| </metric> |
| <metric name="WasDiscarded" enum="Boolean"> |
| <summary> |
| Records whether the Page Load is the result of the page having previously |
| been discarded because of performance interventions or critical memory |
| pressure. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageLoad.CacheTransparencyEnabled" singular="True"> |
| <owner>nidhijaju@chromium.org</owner> |
| <owner>ricea@chromium.org</owner> |
| <summary> |
| Recorded for page loads where Cache Transparency is enabled. |
| </summary> |
| </event> |
| |
| <event name="PageLoad.FromGoogleSearch" singular="True"> |
| <owner>sullivan@chromium.org</owner> |
| <owner>mushan@chromium.org</owner> |
| <summary> |
| Recorded for page loads that were navigated to via Google Search. |
| </summary> |
| <metric name="GoogleSearchMode" enum="GoogleSearchMode"> |
| <summary> |
| Google Search mode used by the user. This corresponds to the tab (e.g. web |
| result, image results, video results, etc.) the user is on. This |
| information is extracted from the tbm query parameter on the Search URL. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageLoad.Internal" singular="True"> |
| <owner>npm@chromium.org</owner> |
| <owner>speed-metrics-dev@chromium.org</owner> |
| <summary> |
| Debugging metrics for the PageLoad event that do not require the same amount |
| of sampling. |
| </summary> |
| <metric name="PaintTiming.ExperimentalLargestContentfulPaint.ContentType" |
| enum="LargestContentType"> |
| <obsolete> |
| Replaced by PaintTiming.LargestContentfulPaint.ContentType. No longer |
| reported from Nov 2021. |
| </obsolete> |
| <summary> |
| Records whether the page's experimental version of largest contentful |
| paint, whose timestamp is measured by |
| PageLoad.PaintTiming.NavigationToLargestContentfulPaint, comes from text |
| or image. This value is sampled and not on the PageLoad event, so it is |
| not always recorded whenever |
| PageLoad.PaintTiming.NavigationToLargestContentfulPaint is recorded. |
| </summary> |
| </metric> |
| <metric |
| name="PaintTiming.ExperimentalLargestContentfulPaint.TerminationState" |
| enum="LargestContentfulPaint.TerminationState"> |
| <obsolete> |
| Replaced by PaintTiming.LargestContentfulPaint.TerminationState. No longer |
| reported from Nov 2021. |
| </obsolete> |
| <summary> |
| Records the state of the experimental largest contentful paint algorithm |
| at the time in which the browser attempts to record |
| PageLoad.PaintTiming.NavigationToLargestContentfulPaint. This state |
| depends on whether there was an experimental largest contentful paint |
| candidate or not and the foreground state of the page. This value is |
| sampled and not on the PageLoad event, so it is not always recorded |
| whenever the browser attempts to record |
| PageLoad.PaintTiming.NavigationToLargestContentfulPaint. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.LargestContentfulPaint.ContentType" |
| enum="LargestContentType"> |
| <summary> |
| Records whether the page's largest contentful paint, whose timestamp is |
| measured by PageLoad.PaintTiming.NavigationToLargestContentfulPaint2, |
| comes from text or image. This value is sampled and not on the PageLoad |
| event, so it is not always recorded whenever |
| PageLoad.PaintTiming.NavigationToLargestContentfulPaint2 is recorded. |
| </summary> |
| </metric> |
| <metric name="PaintTiming.LargestContentfulPaint.TerminationState" |
| enum="LargestContentfulPaint.TerminationState"> |
| <summary> |
| Records the state of the largest contentful paint algorithm at the time in |
| which the browser attempts to record |
| PageLoad.PaintTiming.NavigationToLargestContentfulPaint2. This state |
| depends on whether there was a largest contentful paint candidate or not |
| and the foreground state of the page. This value is sampled and not on the |
| PageLoad event, so it is not always recorded whenever the browser attempts |
| to record PageLoad.PaintTiming.NavigationToLargestContentfulPaint2. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageLoad.PervasivePayloadsEnabled" singular="True"> |
| <owner>nidhijaju@chromium.org</owner> |
| <owner>ricea@chromium.org</owner> |
| <summary> |
| Recorded for page loads where the pervasive payloads list is inputted to |
| Chrome. |
| </summary> |
| </event> |
| |
| <event name="PageLoad.ServiceWorkerControlled" singular="True"> |
| <owner>wanderview@chromium.org</owner> |
| <owner>asamidoi@chromium.org</owner> |
| <summary> |
| Recorded for page loads controlled by a service worker. |
| </summary> |
| </event> |
| |
| <event name="PageLoad.SignedExchange" singular="True"> |
| <owner>horo@chromium.org</owner> |
| <summary> |
| Recorded for page loads which main resource is an inner response of a signed |
| exchange. |
| </summary> |
| <metric name="ServedFromGoogleCache"> |
| <summary> |
| Set to 1 if the main resource was served from Google's cache server. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageLoadCapping" singular="True"> |
| <obsolete> |
| Deprecated as of 3/2019. |
| </obsolete> |
| <owner>ryansturm@chromium.org</owner> |
| <summary> |
| Metrics related to PageLoadCapping that are recorded using the same UKM IDs |
| as PageLoad. |
| </summary> |
| <metric name="FinalState"> |
| <summary> |
| Set to 1 when the InfoBar was shown, but not acted upon. Set to 2 when the |
| page was paused, but not resumed. Set to 3 when the page was resumed. If |
| the InfoBar was not shown, this metrics is not recorded. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageLoadInitiatorForAdTagging" singular="True"> |
| <owner>yaoxia@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| Metrics about the initiator context of a page load (e.g. whether certain |
| condition was true and/or what triggered the page load). Recorded when a |
| page commits. The metrics are specific to ad related conditions or purposes. |
| </summary> |
| <metric name="FromAdClick" enum="Boolean"> |
| <summary> |
| Whether the page was opened due to a click on an ad. |
| </summary> |
| </metric> |
| <metric name="FromUser" enum="Boolean"> |
| <summary> |
| Whether the navigation occurred due to a user action. This includes |
| omnibox navigations as well as renderer initiated navigations with user |
| activation. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PageWithPassword"> |
| <owner>battre@chromium.org</owner> |
| <summary> |
| Metrics about websites that contain password forms and the user's |
| interactions with them. No events are created for pages that don't contain |
| password forms. |
| </summary> |
| <metric name="FormManagerAvailable"> |
| <summary> |
| Records whether Chrome was sufficiently aware of forms during various |
| stages of saving a credential on the site, or whether saving was aborted |
| due to absence of the corresponding form manager. Values correspond to the |
| enum PasswordManagerMetricsRecorder::FormManagerAvailable. |
| </summary> |
| </metric> |
| <metric name="PageLevelUserAction"> |
| <summary> |
| Records if the user interacts with the password manager in a way that |
| cannot (reliably) be attributed to a specific PasswordFormManager. Values |
| correspond to the enum |
| PasswordManagerMetricsRecorder::PageLevelUserAction. |
| </summary> |
| </metric> |
| <metric name="ProvisionalSaveFailure"> |
| <summary> |
| Records a provisional save failure in case the password manager cannot |
| offer to save a credential. Recorded values correspond to the enum |
| PasswordManagerMetricsRecorder::ProvisionalSaveFailure. |
| </summary> |
| </metric> |
| <metric name="UserModifiedPasswordField"> |
| <summary> |
| Records a 1 for every page on which a user has modified a password text |
| field - regardless of how many password fields a page contains or the user |
| modifies. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PaintPreviewCapture" singular="True"> |
| <owner>ckitagawa@chromium.org</owner> |
| <owner>fredmello@chromium.org</owner> |
| <owner>mahmoudi@chromium.org</owner> |
| <owner>vollick@chromium.org</owner> |
| <summary> |
| Metrics related to the performance of capturing Paint Previews. |
| </summary> |
| <metric name="BlinkCaptureTime"> |
| <summary> |
| The amount of time spent painting in Blink to record a Paint Preview of |
| the main frame. |
| </summary> |
| </metric> |
| <metric name="CompressedOnDiskSize"> |
| <summary> |
| The compressed on-disk size in KB of the captured artifacts. This is |
| rounded down to the nearest exponential bucket (with a bucket ratio of |
| 1.3). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PasswordForm"> |
| <owner>battre@chromium.org</owner> |
| <summary> |
| Metrics about password forms on websites and the user's interactions with |
| them. A separate event is generated for each password form discovered on a |
| site. |
| </summary> |
| <metric name="Context.FormSignature"> |
| <summary> |
| Records a low entropy hash of the form signature in order to be able to |
| distinguish two forms on the same site. |
| </summary> |
| </metric> |
| <metric name="DynamicFormChanges"> |
| <summary> |
| Records a bitmask of password form changes after the first time this form |
| is seen by Password Manager. Recorded once per a form when the form is |
| removed from DOM. Bit 0 - changes in number of fields, bit 1 - changes in |
| fields renderer ids, bit 2 - changes in autocomplete attributes, bit 3 - |
| changes in form control types, bit 4 - changes in field names. |
| </summary> |
| </metric> |
| <metric name="Fill.FirstFillingResultInRenderer" |
| enum="PasswordManagerFirstRendererFillingResult"> |
| <summary> |
| Records whether the PasswordAutofillAgent in the renderer manages to fill |
| credentials as instructed by the browser or records a failure reason |
| otherwise. Only the outcome of the first attempt to fill is recorded. |
| |
| This is replicated as PasswordManager.FirstFillingResultInRenderer in UMA. |
| </summary> |
| </metric> |
| <metric name="Fill.FirstWaitForUsernameReason" |
| enum="PasswordManagerFirstWaitForUsernameReason"> |
| <summary> |
| This metric records why the browser instructs the renderer not to fill the |
| credentials on page load but to wait for the user to confirm the |
| credential to be filled. Only the value of the first decision to fill is |
| recorded. |
| |
| This is replicated as PasswordManager.FirstWaitForUsernameReason in UMA. |
| </summary> |
| </metric> |
| <metric name="FillOnLoad"> |
| <summary> |
| Deprecated in November 2018, because the decision this metric supported |
| was made. Records the comparison of the old and new decision about filling |
| a form on load. Should only be logged for fillig with non-PSL matched |
| credentials, in non-Incognito mode. Values are from |
| password_manager::PasswordFormMetricsRecorder::FillOnLoad. |
| </summary> |
| </metric> |
| <metric name="Generation.GeneratedPassword" enum="Boolean"> |
| <summary> |
| Records '1' if the user has generated a password on this form. |
| </summary> |
| </metric> |
| <metric name="Generation.GeneratedPasswordModified" enum="Boolean"> |
| <summary> |
| Records '1' if the user has modified a generated a password on this form. |
| </summary> |
| </metric> |
| <metric name="Generation.PopupShown" enum="PasswordGenerationPopupShown"> |
| <summary> |
| Records an entry if (and only if) a popup was shown. |
| </summary> |
| </metric> |
| <metric name="Generation.SpecPriority"> |
| <obsolete> |
| Deprecated 09/2019. |
| </obsolete> |
| <summary> |
| Reports the priority of a PasswordGenerationRequirementsSpec for a |
| generated password. This can be used for debugging as a 0 means that no |
| spec was used, a 10 means that the spec came from autofill and was crowd |
| sourced, a 20 means that it was overridden per domain and a 30 means that |
| is was overridden for the form. |
| </summary> |
| </metric> |
| <metric name="ManagerFill.Action"> |
| <summary> |
| Records for each password form (and HTTP auth), whether the password |
| manager has filled/provided credentials. Recorded values correspond to the |
| enum ManagerAutofillEvent. |
| </summary> |
| </metric> |
| <metric name="ManagerFill.Assistance" enum="PasswordManagerFillingAssistance"> |
| <summary> |
| Records for each successful submission the degree to which the user has |
| been assisted by the password manager. |
| |
| This is replicated as PasswordManager.FillingAssistance in UMA. |
| </summary> |
| </metric> |
| <metric name="ParsingComparison"> |
| <obsolete> |
| Deprecated 09/2019. |
| </obsolete> |
| <summary> |
| Records comparison result of old and new password form parsing algorithms. |
| Metric is recorded on a password form detection. Recorded values |
| correspond to the enum |
| password_manager::PasswordFormMetricsRecorder::ParsingComparisonResult. |
| </summary> |
| </metric> |
| <metric name="ParsingOnSavingDifference"> |
| <obsolete> |
| Deprecated 09/2019. |
| </obsolete> |
| <summary> |
| Records the comparison of the old and new password form parsing for |
| saving. Multiple values from the |
| password_manager::PasswordFormMetricsRecorder::ParsingOnSavingDifference |
| bitmask can be combined. |
| </summary> |
| </metric> |
| <metric name="ReadonlyWhenFilling"> |
| <summary> |
| Records the readonly status encoded with parsing success after parsing for |
| filling. The |value| is constructed as follows: The least significant bit |
| says whether parsing succeeded (1) or not (0). The rest, shifted by one |
| bit to the right is the FormDataParser::ReadonlyPasswordFields |
| representation of the readonly status. |
| </summary> |
| </metric> |
| <metric name="ReadonlyWhenSaving"> |
| <summary> |
| Records the readonly status encoded with parsing success after parsing for |
| creating pending credentials. The |value| is constructed the same way as |
| for ReadonlyWhenFilling. |
| </summary> |
| </metric> |
| <metric name="Saving.Prompt.Interaction" enum="PasswordBubbleDismissalReason"> |
| <summary> |
| Records how the user interacted with a saving prompt. |
| </summary> |
| </metric> |
| <metric name="Saving.Prompt.Shown" enum="Boolean"> |
| <summary> |
| Records, for each password form seen by the password manager, whether the |
| user was shown a prompt that asked for permission to save new credentials. |
| In case a store() via the Credential Management API, a virtual password |
| form is created, for which this metric is recorded. |
| </summary> |
| </metric> |
| <metric name="Saving.Prompt.Trigger" enum="PasswordBubbleTrigger"> |
| <summary> |
| Records the trigger of each password save bubble that was shown to the |
| user to ask for permission to save new credentials. |
| </summary> |
| </metric> |
| <metric name="Saving.ShowedManualFallbackForSaving"> |
| <summary> |
| Records if a manual fallback for saving option was shown to the user (on |
| Android this is recorded, even though the UI does not exist at the |
| moment). This is a bit mask. 1 means a prompt was shown, 2 means the |
| prompt was due to a generated password, 4 means the prompt was due to an |
| update. |
| </summary> |
| </metric> |
| <metric name="Submission.Indicator" enum="SubmissionIndicatorEvent"> |
| <summary> |
| Records the event that led the password manager to believe the submission |
| was successful. Metrics is recorded only when the password is saved. |
| </summary> |
| </metric> |
| <metric name="Submission.Observed" enum="Boolean"> |
| <summary> |
| Records whether a submission of a password form has been observered. The |
| values 0 and 1 correspond to false and true respectively. |
| </summary> |
| </metric> |
| <metric name="Submission.SubmissionResult" |
| enum="PasswordFormSubmissionResult"> |
| <summary> |
| Records the outcome of a password form submission. |
| </summary> |
| </metric> |
| <metric name="Submission.SubmittedFormType" enum="PasswordFormType"> |
| <summary> |
| Records the classification of a form at submission time. |
| |
| This is replicated as PasswordManager.SubmittedFormType in UMA. |
| </summary> |
| </metric> |
| <metric name="SuppressedAccount.Generated.HTTPSNotHTTP"> |
| <obsolete> |
| Deprecated 03/2019. |
| </obsolete> |
| <summary> |
| Records, for each password form seen by the password manager, whether |
| there were `suppressed` credentials, meaning stored credentials that were |
| not filled, that were suppressed because they were stored for an HTTPS |
| origin while the password form was seen on an HTTP origin. If there were |
| such credentials, the histogram also records whether the username and |
| password of such suppressed credentials matched those submitted. This |
| recording happens only for credentials that were originally auto-generated |
| (as opposed to user typed). Recorded values correspond to the enum |
| SuppressedAccountExistence. |
| </summary> |
| </metric> |
| <metric name="SuppressedAccount.Generated.PSLMatching"> |
| <obsolete> |
| Deprecated 03/2019. |
| </obsolete> |
| <summary> |
| Records, for each password form seen by the password manager, whether |
| there were `suppressed` credentials, meaning stored credentials that were |
| not filled, that were suppressed because they were for an origin that was |
| only PSL-matching the origin of the observed form (see the suffix |
| description for the possible classes of such near-matches). If there were |
| such credentials, the histogram also records whether the username and |
| password of such suppressed credentials matched those submitted. This |
| recording happens only for credentials that were originally auto-generated |
| (as opposed to user typed). Recorded values correspond to the enum |
| SuppressedAccountExistence. |
| </summary> |
| </metric> |
| <metric name="SuppressedAccount.Generated.SameOrganizationName"> |
| <obsolete> |
| Deprecated 03/2019. |
| </obsolete> |
| <summary> |
| Records, for each password form seen by the password manager, whether |
| there were `suppressed` credentials, meaning stored credentials that were |
| not filled, that were suppressed because they were for an origin that was |
| only matching the visited origin if the TLD is stripped. If there were |
| such credentials, the histogram also records whether the username and |
| password of such suppressed credentials matched those submitted. This |
| recording happens only for credentials that were originally auto-generated |
| (as opposed to user typed). Recorded values correspond to the enum |
| SuppressedAccountExistence. |
| </summary> |
| </metric> |
| <metric name="SuppressedAccount.Manual.HTTPSNotHTTP"> |
| <obsolete> |
| Deprecated 03/2019. |
| </obsolete> |
| <summary> |
| Records, for each password form seen by the password manager, whether |
| there were `suppressed` credentials, meaning stored credentials that were |
| not filled, that were suppressed because they were stored for an HTTPS |
| origin while the password form was seen on an HTTP origin. If there were |
| such credentials, the histogram also records whether the username and |
| password of such suppressed credentials matched those submitted. This |
| recording happens only for credentials that were originally entered by the |
| user (as opposed to auto-generated). Recorded values correspond to the |
| enum SuppressedAccountExistence. |
| </summary> |
| </metric> |
| <metric name="SuppressedAccount.Manual.PSLMatching"> |
| <obsolete> |
| Deprecated 03/2019. |
| </obsolete> |
| <summary> |
| Records, for each password form seen by the password manager, whether |
| there were `suppressed` credentials, meaning stored credentials that were |
| not filled, that were suppressed because they were for an origin that was |
| only PSL-matching the origin of the observed form (see the suffix |
| description for the possible classes of such near-matches). If there were |
| such credentials, the histogram also records whether the username and |
| password of such suppressed credentials matched those submitted. This |
| recording happens only for credentials that were originally entered by the |
| user (as opposed to auto-generated). Recorded values correspond to the |
| enum SuppressedAccountExistence. |
| </summary> |
| </metric> |
| <metric name="SuppressedAccount.Manual.SameOrganizationName"> |
| <obsolete> |
| Deprecated 03/2019. |
| </obsolete> |
| <summary> |
| Records, for each password form seen by the password manager, whether |
| there were `suppressed` credentials, meaning stored credentials that were |
| not filled, that were suppressed because they were for an origin that was |
| only matching the visited origin if the TLD is stripped. If there were |
| such credentials, the histogram also records whether the username and |
| password of such suppressed credentials matched those submitted. This |
| recording happens only for credentials that were originally entered by the |
| user (as opposed to auto-generated). Recorded values correspond to the |
| enum SuppressedAccountExistence. |
| </summary> |
| </metric> |
| <metric name="Updating.Prompt.Interaction" |
| enum="PasswordBubbleDismissalReason"> |
| <summary> |
| Records how the user interacted with an updating prompt. |
| </summary> |
| </metric> |
| <metric name="Updating.Prompt.Shown" enum="Boolean"> |
| <summary> |
| Records, for each password form seen by the password manager, whether the |
| user was shown a prompt that asked for permission to update existing |
| credentials. |
| </summary> |
| </metric> |
| <metric name="Updating.Prompt.Trigger" enum="PasswordBubbleTrigger"> |
| <summary> |
| Records the trigger of each password update bubble that was shown to the |
| user to ask for permission to update existing credentials. |
| </summary> |
| </metric> |
| <metric name="User.Action"> |
| <obsolete> |
| Deprecated. Use new user actions ("User.Action....") instead. |
| </obsolete> |
| <summary> |
| Records what the user does with all UI entry points of the password |
| manager UI, like bubbles, context menus, forms, form fields, etc. in |
| relation to a given form. Recorded values correspond to the enum |
| PasswordFormMetricsRecorder::DetailedUserAction. In contrast to |
| User.ActionSimplified, this metric is intended to be extended over time. |
| </summary> |
| </metric> |
| <metric name="User.Action.CorrectedUsernameInForm"> |
| <summary> |
| Counts how many times the user corrected a username in a password form. |
| This is only populated if events happened. |
| </summary> |
| </metric> |
| <metric name="User.Action.EditedUsernameInBubble"> |
| <summary> |
| Counts how many times the user edited a username in a password save/update |
| bubble. This is only populated if events happened. |
| </summary> |
| </metric> |
| <metric name="User.Action.SelectedDifferentPasswordInBubble"> |
| <summary> |
| Counts how many times the user selected a different password in a |
| save/update bubble. This is only populated if events happened. |
| </summary> |
| </metric> |
| <metric name="User.Action.TriggeredManualFallbackForSaving"> |
| <summary> |
| Counts how many times the user triggered the manual fallback for password |
| saving. This is only populated if events happened. |
| </summary> |
| </metric> |
| <metric name="User.Action.TriggeredManualFallbackForUpdating"> |
| <obsolete> |
| Deprecated. Use TriggeredManualFallbackForSaving instead. |
| </obsolete> |
| <summary> |
| Counts how many times the user triggered the manual fallback for password |
| updating. This is only populated if events happened. |
| </summary> |
| </metric> |
| <metric name="User.ActionSimplified"> |
| <obsolete> |
| Deprecated as of 12/11/2019. |
| </obsolete> |
| <summary> |
| Records what the user does with a form. Recorded values correspond to the |
| enum password_manager::UserAction. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PasswordManager.LeakWarningDialog"> |
| <owner>jkeitel@google.com</owner> |
| <owner>chrome-duplex@google.com</owner> |
| <summary> |
| Metrics related to leak warnings shown on login and password reset. Leak |
| warning dialogs in Chrome aim to inform users about leaked credentials and |
| advise to change them. We collect type of the dialog that is shown and the |
| response of the user to it. |
| </summary> |
| <metric name="PasswordLeakDetectionDialogDismissalReason" |
| enum="PasswordLeakDetectionDialogDismissalReason"> |
| <summary> |
| Records the response to the password leak dialog. |
| </summary> |
| </metric> |
| <metric name="PasswordLeakDetectionDialogType" |
| enum="PasswordLeakDetectionDialogType"> |
| <summary> |
| Records the type of the password leak dialog. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PasswordManager.PasswordChangeFlowDuration"> |
| <owner>kolos@chromium.org</owner> |
| <owner>jkeitel@google.com</owner> |
| <summary> |
| Metrics related to password change flows. Chrome offers users several entry |
| points for password change flows, e.g. from Password Checkup in Settings or |
| on a leak warning dialog during sign in with compromised credentials. We |
| collect the duration of and the success rate of such password change flows. |
| </summary> |
| <metric name="Duration"> |
| <summary> |
| The time that passed during the start of the flow and the end of the flow |
| in seconds. |
| </summary> |
| </metric> |
| <metric name="EndEvent" |
| enum="PasswordManager.PasswordChangeSuccessTracker.EndEvent"> |
| <summary> |
| Records how the flow was ended, e.g. whether it ended with a generated |
| password from a manual flow, a password reset link, etc. |
| </summary> |
| </metric> |
| <metric name="EntryPoint" |
| enum="PasswordManager.PasswordChangeSuccessTracker.EntryPoint"> |
| <summary> |
| Records the entry point of the password change flow, e.g. whether it was |
| from settings or during login. |
| </summary> |
| </metric> |
| <metric name="StartEvent" |
| enum="PasswordManager.PasswordChangeSuccessTracker.StartEvent"> |
| <summary> |
| Records how the flow was started, e.g. whether it was a manual from |
| settings, a manual flow will a well-known/.change-password URL, etc. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PasswordManager.PasswordChangeTriggered"> |
| <owner>brunobraga@google.com</owner> |
| <owner>chrome-duplex@google.com</owner> |
| <summary> |
| Metrics related to password change. The Password Checkup in Chrome Settings |
| aims to help users find their leaked passwords. After getting list of |
| compromised passwords, user can trigger password change. |
| </summary> |
| <metric name="PasswordChangeType" enum="PasswordChangeType"> |
| <summary> |
| Records what type of password change the user triggers. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PasswordManager.PasswordFillingIOS"> |
| <owner>theocristea@google.com</owner> |
| <owner>kazinova@google.com</owner> |
| <owner>vsemeniuk@google.com</owner> |
| <summary> |
| Records password filling for IOS. The metric records whether the password |
| filling is successful upon suggestion click. |
| </summary> |
| <metric name="FillingSuccess" enum="BooleanSuccess"> |
| <summary> |
| A boolean indicating success or failure. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PasswordManager.WellKnownChangePasswordResult"> |
| <owner>kazinova@google.com</owner> |
| <owner>vasilii@chromium.org</owner> |
| <summary> |
| Metrics related to the usage and support of .well-known/change-password. The |
| .well-known/change-password standard is defined to redirect to the sites |
| change password form. We collect whether a site supports the standard or |
| not. https://wicg.github.io/change-password-url/ |
| </summary> |
| <metric name="WellKnownChangePasswordResult" |
| enum="WellKnownChangePasswordResult"> |
| <summary> |
| Records if a site supports .well-known/change-password and if a url |
| override was used or not. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="PaymentApp.CheckoutEvents"> |
| <owner>rouslan@chromium.org</owner> |
| <owner>web-payments-team@google.com</owner> |
| <summary> |
| Records checkout events as well as completion status for the invoked payment |
| app when its origin is shown inside the payment handler modal window. This |
| metric uses the specific PAYMENT_APP_ID ukm_source_id which is generated |
| from the app's origin. |
| </summary> |
| <metric name="CompletionStatus" enum="PaymentRequestFlowCompletionStatus"> |
| <summary> |
| How the Payment Request ended. This metric will only get recorded if a |
| non-autofill payment app gets invoked to handle the request. |
| </summary> |
| </metric> |
| <metric name="Events"> |
| <summary> |
| Bitfield representing the events that occurred during the Payment Request. |
| This metric will only get recorded if a non-autofill payment app gets |
| invoked to handle the request. Values defined in the Event enum of |
| components/payments/core/journey_logger.h. |
| </summary> |
| </metric> |
| <metric name="Events2"> |
| <summary> |
| The 2.0 version of Events. Bitfield representing the events that occurred |
| during the Payment Request. This metric will only get recorded if a |
| non-autofill payment app gets invoked to handle the request. Values |
| defined in the Event2 enum of components/payments/core/journey_logger.h. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PaymentRequest.CheckoutEvents"> |
| <owner>rouslan@chromium.org</owner> |
| <owner>web-payments-team@google.com</owner> |
| <metric name="CompletionStatus"> |
| <summary> |
| How the Payment Request ended. Values defined in the CompletionStatus enum |
| of components/payments/core/journey_logger.h. |
| </summary> |
| </metric> |
| <metric name="Events"> |
| <summary> |
| Bitfield representing the events that occurred during the Payment Request. |
| Values defined in the Event enum of |
| components/payments/core/journey_logger.h. |
| </summary> |
| </metric> |
| <metric name="Events2"> |
| <summary> |
| The 2.0 version of Events. Bitfield representing the events that occurred |
| during the Payment Request. Values defined in the Event2 enum of |
| components/payments/core/journey_logger.h. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PaymentRequest.TransactionAmount"> |
| <owner>rouslan@chromium.org</owner> |
| <owner>web-payments-team@google.com</owner> |
| <metric name="Category"> |
| <summary> |
| Tranaction size can be zero, micro, or regular. Values defined in the |
| TransactionSize enum of components/payments/core/journey_logger.h. |
| </summary> |
| </metric> |
| <metric name="CompletionStatus" enum="Boolean"> |
| <summary> |
| Whether the transaction has been triggered or completed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Pepper.Broker" singular="True"> |
| <owner>raymes@chromium.org</owner> |
| <summary> |
| Event recorded when a flash instance connects to the broker, resulting in a |
| channel being opened to the broker process. |
| </summary> |
| </event> |
| |
| <event name="PerfectHeuristics" singular="True"> |
| <obsolete> |
| Implementation for these experiments were removed in M94. |
| </obsolete> |
| <owner>dom@chromium.org</owner> |
| <owner>chrome-loading@google.com</owner> |
| <summary> |
| Metrics recorded for the various Perfect Heuristics experiments being run. |
| </summary> |
| <metric name="delay_async_script_execution_before_finished_parsing" |
| enum="Boolean"> |
| <summary> |
| Set to 1 when blink::ScriptRunner sees an async script before the |
| associated document has finished parsing. |
| </summary> |
| </metric> |
| <metric name="DelayCompetingLowPriorityRequests" enum="Boolean"> |
| <summary> |
| Set to 1 when blink::ResourceLoadScheduler delays competing low priority |
| requests. See https://crbug.com/1112515 for details. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PerformanceAPI.LongAnimationFrame"> |
| <owner>nrosenthal@chromium.org</owner> |
| <summary> |
| This event is associated with the LongAnimationFrame Web Platform API. The |
| metrics are recorded when a long animation frame is detected and reported to |
| the page. For more details see https://crbug.com/1392685. |
| </summary> |
| <metric name="DidPause" enum="Boolean"> |
| <summary> |
| True if there was a pause (sync XHR, dialog) during the long frame. |
| </summary> |
| </metric> |
| <metric name="Duration.DelayDefer"> |
| <summary> |
| A positive or negative duration in milliseconds, representing the time |
| between the desired time for rendering the frame and rendering it in |
| practice. Positive means delayed, negative means deferred. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.EffectiveBlocking"> |
| <summary> |
| The duration in milliseconds, representing the time the LoAF was blocking. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.LongScript.JSCompilation"> |
| <summary> |
| The total duration of long-script JS compilation, in milliseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.LongScript.JSExecution"> |
| <summary> |
| The total duration of long-script JS execution, not including compilation, |
| in milliseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.LongScript.JSExecution.EventListeners"> |
| <summary> |
| The total duration spent in event listeners (e.g. onclick). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.LongScript.JSExecution.PromiseHandlers"> |
| <summary> |
| The total duration spent in promise resolve/reject tasks. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.LongScript.JSExecution.ScriptBlocks"> |
| <summary> |
| The total duration spent in script blocks (script element, import) |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.LongScript.JSExecution.UserCallbacks"> |
| <summary> |
| The total duration spent in user callbacks (e.g. requestAnimationFrame). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.StyleAndLayout.Forced"> |
| <summary> |
| The total duration of forced style and layout in long scripts. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.StyleAndLayout.RenderPhase"> |
| <summary> |
| The total duration of the style and layout lifecycle phase, not including |
| forced style and layout. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.Total"> |
| <summary> |
| The duration of the long animation frame in milliseconds. Mirrors the |
| value reported in PerformanceEntry.duration. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="PerformanceAPI.LongTask"> |
| <owner>hpayer@chromium.org</owner> |
| <owner>mlippautz@chromium.org</owner> |
| <owner>ulan@chromium.org</owner> |
| <summary> |
| This event is associated with the LongTask Web Platform API. The metrics are |
| recorded when a long task is detected and reported to the page. For more |
| details see the design doc linked in https://crbug.com/1173527. |
| </summary> |
| <metric name="Duration"> |
| <summary> |
| The duration of the long task in microseconds. Mirrors the value reported |
| in PerformanceEntry.duration. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.V8.Execute"> |
| <summary> |
| The total time in microseconds that is V8 spent in main-thread V8, |
| including JS-time, but without time spent in callbacks to blink. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.V8.GC"> |
| <summary> |
| The total time in microseconds that V8 spent collecting garbage within the |
| long task. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.V8.GC.Full.Atomic"> |
| <summary> |
| The total time in microseconds that V8 spent in the atomic pause of the |
| full garbage collector within the long task. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.V8.GC.Full.Incremental"> |
| <summary> |
| The total time in microseconds that V8 spent in the incremental pause of |
| the full garbage collector within the long task. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Duration.V8.GC.Young"> |
| <summary> |
| The total time in microseconds that V8 spent in the young garbage |
| collector within the long task. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="StartTime"> |
| <summary> |
| The duration in millseconds between the document navigation start and the |
| long task start. Mirrors the value reported in PerformanceEntry.startTime. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="PerformanceAPI.Memory"> |
| <owner>hpayer@chromium.org</owner> |
| <owner>mlippautz@chromium.org</owner> |
| <owner>ulan@chromium.org</owner> |
| <summary> |
| This event is associated with the performance.measureUserAgentSpecificMemory |
| API. The metrics are recorded when the memory measurement is reported to the |
| page. All values represent memory consumption in KB. |
| </summary> |
| <metric name="Dom"> |
| <summary> |
| The total DOM memory measured in KB. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="JavaScript"> |
| <summary> |
| The total JavaScript memory measured in KB. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="JavaScript.DedicatedWorker"> |
| <summary> |
| The total JavaScript memory in the DedicatedWorker scope measured in KB. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Shared"> |
| <summary> |
| The total shared memory measured in KB. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="PerformanceAPI.Memory.Legacy"> |
| <owner>hpayer@chromium.org</owner> |
| <owner>mlippautz@chromium.org</owner> |
| <owner>ulan@chromium.org</owner> |
| <summary> |
| This event is associated with the performance.memory API. The metrics are |
| recorded when the memory measurement is reported to the page. All values |
| represent memory consumption in KB. |
| </summary> |
| <metric name="JavaScript"> |
| <summary> |
| The JavaScript memory (usedJSHeapSize) measured in KB. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="PerformanceManager.PageResourceUsage"> |
| <owner>anthonyvd@chromium.org</owner> |
| <owner>joenotcharles@google.com</owner> |
| <summary> |
| Metrics detailing the estimated resources used by pages. The resources of a |
| renderer process are allocated to all pages hosted in that process using the |
| algorithm in performance_manager::ProcessMetricsDecorator. An event is |
| collected for each open page every 5 minutes. |
| </summary> |
| <metric name="PrivateFootprintEstimate"> |
| <summary> |
| The estimated private footprint of the page, in kilobytes. |
| </summary> |
| </metric> |
| <metric name="ResidentSetSizeEstimate"> |
| <summary> |
| The estimated resident set size of the page, in kilobytes. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PerformanceManager.PageTimelineState"> |
| <owner>anthonyvd@chromium.org</owner> |
| <owner>spvw@chromium.org</owner> |
| <summary> |
| Metrics detailing the lifecycle state of tabs over the course of the |
| execution of the browser. One slice is collected on a heartbeat every approx |
| 100 minutes on average (but dependent on PRNG). A slice is a collection of |
| PageTimelineState UKM events. One PageTimelineState is recorded for each |
| browser tab when a slice is collected. |
| </summary> |
| <metric name="BatterySaverMode" enum="Boolean"> |
| <summary> |
| True if Batter Saver Mode is enabled at the time this event is recorded. |
| </summary> |
| </metric> |
| <metric name="ChangedFaviconOrTitleInBackground" enum="Boolean"> |
| <summary> |
| True if this page has been observed to change its favicon or title when in |
| the background. |
| </summary> |
| </metric> |
| <metric name="CurrentState" enum="PageState"> |
| <summary> |
| The state the tab was in when the slice was recorded. |
| </summary> |
| </metric> |
| <metric name="HasNotificationPermission" enum="Boolean"> |
| <summary> |
| True if this page has been granted the notification permission. |
| </summary> |
| </metric> |
| <metric name="HighEfficiencyMode" enum="Boolean"> |
| <summary> |
| True if High Efficiency Mode is enabled at the time this event is |
| recorded. |
| </summary> |
| </metric> |
| <metric name="IsActiveTab" enum="Boolean"> |
| <summary> |
| True if this page is the active tab in its tab strip. |
| </summary> |
| </metric> |
| <metric name="IsCapturingMedia" enum="Boolean"> |
| <summary> |
| True if this page is capturing media (audio/video/screen). |
| </summary> |
| </metric> |
| <metric name="IsConnectedToDevice" enum="Boolean"> |
| <summary> |
| True if this page is connected to a BT or USB device. |
| </summary> |
| </metric> |
| <metric name="IsPlayingAudio" enum="Boolean"> |
| <summary> |
| True if this page is playing audio. |
| </summary> |
| </metric> |
| <metric name="PrivateFootprint"> |
| <summary> |
| The total memory footprint of this page at the moment the sample was |
| recorded, in kilobytes. |
| </summary> |
| </metric> |
| <metric name="ResidentSetSize"> |
| <summary> |
| The total resident set size of this page at the moment the sample was |
| recorded, in kilobytes. |
| </summary> |
| </metric> |
| <metric name="SliceId"> |
| <summary> |
| A strictly increasing ID used to order slices in relation to each other. |
| This is not zero for the first slice, but rather is a randomly chosen |
| number to make it more difficult to derive exact browser uptime. |
| |
| A "slice" is a collection of PageTimelineStates recorded at the |
| same time. |
| </summary> |
| </metric> |
| <metric name="TabId"> |
| <summary> |
| A monotonically increasing generated id assigned to a tab, enabling |
| analysis of a tab's lifecycle across several slices. This is necessary |
| because a URL isn't sufficient to identify a tab: multiple tabs can be |
| open for the same URL, and a tab containing foo.com and be closed, with |
| another re-opened between two slice snapshots. |
| </summary> |
| </metric> |
| <metric name="TimeInCurrentState"> |
| <summary> |
| The time in milliseconds spent in the current state. Exponentially |
| bucketed. |
| </summary> |
| </metric> |
| <metric name="TimeSinceCreation"> |
| <summary> |
| Time in milliseconds since this tab was created. Exponentially bucketed. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastSlice"> |
| <summary> |
| The time in milliseconds since the last slice was recorded. Exponentially |
| bucketed. |
| </summary> |
| </metric> |
| <metric name="TotalForegroundTime"> |
| <summary> |
| Cumulative time in milliseconds spent in foreground by this tab since its |
| creation. Exponentially bucketed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PeriodicBackgroundSyncEventCompleted"> |
| <owner>nator@chromium.org</owner> |
| <owner>rayankans@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| A website can register to periodically update itself in the background using |
| a service worker. Updates can be done in response to the periodicsync event. |
| Logged when a periodicsync event completes and returns a status. We collect |
| information about retries of this event. |
| </summary> |
| <metric name="MaxAttempts"> |
| <summary> |
| Integer value of the maximum number of allowed retries. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="NumAttempts"> |
| <summary> |
| Integer value of the number of retries / sync events dispatched. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Status" enum="ServiceWorkerEventStatus"> |
| <summary> |
| The enum value of the completion status, defined in |
| blink::ServiceWorkerStatusCode. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PeriodicBackgroundSyncRegistered"> |
| <owner>nator@chromium.org</owner> |
| <owner>rayankans@chromium.org</owner> |
| <owner>peter@chromium.org</owner> |
| <summary> |
| A website can register to periodically update itself in the background using |
| a service worker. Updates can be done in response to the periodicsync event |
| after a periodic Background Sync registration has been created. Logged when |
| a periodic Background Sync registration is created. We collect information |
| about this registration request. |
| </summary> |
| <metric name="IsReregistered" enum="Boolean"> |
| <summary> |
| Boolean for whether a registration with this tag has already been created. |
| </summary> |
| </metric> |
| <metric name="MinIntervalMs"> |
| <summary> |
| Integer value of the minimum interval, in milliseconds, of periodicsync |
| events requested by the origin for this registration. This number is |
| exponentially bucketed and uses the UKM GetExponentialBucketMin method |
| with a value of 2.0 for spacing. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Permission"> |
| <owner>timloh@chromium.org</owner> |
| <summary> |
| Metrics for a user's permission actions, logged when a permission prompt is |
| resolved or when a permission is revoked. Grouped (microphone+camera) |
| permission prompts are reported separately. |
| </summary> |
| <metric name="Action"> |
| <summary> |
| An enum of type PermissionAction. One of GRANTED, DENIED, DISMISSED or |
| IGNORED. |
| </summary> |
| </metric> |
| <metric name="Gesture"> |
| <summary> |
| An enum of type PermissionRequestGestureType, whether the prompt was |
| initiated by a user gesture. |
| </summary> |
| </metric> |
| <metric name="PermissionAutoRevocationHistory" |
| enum="PermissionAutoRevocationHistory"> |
| <summary> |
| An enum of type PermissionAutoRevocationHistory, representing whether the |
| permission has been automatically revoked in the past at least once. |
| </summary> |
| </metric> |
| <metric name="PermissionType"> |
| <summary> |
| An enum of type ContentSettingsType. |
| </summary> |
| </metric> |
| <metric name="PredictionsApiResponse.GrantLikelihood" |
| enum="PredictionGrantLikelihood"> |
| <summary> |
| An enum of type PermissionUmaUtil::PredictionGrantLikelihood describing |
| the likelihood returned by the Web Permission Predictions Service, if the |
| service was successfully queried. |
| </summary> |
| </metric> |
| <metric name="PredictionsApiResponse.Heldback" enum="Boolean"> |
| <summary> |
| A boolean that records whether the response by the permissions prediction |
| service was held back. |
| </summary> |
| </metric> |
| <metric name="PriorDismissals"> |
| <summary> |
| The number of dismissed prompts for the given (origin, permission) pair, |
| capped at 10 dismissals. |
| </summary> |
| </metric> |
| <metric name="PriorIgnores"> |
| <summary> |
| The number of ignored prompts for the given (origin, permission) pair, |
| capped at 10 ignores. |
| </summary> |
| </metric> |
| <metric name="PromptDisposition"> |
| <summary> |
| An enum of type PermissionPromptDisposition. The UI used to display a |
| permission prompt, if any. |
| </summary> |
| </metric> |
| <metric name="PromptDispositionReason" |
| enum="PermissionPromptDispositionReason"> |
| <summary> |
| An enum of type PermissionPromptDispositionReason. The reason why the |
| particular prompt disposition was used, if any. |
| </summary> |
| </metric> |
| <metric name="SatisfiedAdaptiveTriggers"> |
| <summary> |
| A bitmask consisting of flags defined in enum type AdaptiveTriggers. A bit |
| is set if the corresponding adaptive triggering condition has been |
| satisfied at least once in the past for the user. This metric is not |
| recorded for users who don't have the activation dry run enabled. |
| </summary> |
| </metric> |
| <metric name="Source"> |
| <summary> |
| An enum of type PermissionSourceUI. The UI surface for this action. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPrompts.Count"> |
| <summary> |
| Total number of prompts shown to the user in the last 28 days. The count |
| is bucketed. The bucket minimums being 20, 15, 12, 10, 9, 8, 7, 6, 5, 4 |
| and 0. The correct bucket is the first one that is smaller or equal to the |
| prompt count. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPrompts.DenyRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user deny. |
| Aggregated across all origins, all PermissionTypes and all |
| PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPrompts.DismissRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user dismiss. |
| Aggregated across all origins, all PermissionTypes and all |
| PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPrompts.GrantRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user grant. |
| Aggregated across all origins, all PermissionTypes and all |
| PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPrompts.IgnoreRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user ignore. |
| Aggregated across all origins, all PermissionTypes and all |
| PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPromptsOfType.Count"> |
| <summary> |
| Total number of prompts shown to the user in the last 28 days for the |
| currently requested permission type. The count is bucketed. The bucket |
| minimums being 20, 15, 12, 10, 9, 8, 7, 6, 5, 4 and 0. The correct bucket |
| is the first one that is smaller or equal to the prompt count. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPromptsOfType.DenyRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user deny. |
| Aggregated across all origins, the current requested PermissionType and |
| all PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPromptsOfType.DismissRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user dismiss. |
| Aggregated across all origins, the current requested PermissionType and |
| all PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPromptsOfType.GrantRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user grant. |
| Aggregated across all origins, the current requested PermissionType and |
| all PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.AllPromptsOfType.IgnoreRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user ignore. |
| Aggregated across all origins, the current requested PermissionType and |
| all PromptDisposition. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPrompts.Count"> |
| <summary> |
| Total number of loud UI prompts shown to the user in the last 28 days. The |
| count is bucketed. The bucket minimums being 20, 15, 12, 10, 9, 8, 7, 6, 5 |
| ,4 and 0. The correct bucket is the first one that is smaller or equal to |
| the prompt count. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPrompts.DenyRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user deny. |
| Aggregated across all origins, all PermissionTypes and loud UI |
| PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPrompts.DismissRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user dismiss. |
| Aggregated across all origins, all PermissionTypes and loud UI |
| PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPrompts.GrantRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user grant. |
| Aggregated across all origins, all PermissionTypes and loud UI |
| PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPrompts.IgnoreRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user ignore. |
| Aggregated across all origins, all PermissionTypes and loud UI |
| PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPromptsOfType.Count"> |
| <summary> |
| Total number of loud UI prompts shown to the user in the last 28 days for |
| the currently requested permission type. The count is bucketed. The bucket |
| minimums being 20, 15, 12, 10, 9, 8, 7, 6, 5, 4 and 0. The correct bucket |
| is the first one that is smaller or equal to the prompt count. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPromptsOfType.DenyRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user deny. |
| Aggregated across all origins, currently requested PermissionType and loud |
| UI PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPromptsOfType.DismissRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user dismiss. |
| Aggregated across all origins, currently requested PermissionType and loud |
| UI PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPromptsOfType.GrantRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user grant. |
| Aggregated across all origins, currently requested PermissionType and loud |
| UI PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="Stats.LoudPromptsOfType.IgnoreRate"> |
| <summary> |
| What percentage of prompts from the last 28 days did the user ignore. |
| Aggregated across all origins, currently requested PermissionType and loud |
| UI PromptDispositions only. Rounded to the nearest 10%. |
| </summary> |
| </metric> |
| <metric name="TimeToDecision"> |
| <summary> |
| Time (in milliseconds) taken by the user to make a decision on a |
| permission prompt after it was displayed, if at all. Ignoring a prompt |
| doesn't count as a decision. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PermissionUsage"> |
| <owner>engedy@chromium.org</owner> |
| <owner>ravjit@chromium.org</owner> |
| <owner>permissions-dev@chromium.org</owner> |
| <summary> |
| Metrics for usage of capabilities gated behind permission prompts. One event |
| is recorded per permission type for each page load that uses that permission |
| type. |
| </summary> |
| <metric name="PermissionType"> |
| <summary> |
| An enum of type ContentSettingsType. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Plugins.FlashInstance"> |
| <owner>tommycli@chromium.org</owner> |
| <summary> |
| Recorded when a Flash object instance is created. |
| </summary> |
| </event> |
| |
| <event name="Popup.Closed"> |
| <owner>csharrison@chromium.org</owner> |
| <owner>jkarlin@chromium.org</owner> |
| <summary> |
| A popup window was closed. |
| </summary> |
| <metric name="EngagementTime"> |
| <summary> |
| The time (in ms, rounded down to the nearest power of 2) a popup |
| WebContents is visible / foregrounded, until it is closed. Keyed by the |
| popup opener's URL (not the URL of the popup). |
| </summary> |
| </metric> |
| <metric name="NumActivationInteractions"> |
| <summary> |
| Integer value representing how many mouse down, touch start user, or raw |
| key down interactions the popup had. This is capped at 50. |
| </summary> |
| </metric> |
| <metric name="NumGestureScrollBeginInteractions"> |
| <summary> |
| Integer value representing how many gesture scroll begin user interactions |
| the popup had. This is capped at 50. |
| </summary> |
| </metric> |
| <metric name="NumInteractions"> |
| <summary> |
| Integer value representing how many user interactions the popup had. This |
| is capped at 100. See IsUserInteractionInputType in web_contents_impl for |
| what an interaction is. Currently it is a mouse, scroll begin, touch |
| start, or raw key down event. |
| </summary> |
| </metric> |
| <metric name="RedirectCount"> |
| <summary> |
| The number of redirects taken by the pop-up's initial navigation. This |
| does not include javascript navigations initiated by the opening document |
| for the pop-up. |
| </summary> |
| </metric> |
| <metric name="SafeBrowsingStatus" enum="PopupSafeBrowsingStatus"> |
| <summary> |
| The site's safe browsing status if the pop-up's navigation commits. |
| </summary> |
| </metric> |
| <metric name="Trusted"> |
| <summary> |
| Boolean value representing whether the popup was opened via some trusted |
| event (e.g. context menu, ctrl-click, etc). |
| </summary> |
| </metric> |
| <metric name="UserInitiatedClose"> |
| <summary> |
| Boolean value to represent whether the popup was closed by user gesture. |
| </summary> |
| </metric> |
| <metric name="WindowOpenDisposition" enum="WindowOpenDisposition"> |
| <summary> |
| The UI window open disposition used when creating the web contents of the |
| pop-up. Set by the browser process when the pop up tracker is created. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Popup.Page" singular="True"> |
| <owner>justinmiron@google.com</owner> |
| <summary> |
| Page level pop-up statistics. |
| </summary> |
| <metric name="Allowed" enum="Boolean"> |
| <summary> |
| Whether a user has, explicitly, allowed all popups on the last committed |
| url of a page. The user's site level popup content setting is queried when |
| a page that opened a popup is destroyed. Only emitted when at least one |
| popup has been opened and the last committed page url is valid. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Portal.Activate"> |
| <owner>lfg@chromium.org</owner> |
| <summary> |
| A portal was activated. A portal activation enables a seamless transition |
| between different pages. See the portals explainer for more details: |
| https://github.com/WICG/portals/blob/master/README.md. |
| </summary> |
| <metric name="PaintTiming.PortalActivationToFirstPaint"> |
| <summary> |
| When this page load happened inside a Portal, this metrics records the |
| time in milliseconds between the portal activation and the first paint |
| after activation. |
| </summary> |
| </metric> |
| <metric name="PortalActivation"> |
| <summary> |
| Measures the time between LCP and the portal activation. Uses exponential |
| bucketing with a spacing of 2, with the units in milliseconds. |
| </summary> |
| </metric> |
| <metric name="PortalActivationBeforeLCP" enum="Boolean"> |
| <summary> |
| Indicates whether the portal activation happened before or after the |
| largest contentful paint. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PostMessage.Incoming.FirstPartyToFirstParty.DifferentBucket"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A top level frame received an incoming postMessage event from another top |
| level frame with a different storage key and a different origin. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PostMessage.Incoming.FirstPartyToFirstParty.SameBucket"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A top level frame received an incoming postMessage event from another top |
| level frame with the same storage key. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="PostMessage.Incoming.FirstPartyToThirdParty.DifferentBucket.DifferentOrigin"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A child frame received an incoming postMessage event from a top level frame |
| with a different storage key and a different origin. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="PostMessage.Incoming.FirstPartyToThirdParty.DifferentBucket.SameOrigin"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A child frame received an incoming postMessage event from a top level frame |
| with a different storage key and the same origin. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PostMessage.Incoming.Frame"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| The frame received an incoming postMessage event. This is recorded only for |
| postMessage events sent between frames in the same renderer process. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PostMessage.Incoming.Opaque"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A frame received an incoming postMessage event from another frame where |
| either of their origins or top level origins are opaque. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PostMessage.Incoming.Page"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A frame on the page received an incoming postMessage event. This is recorded |
| only for postMessage events sent between frames in different renderer |
| processes. |
| </summary> |
| <metric name="SourcePageSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source page, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="PostMessage.Incoming.ThirdPartyToFirstParty.DifferentBucket.DifferentOrigin"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A top level frame received an incoming postMessage event from a child frame |
| with a different storage key and a different origin. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="PostMessage.Incoming.ThirdPartyToFirstParty.DifferentBucket.SameOrigin"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A top level frame received an incoming postMessage event from a child frame |
| with a different storage key and the same origin. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="PostMessage.Incoming.ThirdPartyToThirdParty.DifferentBucket.DifferentOrigin"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A child frame received an incoming postMessage event from another child |
| frame with a different storage key and a different origin. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="PostMessage.Incoming.ThirdPartyToThirdParty.DifferentBucket.SameOrigin"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A child frame received an incoming postMessage event from another child |
| frame with a different storage key and the same origin. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PostMessage.Incoming.ThirdPartyToThirdParty.SameBucket"> |
| <owner>arichiv@chromium.org</owner> |
| <owner>miketaylr@chromium.org</owner> |
| <summary> |
| A child frame received an incoming postMessage event from another child |
| frame with the same storage key. |
| </summary> |
| <metric name="SourceFrameSourceId"> |
| <summary> |
| The UKM source ID of the postMessage event's source frame, as an integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PowerUsageScenariosIntervalData"> |
| <owner>fdoray@chromium.org</owner> |
| <owner>sebmarchand@chromium.org</owner> |
| <owner>chrome-catan@google.com</owner> |
| <summary> |
| Metrics to measure power consumption in key usage scenarios, as well as the |
| time spent in each scenario. These metrics are reported for a fixed interval |
| of time, the duration of this interval is recorded in the |
| IntervalDurationSeconds metric. |
| |
| The events aren't tied to a specific URL, a timer independent of any load |
| event runs in Chrome and report these events at regular intervals. All the |
| metrics associated to this event are for the last interval. The URL attached |
| to the event is the one that has been visible for the longest time during |
| the interval, the exact visibility duration for this URL during the interval |
| is reported in the URLVisibilityTimeSeconds metric. |
| |
| e.g., at T-0 an interval ends and this event is emitted, a new interval then |
| starts. During the interval the users spends 75% of his time watching a |
| fullscreen video on https://foo.com with 10 tabs opened in background. Just |
| before the end of the interval the user closes all the tabs but one. An |
| event will be emitted for https://foo.com at T+X with the following metrics: |
| IntervalDurationSeconds: X in seconds; URLVisibilityTimeSeconds: 0.75 * X in |
| seconds; FullscreenVideoSingleMonitorSeconds: 0.75 * X in seconds; |
| MaxTabCount: 10; TabClosed: 9; ... (not all metrics are listed here because |
| it'd be too long, but in practice all the metrics are reported for each |
| interval). |
| |
| This is reported on Mac and Windows. See go/chrome_power_use_per_scenario |
| for more details. |
| </summary> |
| <metric name="BatteryDischargeMode" enum="BatteryDischargeMode"> |
| <summary> |
| Battery discharge mode describing whether BatteryDischargeRate could be |
| reported or not, and why. Recorded as enum BatteryDischargeMode in |
| //tools/metrics/histograms/enums.xml. |
| </summary> |
| </metric> |
| <metric name="BatteryDischargeRate"> |
| <summary> |
| Battery discharge rate per minute, with 1/10000 of full charge resolution, |
| example: - Battery capacity = 4000 mAh; - Battery charge at the beginning |
| of the interval: 3900 mAh; - Battery charge at the end of the interval: |
| 3700 mAh; - Discharge proportion: (3900-3700) / 4000 = 0.05 - Reported |
| value: 500. |
| </summary> |
| </metric> |
| <metric name="BrowserShuttingDown" enum="Boolean"> |
| <summary> |
| Indicates if the browser is shutting down when this event is reported. |
| </summary> |
| </metric> |
| <metric name="CPUTimeMs"> |
| <summary> |
| The CPU time spent executing code, across all Chrome processes in the |
| interval. This can exceed 100% in multi-thread processes running on |
| multi-core systems. |
| </summary> |
| </metric> |
| <metric name="DeviceSleptDuringInterval" enum="Boolean"> |
| <summary> |
| Whether or not the device has been sleeping at any point during the |
| interval. |
| </summary> |
| </metric> |
| <metric name="EnergyImpactScore"> |
| <summary> |
| Sum of the energy impact score for all Chrome processes (Mac-only). |
| </summary> |
| </metric> |
| <metric name="FullscreenVideoSingleMonitorSeconds"> |
| <summary> |
| Time spent playing video in fullscreen, single-monitor. In seconds. This |
| includes video for any tabs during the interval. |
| </summary> |
| </metric> |
| <metric name="IdleWakeUps"> |
| <summary> |
| Sum of idle-wakeups for all Chrome processes (Mac-only). |
| </summary> |
| </metric> |
| <metric name="IntervalDurationSeconds"> |
| <summary> |
| The interval duration, in seconds. |
| </summary> |
| </metric> |
| <metric name="MainScreenBrightnessPercent"> |
| <obsolete> |
| Removed 02/2022 because it's not actively used. |
| </obsolete> |
| <summary> |
| The brightness of the main screen in percent or -1 if not available. |
| Samples have a 20% granularity, e.g. 65% will report as 60%. |
| </summary> |
| </metric> |
| <metric name="MaxTabCount"> |
| <summary> |
| The maximum number of tabs that existed at the same time during the |
| interval. |
| </summary> |
| </metric> |
| <metric name="MaxVisibleWindowCount"> |
| <summary> |
| The maximum number of windows that have been visible at the same time. |
| </summary> |
| </metric> |
| <metric name="OriginVisibilityTimeSeconds"> |
| <summary> |
| The visibility time for the origin of the URL associated with this event, |
| in seconds. This can differ from URLVisibilityTimeSeconds if there's |
| multiple tabs loaded with the same URL that are visible during the |
| interval. E.g. if there's one tab loaded with foo.com/a visible for 1 |
| second during the interval and one loaded with foo.com/b visible for 2 |
| seconds the report will have URLVisibilityTimeSeconds = 2 seconds and |
| OriginVisibilityTimeSeconds = 3 seconds. This can also exceed the interval |
| duration (e.g. 2 visibles tab with loaded the same origin during the |
| entire interval). |
| </summary> |
| </metric> |
| <metric name="PackageExits"> |
| <summary> |
| Sum of package exits from all Chrome processes (Mac-only). |
| </summary> |
| </metric> |
| <metric name="PlayingAudioSeconds"> |
| <summary> |
| The time spent playing audio in at least one tab, in seconds. |
| </summary> |
| </metric> |
| <metric name="TabClosed"> |
| <summary> |
| The number of tabs that have been closed during the interval. |
| </summary> |
| </metric> |
| <metric name="TimePlayingVideoInVisibleTab"> |
| <summary> |
| The time spent playing video in at least one visible tab, in seconds. |
| </summary> |
| </metric> |
| <metric name="TimeSinceInteractionWithBrowserSeconds"> |
| <summary> |
| The time since the last interaction with the browser when this event gets |
| recorded, in seconds. |
| </summary> |
| </metric> |
| <metric name="TimeSinceInteractionWithSystemSeconds"> |
| <summary> |
| The time since the last interaction with the system when this event gets |
| recorded, in seconds. |
| </summary> |
| </metric> |
| <metric name="TimeWithOpenWebRTCConnectionSeconds"> |
| <summary> |
| The time spent with at least one opened WebRTC connection, in seconds. |
| </summary> |
| </metric> |
| <metric name="TopLevelNavigationEvents"> |
| <summary> |
| Number of main frame different-document navigations. |
| </summary> |
| </metric> |
| <metric name="UptimeSeconds"> |
| <summary> |
| Elapsed time since Chrome has started, in seconds. |
| </summary> |
| </metric> |
| <metric name="URLVisibilityTimeSeconds"> |
| <summary> |
| The visibility time for the URL associated with this event, in seconds. |
| </summary> |
| </metric> |
| <metric name="UserInteractionCount"> |
| <summary> |
| Number of user interaction (scroll, click or typing) during the interval. |
| </summary> |
| </metric> |
| <metric name="VideoCaptureSeconds"> |
| <summary> |
| The time spent capturing video in at least one tab, in seconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PrefetchProxy" singular="True"> |
| <owner>curranmax@chromium.org</owner> |
| <owner>ryansturm@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <summary> |
| Metrics related to the privacy-preserving prefetch proxy. |
| </summary> |
| <metric name="count_css_js_loaded_cache_before_fcp"> |
| <obsolete> |
| Deprecated March 2022. |
| </obsolete> |
| <summary> |
| The number of CSS or JS files that were loaded from the cache before first |
| contentful paint, with a maximum of 10. Always set when this event is |
| recorded. |
| </summary> |
| </metric> |
| <metric name="count_css_js_loaded_network_before_fcp"> |
| <obsolete> |
| Deprecated March 2022. |
| </obsolete> |
| <summary> |
| The number of CSS or JS files that were loaded from the network before |
| FCP, with a maximum of 10. Always set when this event is recorded. |
| </summary> |
| </metric> |
| <metric name="days_since_last_visit_to_origin"> |
| <summary> |
| The number of days since the user has last visited any page on this |
| origin, either during a redirect or a committed page. Records -1 if the |
| origin has never been visited before. Metrics for origins that have been |
| visited before are capped at 180 then exponentially bucketed into 10 |
| buckets with values (1,2,3,5,9,15,25,42,70,119). Only set when a query |
| result was received from the history service before event recording. |
| </summary> |
| </metric> |
| <metric name="mainpage_request_had_cookies" enum="Boolean"> |
| <obsolete> |
| Replaced by PageLoad.MainFrameResource.RequestHadCookies in M92. |
| </obsolete> |
| <summary> |
| A boolean indicating if any mainpage request in the redirect chain or |
| committed request had cookies set on it. Only set when a query result was |
| received from the cookie manager before event recording. |
| </summary> |
| </metric> |
| <metric name="ordered_eligible_pages_bitmask"> |
| <obsolete> |
| Deprecated March 2022. |
| </obsolete> |
| <summary> |
| Which links on the Google Search Page were eligible to be prefetched where |
| the Nth-LSB is set if the Nth page is eligible. |
| </summary> |
| </metric> |
| <metric name="prefetch_attempted_count"> |
| <summary> |
| The number of pages on the Google Search Result Page that were attempted |
| to be prefetched. |
| </summary> |
| </metric> |
| <metric name="prefetch_eligible_count"> |
| <summary> |
| The number of pages on the Google Search Result page that were eligible to |
| be prefetched. |
| </summary> |
| </metric> |
| <metric name="prefetch_successful_count"> |
| <summary> |
| The number of pages on the Google Search Result Page that were |
| successfully prefetched. |
| </summary> |
| </metric> |
| <metric name="prefetch_usage"> |
| <obsolete> |
| Replaced by PrefetchProxy.AfterSRPClick.SRPClickPrefetchStatus in M84. |
| </obsolete> |
| <summary> |
| This enum records if a cached prefetch page was used, and its probe |
| status, when the user navigates off the Google Search Result Page. Not set |
| if there was no prefetch. Values: Prefetch used, no probe = 0. Prefetch |
| used, successful probe = 1. Prefetch not used, failed probe = 2. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PrefetchProxy.AfterSRPClick" singular="True"> |
| <owner>curranmax@chromium.org</owner> |
| <owner>ryansturm@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <summary> |
| Metrics related to the privacy-preserving prefetch proxy on the page load |
| after the SRP. Recorded only for eligible users on the first mainframe |
| user-initiated page load immediately after a Google Search Result Page (SRP) |
| which Chrome parsed and may have prefetched links. |
| </summary> |
| <metric name="ClickedLinkSRPPosition"> |
| <summary> |
| When a user clicks on a Google SRP link, this int records which position |
| the clicked link was in. Recorded only when the user navigates to a Google |
| SRP link. |
| </summary> |
| </metric> |
| <metric name="PrefetchHeaderLatencyMs"> |
| <summary> |
| Time between the prefetch request was sent and the time the response |
| headers were received. Unset if the headers have not been received by the |
| time the user navigated to the current page. |
| </summary> |
| </metric> |
| <metric name="PrivatePrefetch"> |
| <summary> |
| This is 1 if the prefetched resource was prefetched via the private |
| prefetch proxy. This is not logged otherwise. |
| </summary> |
| </metric> |
| <metric name="ProbeLatencyMs"> |
| <summary> |
| How long the network probe blocked commit in milliseconds. Recorded only |
| when a probe was required. |
| </summary> |
| </metric> |
| <metric name="SameTabAsPrefetchingTab"> |
| <summary> |
| This is 1 if the page load matching the prefetch was in the same |
| WebContents as the page that triggerd the prefetch. This is not logged |
| otherwise. |
| </summary> |
| </metric> |
| <metric name="SRPClickPrefetchStatus" enum="PrefetchProxyPrefetchStatus"> |
| <summary> |
| The outcome of the prefetch eligibility check and possible attempt to |
| prefetch the resource. The prefetched url is always the committed URL of |
| the page. See |PrefetchProxyPrefetchStatus| for a mapping of enum values |
| and their meanings. |
| </summary> |
| </metric> |
| <metric name="SRPPrefetchEligibleCount"> |
| <summary> |
| The number of links from the SRP page (the previous page load) that were |
| eligible for prefetch. Always set when this event is recorded. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PrefetchProxy.PrefetchedResource"> |
| <owner>curranmax@chromium.org</owner> |
| <owner>ryansturm@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <summary> |
| Each event corresponds to a single resource, either mainframe or |
| subresource, that was prefetched during an Isolated Prerender. Logged one or |
| many times on a Google Search Result Page for eligible users. |
| </summary> |
| <metric name="DataLength"> |
| <summary> |
| The bucketed number of bytes that transited the network to prefetch this |
| resource. Only set when the resource was prefetched. |
| </summary> |
| </metric> |
| <metric name="FetchDurationMS"> |
| <summary> |
| The number of milliseconds that the prefetch took from start to |
| completion. Only set when the resource was prefetched. |
| </summary> |
| </metric> |
| <metric name="ISPFilteringStatus" enum="IsolatedPrerenderISPFilteringStatus"> |
| <summary> |
| How ISP filtering interacted with the mainframe resource if it was |
| navigated to. Only set when LinkClicked is true. |
| </summary> |
| </metric> |
| <metric name="LinkClicked" enum="Boolean"> |
| <summary> |
| Whether the mainframe was navigated to. Always set when the event is |
| recorded, even on subresources which take the value from their |
| corresponding mainframe. |
| </summary> |
| </metric> |
| <metric name="LinkPosition"> |
| <summary> |
| The location in the original navigation prediction of where the mainframe |
| url was. Always set when the event is recorded, even on subresources which |
| take the value from their corresponding mainframe. |
| </summary> |
| </metric> |
| <metric name="NavigationStartToFetchStartMS"> |
| <summary> |
| The number of milliseconds between the start of the navigation and the |
| start of the prefetch request. Only set when the resource was attempted to |
| be prefetched. |
| </summary> |
| </metric> |
| <metric name="ResourceType" enum="IsolatedPrerenderPrefetchResourceType"> |
| <summary> |
| The type of resource that was prefetched, either mainframe or subresource. |
| Always set when the event is recorded. |
| </summary> |
| </metric> |
| <metric name="Status" enum="PrefetchProxyPrefetchStatus"> |
| <summary> |
| The outcome of the prefetch eligibility check and possible attempt to |
| prefetch the resource and reuse it. See |PrefetchProxyPrefetchStatus| for |
| a mapping of enum values and their meanings. Always set when the event is |
| recorded. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Preloading.AnchorInteraction"> |
| <owner>jacobstanley@google.com</owner> |
| <owner>curranmax@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| Logged once for each preconnection request sent to the browser in response |
| to the user interacting with an anchor element. Associated with the Source |
| ID of the page triggering the preconnection. |
| </summary> |
| <metric name="AnchorElementPreloaderType" enum="AnchorElementPreloaderType"> |
| <summary> |
| One event for each preload operation that was triggered on the current |
| page. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Preloading.Attempt"> |
| <owner>sreejakshetty@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| This event is logged for each preloading attempt i.e., for preloading |
| features like Preresolve, Preconnect, Prerender, Prefetch, and others when |
| the user navigates or when the WebContents is being destroyed. |
| |
| Associated with the Source ID of the page user navigates to. Contains |
| information about the type of attempt, its eligibility, triggering outcome, |
| failure reason and whether the attempt was triggered accurately or not. |
| |
| Note that this event is sampled based on the PreloadingConfig feature |
| configuration (in addition to the normal UKM sampling mechanism). The |
| sampling rate for each event (which may vary for different preloading |
| features) is logged in the SamplingLikelihood field. |
| </summary> |
| <metric name="AccurateTriggering" enum="Boolean"> |
| <summary> |
| Whether the preloading operation was triggered accurately for the |
| predicted URL (regardless of the eligibility, failures, etc.). Set to true |
| if the user navigated to the predicted URL. |
| </summary> |
| </metric> |
| <metric name="Eligibility"> |
| <summary> |
| Eligibility status of preloading operation for the prediction. Values are |
| from the Chrome enum content::PreloadingEligibility. |
| </summary> |
| </metric> |
| <metric name="FailureReason"> |
| <summary> |
| Reason why the preloading operation failed. Values are from the enum |
| specific to the preloading type. |
| </summary> |
| </metric> |
| <metric name="HoldbackStatus"> |
| <summary> |
| The outcome of the holdback check. This is not part of eligibility status |
| to make clarify that this check needs to happen after we are done |
| verifying the eligibility of a preloading attempt. In general, eligibility |
| checks can be reordered, but the holdback check always needs to come after |
| verifying that the preloading attempt was eligible. |
| </summary> |
| </metric> |
| <metric name="PreloadingPredictor"> |
| <summary> |
| The type of preloading predictor which made the prediction. Values are |
| from the Chrome enum content::PreloadingPredictor or |
| ChromePreloadingPredictor. |
| </summary> |
| </metric> |
| <metric name="PreloadingType"> |
| <summary> |
| The type of preloading operation used for the preloading attempt. Values |
| are from the Chrome enum content::PreloadingType. |
| </summary> |
| </metric> |
| <metric name="ReadyTime"> |
| <summary> |
| The amount of time the attempt took to reach a state in which it is ready |
| to be used for the next navigation, in milliseconds. Note: currently only |
| Prefetch, Prerender and NoStatePrefetch have a ready state. This field is |
| only meaningful to these three types of preloading. |
| </summary> |
| </metric> |
| <metric name="SamplingLikelihood"> |
| <summary> |
| The sampling rate of this particular event multiplied by 1,000,000 |
| (because we cannot log floating point values in UKM). A value of 1,000,000 |
| means that the event had a 100% chance of being sampled, whereas a value |
| of one means that the event had a one-in-a-millon chance of being sampled. |
| The sampling rate for preloading attempts is set via field trial through |
| the PreloadingConfig feature. The logged value just represents the |
| configuration used for that preloading attempt. |
| </summary> |
| </metric> |
| <metric name="TimeToNextNavigation"> |
| <summary> |
| The amount of time the attempt took to reach the next navigation, in |
| milliseconds. This can happen multiple times, but only the first is |
| recorded. |
| </summary> |
| </metric> |
| <metric name="TriggeringOutcome"> |
| <summary> |
| Specifies whether the preloading attempt triggered and was used for the |
| next navigation. Values are from the Chrome enum |
| content::PreloadingTriggeringOutcome. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Preloading.Attempt.PreviousPrimaryPage"> |
| <owner>sreejakshetty@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| This is same as Preloading.Attempt but UKM is associated with the primary |
| triggering page (if exists) and logged when the user navigates away or when |
| the WebContents is being destroyed. |
| |
| Associated with the Source ID of the WebContents primary page where the |
| preloading attempt is triggered (user navigates from). All the metrics data |
| are similar to Preloading.Attempt and please see the comments for more |
| details. |
| |
| Note that this event is sampled based on the PreloadingConfig feature |
| configuration (in addition to the normal UKM sampling mechanism). The |
| sampling rate for each event (which may vary for different preloading |
| features) is logged in the SamplingLikelihood field. |
| </summary> |
| <metric name="AccurateTriggering" enum="Boolean"> |
| <summary> |
| Whether the preloading operation was triggered accurately (regardless of |
| the eligibility, holdback, failures, etc.). |
| |
| Set to true if the user navigated to the predicted URL. |
| </summary> |
| </metric> |
| <metric name="Eligibility"> |
| <summary> |
| Eligibility status of preloading operation for the prediction. |
| </summary> |
| </metric> |
| <metric name="FailureReason"> |
| <summary> |
| Reason why the preloading operation failed. |
| </summary> |
| </metric> |
| <metric name="HoldbackStatus"> |
| <summary> |
| The outcome of the holdback check. This is not part of eligibility status |
| to make clarify that this check needs to happen after we are done |
| verifying the eligibility of a preloading attempt. In general, eligibility |
| checks can be reordered, but the holdback check always needs to come after |
| verifying that the preloading attempt was eligible. |
| </summary> |
| </metric> |
| <metric name="PreloadingPredictor"> |
| <summary> |
| The type of predictor that made the prediction. Values are from either |
| content::PreloadingPredictor or ChromePreloadingPredictor. |
| </summary> |
| </metric> |
| <metric name="PreloadingType"> |
| <summary> |
| The type of preloading operation used for the preloading attempt. |
| </summary> |
| </metric> |
| <metric name="ReadyTime"> |
| <summary> |
| The amount of time the attempt took to reach a state in which it is ready |
| to be used for the next navigation, in milliseconds. Note: currently only |
| Prefetch, Prerender and NoStatePrefetch have a ready state. This field is |
| only meaningful to these three types of preloading. |
| </summary> |
| </metric> |
| <metric name="SamplingLikelihood"> |
| <summary> |
| The sampling rate of this particular event multiplied by 1,000,000 |
| (because we cannot log floating point values in UKM). A value of 1,000,000 |
| means that the event had a 100% chance of being sampled, whereas a value |
| of one means that the event had a one-in-a-millon chance of being sampled. |
| The sampling rate for preloading attempts is set via field trial through |
| the PreloadingConfig feature. The logged value just represents the |
| configuration used for that preloading attempt. |
| </summary> |
| </metric> |
| <metric name="TimeToNextNavigation"> |
| <summary> |
| The amount of time the attempt took to reach the next navigation, in |
| milliseconds. This can happen multiple times, but only the first is |
| recorded. |
| </summary> |
| </metric> |
| <metric name="TriggeringOutcome"> |
| <summary> |
| Specifies whether the preloading triggered and was used for the next |
| navigation. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Preloading.Prediction"> |
| <owner>sreejakshetty@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| This event is logged for each preloading prediction and metrics related to |
| the preloading predictors like OmniboxDirectURLInput, Speculation Rules and |
| others when the navigation is finished or when the WebContents is being |
| destroyed. |
| |
| Associated with the Source ID of the page user navigates to. Contains |
| information about the type of the predictor, its confidence value and |
| whether the prediction ended up being correct. |
| </summary> |
| <metric name="AccuratePrediction" enum="Boolean"> |
| <summary> |
| Whether the user navigated to the predicted URL. |
| </summary> |
| </metric> |
| <metric name="Confidence"> |
| <summary> |
| The confidence percentage of predictor's correct prediction for |
| preloading. |
| </summary> |
| </metric> |
| <metric name="PreloadingPredictor"> |
| <summary> |
| The type of preloading predictor that made the prediction. Values are from |
| content::PreloadingPredictor or ChromePreloadingPredictor. |
| </summary> |
| </metric> |
| <metric name="TimeToNextNavigation"> |
| <summary> |
| The amount of time the prediction took to reach the next navigation, in |
| milliseconds. This can happen multiple times, but only the first is |
| recorded. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Preloading.Prediction.PreviousPrimaryPage"> |
| <owner>sreejakshetty@chromium.org</owner> |
| <owner>spelchat@chromium.org</owner> |
| <owner>chrome-brapp-loading@google.com</owner> |
| <summary> |
| This is the same as Preloading.Prediction but UKM is associated with the |
| WebContents primary triggering page (if exists) and logged when the user |
| navigates away or when the WebContents is being destroyed. |
| |
| Associated with the Source ID of the primary page where the preloading |
| prediction is triggered (user navigates from). All the metrics data are |
| similar to Preloading.Prediction and please see the comments for more |
| details. |
| </summary> |
| <metric name="AccuratePrediction" enum="Boolean"> |
| <summary> |
| Whether the user navigated to the predicted URL. |
| </summary> |
| </metric> |
| <metric name="Confidence"> |
| <summary> |
| The confidence percentage of predictor's correct prediction for |
| preloading. |
| </summary> |
| </metric> |
| <metric name="PreloadingPredictor"> |
| <summary> |
| The type of preloading predictor which made the preloading prediction. |
| Values are from content::PreloadingPredictor or ChromePreloadingPredictor. |
| </summary> |
| </metric> |
| <metric name="TimeToNextNavigation"> |
| <summary> |
| The amount of time the prediction took to reach the next navigation, in |
| milliseconds. This can happen multiple times, but only the first is |
| recorded. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PrerenderPageLoad" singular="True"> |
| <owner>ksakamoto@chromium.org</owner> |
| <owner>nhiroki@chromium.org</owner> |
| <summary> |
| Metrics related to Prerender2 |
| (https://docs.google.com/document/d/1P2VKCLpmnNm_cRAjUeE-bqLL0bslL_zKqiNeCzNom_w/edit?usp=sharing). |
| </summary> |
| <metric name="FinalStatus" enum="PrerenderHostFinalStatus"> |
| <summary> |
| A status of a prerendering attempt. Recorded as enum |
| PrerenderHostFinalStatus in //tools/metrics/histograms/enums.xml. |
| |
| This is replicated as Prerender.Experimental.PrerenderHostFinalStatus.* in |
| UMA. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric |
| name="InteractiveTiming.AverageUserInteractionLatencyOverBudget.MaxEventDuration"> |
| <summary> |
| The average value of user interaction latency above budget of a |
| prerendered page after it is successfully activated, in ms. For this |
| metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration and we deduct a budget |
| from the original value. If the latency value is below the budget, it will |
| be treated as 0 ms. Each type of interaction has its own budget. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.FirstInputDelay4"> |
| <summary> |
| The duration between the hardware timestamp and the start of event |
| processing on the main thread for the first meaningful input. Recorded on |
| the prerender activation. |
| </summary> |
| </metric> |
| <metric name="InteractiveTiming.NumInteractions"> |
| <summary> |
| The number of distinct user interactions on a prerendered page after it is |
| successfully activated. See definition of user interaction: |
| https://web.dev/better-responsiveness-metric/#group-events-into-interactions |
| </summary> |
| </metric> |
| <metric |
| name="InteractiveTiming.UserInteractionLatency.HighPercentile2.MaxEventDuration"> |
| <summary> |
| An approximation of a high percentile of user interaction latency of a |
| prerendered page after it is successfully activated, in ms. For this |
| metric, we measure the latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.country,profile.system_ram"/> |
| <index fields="profile.is_dominant_version"/> |
| <index fields="profile.is_latest_version"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InteractiveTiming.WorstUserInteractionLatency.MaxEventDuration"> |
| <summary> |
| The maximum value of user interaction latency of a prerendered page after |
| it is successfully activated, in ms. For this metric, we measure the |
| latency of user interactions by |
| Responsiveness.UserInteraction.MaxEventDuration. |
| </summary> |
| </metric> |
| <metric |
| name="LayoutInstability.MaxCumulativeShiftScore.SessionWindow.Gap1000ms.Max5000ms"> |
| <summary> |
| Measures the maximum cumulative layout shift (bit.ly/cls-explainer) that |
| has occurred on the prerendered page that is successfully activated in a |
| session window. The gap between two consecutive shifts in a window is not |
| bigger than 1000ms and the maximum window size is 5000ms. This metric's |
| integral value is 100x the fractional cumulative layout shift score |
| described in the explainer. |
| </summary> |
| </metric> |
| <metric name="MainFrameResource.RequestHasNoStore" enum="Boolean"> |
| <summary> |
| A boolean indicating if any prerender activation page load mainpage |
| resource has a 'Cache-control: no-store' response header. Recorded only |
| for main frame request. |
| </summary> |
| </metric> |
| <metric name="PageEndReason" enum="PageEndReason"> |
| <obsolete> |
| Removed March 2023. |
| </obsolete> |
| <summary> |
| The |page_load_metrics::PageEndReason| for the prerender's activation. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Timing.ActivationToFirstContentfulPaint"> |
| <summary> |
| The duration in milliseconds from time of activation navigation start to |
| the time when the page first paints content. A contentful paint includes a |
| paint of text, image, SVG, or canvas. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Timing.ActivationToLargestContentfulPaint"> |
| <summary> |
| The duration in milliseconds from time of activation navigation start to |
| the time when the page first paints the largest content (text or image) |
| within viewport, across all frames. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Timing.NavigationToActivation"> |
| <summary> |
| The duration in milliseconds from the start of initial prerendering |
| navigation to the start of activation navigation. This corresponds to the |
| activationStart attribute of PerformanceNavigationTiming. |
| </summary> |
| </metric> |
| <metric name="TriggeredPrerender" enum="Boolean"> |
| <summary> |
| A boolean that is set to true if the page triggered prerendering. |
| |
| Unlike other PrerenderPageLoad metrics, this is recorded not for |
| prerendered page loads, but for page loads that initiated prerender. |
| </summary> |
| </metric> |
| <metric name="WasPrerendered" enum="Boolean"> |
| <summary> |
| A boolean that is set to true if the page was prerendered and later |
| activated. Cancelled prerender page loads are not logged. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Presentation.StartResult"> |
| <owner>muyaoxu@google.com</owner> |
| <owner>openscreen-eng@google.com</owner> |
| <summary> |
| Records when users start a Presentation and receive a response from the |
| receiver. Android only. The following failures are not recorded because they |
| don't represent an actual error: (1) |
| PresentationErrorType::PRESENTATION_REQUEST_CANCELLED This error is created |
| when users close the dialog without starting a Presentation. (2) |
| PresentationErrorType::NO_PRESENTATION_FOUND This error might happen when a |
| website implementing CastSDK try to join a route every time the page loads. |
| </summary> |
| <metric name="PresentationRequest" enum="Boolean"> |
| <summary> |
| Records whether the users' request to start a Presentation with a |
| "cast:" presentation URL succeed. |
| </summary> |
| </metric> |
| <metric name="RemotePlayback" enum="Boolean"> |
| <summary> |
| Records whether the users' request to start a Presentation through |
| RemotePlayback succeed. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Previews" singular="True"> |
| <obsolete> |
| Obsoleted 01/2022. |
| </obsolete> |
| <owner>ryansturm@chromium.org</owner> |
| <summary> |
| Previews related metrics associated with a page load. See |
| //components/previews/. |
| </summary> |
| <metric name="client_lofi"> |
| <obsolete> |
| Deprecated June 2019 |
| </obsolete> |
| <summary> |
| Set to 1 when a user is shown a client lo-fi image in a page load. |
| </summary> |
| </metric> |
| <metric name="coin_flip_result"> |
| <obsolete> |
| Replaced by the PreviewsCoinFlip event in M78. |
| </obsolete> |
| <summary> |
| Set to 0 if there was no attempted preview for this page load, or the coin |
| flip holdback is disabled in this session. Set to 1 if a preview was |
| attempted and was allowed to proceed by the coin flip. Set to 2 if a |
| preview would have been attempted but was held back by the coin flip. Note |
| that a non-zero value in this field implies previews_likely. |
| </summary> |
| </metric> |
| <metric name="defer_all_script" enum="Boolean"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| Set to 1 when a user is shown a DeferAllScript preview on a page load. |
| </summary> |
| </metric> |
| <metric name="defer_all_script_eligibility_reason" |
| enum="PreviewsEligibilityReason"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| Set to the value of the last known reason a DeferAllScript preview was not |
| eligible on this page load. The value of this metric corresponds to the |
| PreviewsEligibilityReason enum. This metric is only set when it is |
| non-zero. |
| </summary> |
| </metric> |
| <metric name="lite_page"> |
| <summary> |
| Set to 1 when a user is shown a lite page in page load. |
| </summary> |
| </metric> |
| <metric name="lite_page_redirect"> |
| <obsolete> |
| Removed in M84. |
| </obsolete> |
| <summary> |
| Set to 1 when a user is shown a lite page redirect in page load. |
| </summary> |
| </metric> |
| <metric name="lite_page_redirect_eligibility_reason"> |
| <obsolete> |
| Removed in M84. |
| </obsolete> |
| <summary> |
| Set to the value of the last known reason a Lite Page Redirect preview was |
| not eligible on this page load. The value of this metric corresponds to |
| the PreviewsEligibilityReason enum. This metric is only set when it is |
| non-zero. |
| </summary> |
| </metric> |
| <metric name="navigation_restart_penalty"> |
| <obsolete> |
| Feature removed in M79. |
| </obsolete> |
| <summary> |
| Set to the number of milliseconds spent restarting navigations when a Lite |
| Page Redirect preview is attempted, whether or not it is committed, during |
| the page load. |
| </summary> |
| </metric> |
| <metric name="noscript"> |
| <obsolete> |
| Deprecated December 2020. |
| </obsolete> |
| <summary> |
| Set to 1 when a user is shown a NoScript preview on a page load. |
| </summary> |
| </metric> |
| <metric name="noscript_eligibility_reason"> |
| <obsolete> |
| Deprecated December 2020. |
| </obsolete> |
| <summary> |
| Set to the value of the last known reason a NoScript preview was not |
| eligible on this page load. The value of this metric corresponds to the |
| PreviewsEligibilityReason enum. This metric is only set when it is |
| non-zero. |
| </summary> |
| </metric> |
| <metric name="offline_eligibility_reason"> |
| <obsolete> |
| Deprecated December 2020. |
| </obsolete> |
| <summary> |
| Set to the value of the last known reason an Offline preview was not |
| eligible on this page load. The value of this metric corresponds to the |
| PreviewsEligibilityReason enum. This metric is only set when it is |
| non-zero. |
| </summary> |
| </metric> |
| <metric name="offline_preview"> |
| <obsolete> |
| Deprecated December 2020. |
| </obsolete> |
| <summary> |
| Set to 1 when a user is shown an offline preview page in page load. |
| </summary> |
| </metric> |
| <metric name="opt_out"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| Set to 1 when a user clicks "Show Original" on a preview page |
| load using the infobar. Set to 2 when a user opts out of a Preview using |
| the omnibox. |
| </summary> |
| </metric> |
| <metric name="origin_opt_out"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| Set to 1 when previews were enabled but no preview was attempted because |
| the origin provided a Cache-Control:no-transform header in the main frame |
| response. This is a directive from the origin to not perform any |
| transformation so in the context of the Previews feature, it is an opt-out |
| by the origin site (rather than the user). |
| </summary> |
| </metric> |
| <metric name="previews_likely"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| Set to 1 when a preview will be attempted for this page load. Otherwise |
| this is not set. This does not imply that a preview will be committed, |
| only that one will be attempted. This is set to 1 even if this page load |
| is impacted by the coin flip holdback. |
| </summary> |
| </metric> |
| <metric name="proxy_lite_page_eligibility_reason"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| Set to the value of the last known reason a Data Reduction Proxy Lite Page |
| preview was not eligible on this page load. The value of this metric |
| corresponds to the PreviewsEligibilityReason enum. This metric is only set |
| when it is non-zero. |
| </summary> |
| </metric> |
| <metric name="resource_loading_hints"> |
| <obsolete> |
| Deprecated December 2020. |
| </obsolete> |
| <summary> |
| Set to 1 when a user is shown a resource loading hints based preview on a |
| page load. |
| </summary> |
| </metric> |
| <metric name="resource_loading_hints_eligibility_reason"> |
| <obsolete> |
| Deprecated December 2020. |
| </obsolete> |
| <summary> |
| Set to the value of the last known reason a Resource Loading Hints preview |
| was not eligible on this page load. The value of this metric corresponds |
| to the PreviewsEligibilityReason enum. This metric is only set when it is |
| non-zero. |
| </summary> |
| </metric> |
| <metric name="save_data_enabled"> |
| <summary> |
| Set to 1 if the data saver feature was enabled in Chrome at the time of |
| the page commit. |
| </summary> |
| </metric> |
| <metric name="server_lofi"> |
| <obsolete> |
| Deprecated June 2019 |
| </obsolete> |
| <summary> |
| Set to 1 when a user is shown a server lo-fi image in a page load. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PreviewsCoinFlip" singular="True"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <owner>robertogden@chromium.org</owner> |
| <summary> |
| Coin flip experiment metrics associated with a Preview page load. See |
| //components/previews/. This is recorded as a separate event from Previews |
| so that it can be recorded earlier than commit which happens in some cases. |
| </summary> |
| <metric name="coin_flip_result" enum="PreviewsCoinFlipResult"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| Set to 0 if there was no attempted preview for this page load, or the coin |
| flip holdback is disabled in this session. Set to 1 if a preview was |
| attempted and was allowed to proceed by the coin flip. Set to 2 if a |
| preview would have been attempted but was held back by the coin flip. Note |
| that a non-zero value in this field implies previews_likely. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PreviewsDeferAllScript" singular="True"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <owner>dougarnett@chromium.org</owner> |
| <summary> |
| Metrics associated with the intervention of deferring the execution of |
| synchronous script (typically due to a DeferAllScript Preview). This is |
| recorded when the HTML parsing of a mainframe has completed. |
| </summary> |
| <metric name="force_deferred_scripts_mainframe"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| The total number of mainframe scripts (inline and external) whose |
| execution was force deferred (i.e., that otherwise would have been render |
| blocking). |
| </summary> |
| </metric> |
| <metric name="force_deferred_scripts_mainframe_external"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <summary> |
| The total number of mainframe external scripts whose execution was force |
| deferred (i.e., that otherwise would have been render blocking). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PreviewsResourceLoadingHints" singular="True"> |
| <obsolete> |
| Deprecated Feb 2021. |
| </obsolete> |
| <owner>jegray@chromium.org</owner> |
| <summary> |
| Metrics associated with loading a resource loading hints based preview. This |
| is recorded when the URL's document finishes loading. See |
| //components/previews/. |
| </summary> |
| <metric name="blocked_high_priority"> |
| <summary> |
| The number of high priority resource requests that were blocked by the |
| resource loading hints based preview while the URL's document was loading. |
| </summary> |
| </metric> |
| <metric name="blocked_low_priority"> |
| <summary> |
| The number of low priority resource requests that were blocked by the |
| resource loading hints based preview while the URL's document was loading. |
| </summary> |
| </metric> |
| <metric name="blocked_medium_priority"> |
| <summary> |
| The number of medium priority resource requests that were blocked by the |
| resource loading hints based preview while the URL's document was loading. |
| </summary> |
| </metric> |
| <metric name="blocked_very_high_priority"> |
| <summary> |
| The number of very high priority resource requests that were blocked by |
| the resource loading hints based preview while the URL's document was |
| loading. |
| </summary> |
| </metric> |
| <metric name="blocked_very_low_priority"> |
| <summary> |
| The number of very low priority resource requests that were blocked by the |
| resource loading hints based preview while the URL's document was loading. |
| </summary> |
| </metric> |
| <metric name="patterns_to_block_total"> |
| <summary> |
| The total number of patterns to block included in the resource loading |
| hints based preview. |
| </summary> |
| </metric> |
| <metric name="patterns_to_block_used"> |
| <summary> |
| The number of patterns that blocked at least one resource request in the |
| resource loading hints based preview while the URL's document was loading. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PublicImageCompressionDataUse"> |
| <obsolete> |
| Obsoleted 01/2022. |
| </obsolete> |
| <owner>rajendrant@chromium.org</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Records coverage metrics for https image compression. The network data use |
| of images is recorded with breakdown of whether the image was compressible |
| by redirecting to optimized version, or if not the reason for its |
| ineligblity is recorded. The bytes are rounded down to the exponential |
| bucket with factor of 1.3. |
| </summary> |
| <metric name="CompressibleImageBytes"> |
| <summary> |
| Total image bytes that can be compressed, by redirecting to optimized |
| versions to save data. |
| </summary> |
| </metric> |
| <metric name="IneligibleImageHintsUnavailableAndMissingInHintsBytes"> |
| <summary> |
| Total bytes of images that were ineligible to be compressed due to the |
| image hint list was not retrieved in time before the image fetch started, |
| and the image URL was not in the hint list as well, which finished |
| fetching later. |
| </summary> |
| </metric> |
| <metric name="IneligibleImageHintsUnavailableButCompressibleBytes"> |
| <summary> |
| Total bytes of images that were ineligible to be compressed due to the |
| image hint list was not retrieved in time before the image fetch started, |
| but the image URL was found in the hint list, which finished fetching |
| later. |
| </summary> |
| </metric> |
| <metric name="IneligibleImageHintsUnavailableBytes"> |
| <summary> |
| Total bytes of images that were ineligible to be compressed due to the |
| image hint list was not retrieved within within certain time limit of |
| navigation start. |
| </summary> |
| </metric> |
| <metric name="IneligibleMissingInImageHintsBytes"> |
| <summary> |
| Total bytes of images that were ineligible to be compressed due to the |
| image URL not exist in the image hint list. |
| </summary> |
| </metric> |
| <metric name="IneligibleOtherImageBytes"> |
| <summary> |
| Total bytes of images that were ineligible to be compressed due to other |
| reasons not listed here, such as subframe images, non img element, |
| javascript initiated image, etc. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PublicImageCompressionImageLoad"> |
| <obsolete> |
| Obsoleted Jan 2022. |
| </obsolete> |
| <owner>rajendrant@chromium.org</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Records image loading and network data use metrics for https image |
| compression. Recorded when an image request completes with successful |
| compression or fails and fetches original image. The bytes are rounded down |
| to the exponential bucket with factor of 1.3. |
| </summary> |
| <metric name="CompressionPercentage"> |
| <summary> |
| The compression percent of this image recorded if the image has been |
| compressed: (1-compressed_bytes/original_bytes)*100% |
| </summary> |
| </metric> |
| <metric name="NavigationToRequestSent"> |
| <summary> |
| The duration in milliseconds from time of navigation start to the time the |
| image request was sent to the origin or compression server. |
| </summary> |
| </metric> |
| <metric name="NavigationToRequestStart"> |
| <summary> |
| The duration in milliseconds from time of navigation start to the time the |
| image request started. |
| </summary> |
| </metric> |
| <metric name="NavigationToResponseReceived"> |
| <summary> |
| The duration in milliseconds from time of navigation start to the time the |
| image response headers were received. |
| </summary> |
| </metric> |
| <metric name="OriginalBytes"> |
| <summary> |
| The original size of the image before compression. For compressed images |
| this is the original size retrieved from response headers. For |
| non-compressed images this is the network bytes. |
| </summary> |
| </metric> |
| <metric name="RedirectResult" enum="SubresourceRedirectRedirectResult"> |
| <summary> |
| Enumerates the different results possible for subresource redirection, |
| such as redirectable or different reasons of ineligibility. |
| </summary> |
| </metric> |
| <metric name="RobotsRulesFetchLatency"> |
| <summary> |
| The duration in milliseconds to fetch the robots rules. Recorded for each |
| image that goes through the robots rules check. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="PWA.Visit" singular="True"> |
| <owner>yfriedman@chromium.org</owner> |
| <owner>hartmanng@chromium.org</owner> |
| <owner>pkotwicz@chromium.org</owner> |
| <summary> |
| PWA usage metrics recorded during a user's interaction with the site. |
| </summary> |
| <metric name="LaunchSource" enum="LaunchFromHomeScreenSource"> |
| <summary> |
| Launch source of the WebAPK (tap from homescreen, WebShareTarget, |
| deeplink, etc). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WebAPKableSiteVisit" enum="Boolean"> |
| <summary> |
| Recorded every time a non-installed "WebAPKable" site is |
| visited. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ReaderModeActivated" singular="True"> |
| <owner>gilmanmh@google.com</owner> |
| <owner>kjbooker@google.com</owner> |
| <owner>dtseng@chromium.org</owner> |
| <summary> |
| Recorded after a user activates Reader Mode for a given page. |
| </summary> |
| <metric name="ActivatedViaOmnibox" enum="Boolean"> |
| <summary> |
| Whether the user activated Reader Mode via the omnibox badge. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="ReaderModeReceivedDistillability"> |
| <owner>gilmanmh@google.com</owner> |
| <owner>kjbooker@google.com</owner> |
| <owner>dtseng@chromium.org</owner> |
| <summary> |
| Recorded when the Reader Mode badge receives a result from the |
| distillability service. |
| </summary> |
| <metric name="IsPageDistillable" enum="Boolean"> |
| <summary> |
| Whether the distillability service determined the page to be distillable, |
| i.e. likely to render well in Reader Mode. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="RendererSchedulerTask"> |
| <owner>altimin@chromium.org</owner> |
| <summary> |
| Sampled task from the renderer main thread. Sample rate is controlled |
| dynamically. See |
| blink::scheduler::MainThreadSchedulerImpl::ShouldRecordTaskUkm. |
| </summary> |
| <metric name="FrameStatus"> |
| <summary> |
| Frame status of the frame associated with the context of this task. See |
| blink::scheduler::FrameStatus for the values of this enum. |
| </summary> |
| </metric> |
| <metric name="IsOOPIF"> |
| <summary> |
| Whether the frame which the task is associated with is an out-of-process |
| iframe. Boolean encoded as an integer (0/1). |
| </summary> |
| </metric> |
| <metric name="PageSchedulers"> |
| <summary> |
| Number of page schedulers in this process. If the value equals one, global |
| per-process tasks can be attributed to the URL. |
| </summary> |
| </metric> |
| <metric name="QueueType"> |
| <summary> |
| Type of the task queue which this task was posted to. See |
| blink::scheduler::MainThreadTaskQueue::TaskType for the values of this |
| enum. |
| </summary> |
| </metric> |
| <metric name="RendererAudible"> |
| <summary> |
| Whether renderer was playing audio when this task was completed. Boolean, |
| encoded as an integer (0/1). |
| </summary> |
| </metric> |
| <metric name="RendererBackgrounded"> |
| <summary> |
| Whether renderer was backgrounded when this task was completed. Boolean, |
| encoded as an integer (0/1). |
| </summary> |
| </metric> |
| <metric name="RendererHidden"> |
| <summary> |
| Whether renderer was hidden when this task was completed. Boolean, encoded |
| as an integer (0/1). |
| </summary> |
| </metric> |
| <metric name="SecondsSinceBackgrounded"> |
| <summary> |
| Seconds since the renderer was backgrounded, recorded when the task was |
| completed. Only set if the renderer is backgrounded. |
| </summary> |
| </metric> |
| <metric name="TaskCPUDuration"> |
| <summary> |
| CPU duration of this task in microseconds. |
| </summary> |
| </metric> |
| <metric name="TaskDuration"> |
| <summary> |
| Duration of this task in microseconds. |
| </summary> |
| </metric> |
| <metric name="TaskType"> |
| <summary> |
| blink::TaskType for the current task. |
| </summary> |
| </metric> |
| <metric name="ThreadType"> |
| <summary> |
| blink::ThreadType for the thread the current task was executed on. |
| </summary> |
| </metric> |
| <metric name="UseCase"> |
| <summary> |
| MainThreadSchedulerImpl's UseCase when this task was completed. See |
| blink::scheduler::UseCase for the values of this enum. |
| </summary> |
| </metric> |
| <metric name="Version"> |
| <summary> |
| The version of this metric, which is used to track the actual set of |
| values present across different builds and channels. Hardcoded into the |
| binary and incremented each time a new field is added or existing is |
| changed. Integer. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="RenderViewContextMenu.Used"> |
| <owner>juanmojica@google.com</owner> |
| <owner>benwgold@google.com</owner> |
| <summary> |
| Metric recorded when a context menu item is selected. This is currently only |
| recorded for Lens context menu items. |
| </summary> |
| <metric name="SelectedMenuItem" enum="RenderViewContextMenuItem"> |
| <summary> |
| The menu item selected by the user on the context menu. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Responsiveness.UserInteraction"> |
| <owner>mmocny@chromium.org</owner> |
| <owner>sullivan@chromium.org</owner> |
| <owner>speed-metrics-dev@chromium.org</owner> |
| <summary> |
| Metrics that are associated with user interactions and recorded when users |
| interact with web pages. Currently we are interested in keyboard, tap, click |
| and drag. A user interaction often encompasses multiple input events. For |
| keyboard interactions, we only care about keydown and keyup. For tap, click |
| and drag, we only measure pointerdown, pointerup and click. |
| </summary> |
| <metric name="InteractionType" enum="UserInteractionType"> |
| <summary> |
| The type of the user interaction that triggered input event sequence, not |
| the input event type. It can be keyboard, tap, click or drag. |
| </summary> |
| </metric> |
| <metric name="MaxEventDuration"> |
| <summary> |
| The longest input event duration within the user interaction. The unit of |
| duration is ms. For example, if a user pressed a key, we can get a keydown |
| and a keyup. If the duration(keydown) > duration(keyup), the value of |
| this metric will be duration(keydown). |
| </summary> |
| </metric> |
| <metric name="TotalEventDuration"> |
| <summary> |
| The sum of input event durations within the user interaction without |
| double counting the overlap. The unit of duration is ms. For example, if a |
| user pressed a key, we can get a keydown and a keyup. The value of this |
| metric will be duration(keydown) + duration(keyup) - |
| duration(intersection(keydown, keyup)). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ResponsivenessMeasurement"> |
| <owner>npm@chromium.org</owner> |
| <owner>tdresser@chromium.org</owner> |
| <summary> |
| Responsiveness metrics recorded once every 5 seconds. |
| </summary> |
| <metric name="ExpectedTaskQueueingDuration"> |
| <obsolete> |
| Removed June 2020. |
| </obsolete> |
| <summary> |
| Duration in MS for expected task queueing duration. The metric reflects |
| the responsiveness of a tab. A lower value means the tab will respond to |
| inputs faster. This metric is equal to |
| RendererScheduler.ExpectedTaskQueueingDuration of the main frame process. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SalientImageAvailability" singular="True"> |
| <owner>chrome-intelligence-core@google.com</owner> |
| <owner>tbansal@chromium.org</owner> |
| <summary> |
| Metrics on the salient image of the page, one record per page load commit |
| and has an annotation calculated on it. |
| </summary> |
| <metric name="ImageAvailability" |
| enum="OptimizationGuideSalientImageAvailability"> |
| <summary> |
| Records whether salient image was available or not for this page, the |
| source of the salient image and why it was unavailable. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SameSiteDifferentSchemeRequest"> |
| <owner>bingler@chromium.org</owner> |
| <metric name="SameSiteContextWithSchemes" enum="SameSiteCookieContext"> |
| <obsolete> |
| Removed Apr 2020 as this metric doesn't capture the correct information. |
| https://crbug.com/1066231 |
| </obsolete> |
| <summary> |
| An enum that records the type of same-site context if a cookie marked with |
| SameSite=Lax or SameSite=Strict is sent across schemes on a request. E.x.: |
| An http site making a request to an https site. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SameSiteDifferentSchemeResponse"> |
| <owner>bingler@chromium.org</owner> |
| <metric name="SameSiteContextWithSchemes" enum="SameSiteCookieContext"> |
| <obsolete> |
| Removed Apr 2020 as this metric doesn't capture the correct information. |
| https://crbug.com/1066231 |
| </obsolete> |
| <summary> |
| An enum that records the type of same-site context if a cookie marked with |
| SameSite=Lax or SameSite=Strict is set across schemes on a response. E.x.: |
| An http site returning a response to an https site. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SamesiteRedirectContextDowngrade"> |
| <owner>bingler@chromium.org</owner> |
| <summary> |
| A collection of metrics which are recorded for cookies whose inclusion would |
| be changed if the redirect chain was considered in their same-site |
| calculation. This change in inclusion is because the same-site context would |
| "downgrade" from a more permissive context to a less permissive |
| context, one which may not allow a cookie's inclusion. |
| </summary> |
| <metric name="AgePerCookie"> |
| <summary> |
| Records the age of the cookies, in minutes, for cookies which are being |
| read (on a requset or via JS). The value rounded down to the exponential |
| bucket with factor of 2.0. |
| </summary> |
| </metric> |
| <metric name="SamesiteValueReadPerCookie" enum="SameSiteCookieValue"> |
| <summary> |
| Records the SameSite value of the cookie for cookies which are being read |
| (on a request or via JS). |
| </summary> |
| </metric> |
| <metric name="SamesiteValueWritePerCookie" enum="SameSiteCookieValue"> |
| <summary> |
| Records the SameSite value of the cookie for cookies which are being |
| written (on a response or via JS). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SchemefulSameSiteContextDowngrade"> |
| <owner>bingler@chromium.org</owner> |
| <metric name="RequestPerCookie" |
| enum="SameSiteCookieContextBreakingDowngradeWithSecureness"> |
| <summary> |
| An enum which records the type of schemeful same-site downgrade applied to |
| a cookie which is being sent on a request along with the secureness of the |
| origin the cookie is attempting to be sent to. This is recorded once per |
| cookie when the cookie is included in the request or if the cookie |
| excluded due to insufficient same-site context only. Cookies that meet the |
| above conditions but without a downgrade warning are not recorded. |
| </summary> |
| </metric> |
| <metric name="ResponsePerCookie" |
| enum="SameSiteCookieContextBreakingDowngradeWithSecureness"> |
| <summary> |
| An enum which records the type of schemeful same-site downgrade applied to |
| a cookie which is being set by a response along with the secureness of the |
| origin that is attempting to set the cookie. This is recorded once per |
| cookie when the cookie is allowed to be set or if the cookie is ignored |
| due to insufficient same-site context only. Cookies that meet the above |
| conditions but without a downgrade warning are not recorded. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ScreenBrightness"> |
| <owner>pdyson@chromium.org</owner> |
| <summary> |
| Collects metrics periodically and on screen brightness change. |
| </summary> |
| <metric name="BatteryPercent"> |
| <summary> |
| Percentage of battery, rounded down to a multiple of 5%, i.e. [0, 5%) is |
| mapped to 0, [5%, 10%) is mapped to 5 etc. |
| </summary> |
| </metric> |
| <metric name="Brightness"> |
| <summary> |
| Screen percentage brightness. between 0 and 100. |
| </summary> |
| </metric> |
| <metric name="DayOfWeek"> |
| <summary> |
| An enum representing the of the week that the data was logged, defined in |
| |ash::power::ml::ScreenBrightnessEvent::Features::ActivityData:: |
| DayOfWeek|. |
| </summary> |
| </metric> |
| <metric name="DeviceMode"> |
| <summary> |
| An enum representing the mode of the device, defined in |
| |ash::power::ml::ScreenBrightnessEvent::Features::EnvData:DeviceMode| |
| </summary> |
| </metric> |
| <metric name="HourOfDay"> |
| <summary> |
| The hour of the day when the data is logged. Hours since midnight in the |
| local time zone. |
| </summary> |
| </metric> |
| <metric name="IsAutoclickEnabled"> |
| <summary> |
| Boolean value to represent whether the auto click is currently enabled. |
| </summary> |
| </metric> |
| <metric name="IsBrailleDisplayConnected"> |
| <summary> |
| Boolean value to represent whether the braille display is currently |
| enabled. |
| </summary> |
| </metric> |
| <metric name="IsCaretHighlightEnabled"> |
| <summary> |
| Boolean value to represent whether the caret highlight is currently |
| enabled. |
| </summary> |
| </metric> |
| <metric name="IsCursorHighlightEnabled"> |
| <summary> |
| Boolean value to represent whether the cursor highlight is currently |
| enabled. |
| </summary> |
| </metric> |
| <metric name="IsFocusHighlightEnabled"> |
| <summary> |
| Boolean value to represent whether the focus highlight is currently |
| enabled. |
| </summary> |
| </metric> |
| <metric name="IsHighContrastEnabled"> |
| <summary> |
| Boolean value to represent whether the high contrast is currently enabled. |
| </summary> |
| </metric> |
| <metric name="IsLargeCursorEnabled"> |
| <summary> |
| Boolean value to represent whether the large cursor is currently enabled. |
| </summary> |
| </metric> |
| <metric name="IsMagnifierEnabled"> |
| <summary> |
| Boolean value to represent whether the full screen magnifier is currently |
| enabled. |
| </summary> |
| </metric> |
| <metric name="IsMonoAudioEnabled"> |
| <summary> |
| Boolean value to represent whether the mono audio is currently enabled. |
| </summary> |
| </metric> |
| <metric name="IsSelectToSpeakEnabled"> |
| <summary> |
| Boolean value to represent whether select to speak is currently enabled. |
| </summary> |
| </metric> |
| <metric name="IsSpokenFeedbackEnabled"> |
| <summary> |
| Boolean value to represent whether the spoken feedback is currently |
| enabled. |
| </summary> |
| </metric> |
| <metric name="IsSwitchAccessEnabled"> |
| <summary> |
| Boolean value to represent whether Switch Access is currently enabled. |
| </summary> |
| </metric> |
| <metric name="IsVideoPlaying"> |
| <summary> |
| Boolean value to represent whether video is currently playing. |
| </summary> |
| </metric> |
| <metric name="IsVirtualKeyboardEnabled"> |
| <summary> |
| Boolean value to represent whether the virtual keyboard is currently |
| enabled. |
| </summary> |
| </metric> |
| <metric name="LastActivityTimeSec"> |
| <summary> |
| Time between the last activity and when the data was logged. A duration |
| timestamp in seconds. |
| </summary> |
| </metric> |
| <metric name="NightLightTemperaturePercent"> |
| <summary> |
| The temperature percentage of night light screen color adjustment when |
| night light is on. Ranges from 0 to 100. |
| </summary> |
| </metric> |
| <metric name="NumRecentKeyEvents"> |
| <summary> |
| The number of keyboard events in the last hour. |
| </summary> |
| </metric> |
| <metric name="NumRecentMouseEvents"> |
| <summary> |
| The number of mouse events in the last hour. |
| </summary> |
| </metric> |
| <metric name="NumRecentStylusEvents"> |
| <summary> |
| The number of stylus events in the last hour. |
| </summary> |
| </metric> |
| <metric name="NumRecentTouchEvents"> |
| <summary> |
| The number of touch events in the last hour. |
| </summary> |
| </metric> |
| <metric name="OnBattery"> |
| <summary> |
| Boolean value to represent whether the device is currently on battery |
| power. |
| </summary> |
| </metric> |
| <metric name="PreviousBrightness"> |
| <summary> |
| The brightness of the screen prior to the time at which the current event |
| was logged. |
| </summary> |
| </metric> |
| <metric name="Reason"> |
| <summary> |
| The reason that the event is logged. Values are enumerated in |
| |ash::power::ml::ScreenBrightnessEvent::Event::Reason|. |
| </summary> |
| </metric> |
| <metric name="RecentTimeActiveSec"> |
| <summary> |
| How long the user has been active. A duration timestamp in seconds. |
| </summary> |
| </metric> |
| <metric name="SequenceId"> |
| <summary> |
| The ID of this event in the current session. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastEventSec"> |
| <summary> |
| Time in seconds since last time an event was logged. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Security.SafetyTip"> |
| <owner>jdeblasio@chromium.org</owner> |
| <owner>enamelites@google.com</owner> |
| <owner>beggs@google.com</owner> |
| <summary> |
| Collected when any safety tip heuristic triggers, regardless of whether the |
| Safety Tip UI is shown. |
| </summary> |
| <metric name="SafetyTipInteraction" enum="SafetyTipInteraction"> |
| <summary> |
| How the user interacted with the UI, if applicable. |
| </summary> |
| </metric> |
| <metric name="SafetyTipStatus" enum="SafetyTipStatus"> |
| <summary> |
| The final reported Safety Tip status. |
| </summary> |
| </metric> |
| <metric name="TriggeredKeywordsHeuristics" enum="Boolean"> |
| <summary> |
| Whether the sensitive keywords heuristic triggered. |
| </summary> |
| </metric> |
| <metric name="TriggeredLookalikeHeuristics" enum="Boolean"> |
| <summary> |
| Whether the lookalike keywords heuristic triggered. |
| </summary> |
| </metric> |
| <metric name="TriggeredServerSideBlocklist" enum="Boolean"> |
| <summary> |
| Whether the server-side blocklist heuristic triggered. |
| </summary> |
| </metric> |
| <metric name="UserPreviouslyIgnored" enum="Boolean"> |
| <summary> |
| Whether the user had already ignored a safety tip warning for this page in |
| the past, meaning no tip was shown. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Security.SiteEngagement"> |
| <owner>cthomp@chromium.org</owner> |
| <owner>enamelites@google.com</owner> |
| <summary> |
| Site engagement score behavior for a page with a given Security Level. |
| </summary> |
| <metric name="FinalSecurityLevel"> |
| <summary> |
| The final SecurityLevel of the page before it is closed or another |
| navigation occurs. Based on the enum security_state::SecurityLevel. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InitialSecurityLevel"> |
| <summary> |
| The initial SecurityLevel of the page when the navigation commits. Based |
| on the enum security_state::SecurityLevel. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SafetyTipStatus" enum="SafetyTipStatus"> |
| <summary> |
| The Safety Tip status of the page when the navigation commits, after the |
| reputation check finishes. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ScoreDelta"> |
| <summary> |
| The change in Site Engagement score for the page before it is closed or |
| another navigation occurs compared to the score from when the navigation |
| committed. Score is between 0.0 and 100.0; delta is between -100.0 and |
| 100.0. Rounded to the nearest integer. |
| </summary> |
| </metric> |
| <metric name="ScoreFinal"> |
| <summary> |
| The final Site Engagement score for the page before it is closed or |
| another navigation occurs. Score is between 0.0 and 100.0; this metric is |
| rounded down to a multiple of 10 to limit granularity. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Segmentation.ModelExecution"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>qinmin@chromium.org</owner> |
| <owner>ssid@chromium.org</owner> |
| <summary> |
| Input and output tensors for executing the ML model identified by |
| optimization targets and version. The input tensors can come from UMA or |
| UKM, with or without aggregation. Check model metadata for more information |
| about each tensor. Since all the ML tensors are floats, they are encoded |
| into int64 and will be decoded later during model training. This metric is |
| recorded after an ML model is executed, and the actual result is collected. |
| </summary> |
| <metric name="ActualResult"> |
| <summary> |
| UMA or UKM metrics related to the features affected by the ML model, with |
| or without aggregation, after running the features as instructed by the ML |
| model. For example, this can be the 7 day total button clicks after an ML |
| model decides to show it. No encoding is used as this is normally a count |
| or sum of a UMA/UKM metric. |
| </summary> |
| </metric> |
| <metric name="ActualResult2"> |
| <summary> |
| The 2nd UMA or UKM metrics related to the features affected by the ML |
| model, with or without aggregation, after running the features as |
| instructed by the ML model. No encoding is used. |
| </summary> |
| </metric> |
| <metric name="ActualResult3"> |
| <summary> |
| The 3rd UMA or UKM metrics related to the features affected by the ML |
| model, with or without aggregation, after running the features as |
| instructed by the ML model. No encoding is used. |
| </summary> |
| </metric> |
| <metric name="ActualResult4"> |
| <summary> |
| The 4th UMA or UKM metrics related to the features affected by the ML |
| model, with or without aggregation, after running the features as |
| instructed by the ML model. No encoding is used. |
| </summary> |
| </metric> |
| <metric name="ActualResult5"> |
| <summary> |
| The 5th UMA or UKM metrics related to the features affected by the ML |
| model, with or without aggregation, after running the features as |
| instructed by the ML model. No encoding is used. |
| </summary> |
| </metric> |
| <metric name="ActualResult6"> |
| <summary> |
| The 6th UMA or UKM metrics related to the features affected by the ML |
| model, with or without aggregation, after running the features as |
| instructed by the ML model. No encoding is used. |
| </summary> |
| </metric> |
| <metric name="Input0"> |
| <summary> |
| The input tensor at index 0 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input1"> |
| <summary> |
| The input tensor at index 1 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input10"> |
| <summary> |
| The input tensor at index 10 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input11"> |
| <summary> |
| The input tensor at index 11 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input12"> |
| <summary> |
| The input tensor at index 12 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input13"> |
| <summary> |
| The input tensor at index 13 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input14"> |
| <summary> |
| The input tensor at index 14 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input15"> |
| <summary> |
| The input tensor at index 15 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input16"> |
| <summary> |
| The input tensor at index 16 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input17"> |
| <summary> |
| The input tensor at index 17 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input18"> |
| <summary> |
| The input tensor at index 18 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input19"> |
| <summary> |
| The input tensor at index 19 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input2"> |
| <summary> |
| The input tensor at index 2 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input20"> |
| <summary> |
| The input tensor at index 20 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input21"> |
| <summary> |
| The input tensor at index 21 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input22"> |
| <summary> |
| The input tensor at index 22 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input23"> |
| <summary> |
| The input tensor at index 23 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input24"> |
| <summary> |
| The input tensor at index 24 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input25"> |
| <summary> |
| The input tensor at index 25 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input26"> |
| <summary> |
| The input tensor at index 26 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input27"> |
| <summary> |
| The input tensor at index 27 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input28"> |
| <summary> |
| The input tensor at index 28 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input29"> |
| <summary> |
| The input tensor at index 29 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input3"> |
| <summary> |
| The input tensor at index 3 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input30"> |
| <summary> |
| The input tensor at index 30 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input31"> |
| <summary> |
| The input tensor at index 31 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input32"> |
| <summary> |
| The input tensor at index 32 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input33"> |
| <summary> |
| The input tensor at index 33 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input34"> |
| <summary> |
| The input tensor at index 34 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input35"> |
| <summary> |
| The input tensor at index 35 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input36"> |
| <summary> |
| The input tensor at index 36 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input37"> |
| <summary> |
| The input tensor at index 37 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input38"> |
| <summary> |
| The input tensor at index 38 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input39"> |
| <summary> |
| The input tensor at index 39 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input4"> |
| <summary> |
| The input tensor at index 4 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input40"> |
| <summary> |
| The input tensor at index 40 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input41"> |
| <summary> |
| The input tensor at index 41 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input42"> |
| <summary> |
| The input tensor at index 42 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input43"> |
| <summary> |
| The input tensor at index 43 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input44"> |
| <summary> |
| The input tensor at index 44 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input45"> |
| <summary> |
| The input tensor at index 45 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input46"> |
| <summary> |
| The input tensor at index 46 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input47"> |
| <summary> |
| The input tensor at index 47 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input48"> |
| <summary> |
| The input tensor at index 48 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input49"> |
| <summary> |
| The input tensor at index 49 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input5"> |
| <summary> |
| The input tensor at index 5 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input6"> |
| <summary> |
| The input tensor at index 6 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input7"> |
| <summary> |
| The input tensor at index 7 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input8"> |
| <summary> |
| The input tensor at index 8 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="Input9"> |
| <summary> |
| The input tensor at index 9 represented in IEEE 754 double precision. |
| </summary> |
| </metric> |
| <metric name="ModelVersion"> |
| <summary> |
| The version of the ML model used for execution. May not be a counter int. |
| </summary> |
| </metric> |
| <metric name="OptimizationTarget"> |
| <summary> |
| The OptimizationTarget associated with the ML model. This is an enum for |
| classifying different ML models. It represents what an model is trying to |
| optimize. |
| </summary> |
| </metric> |
| <metric name="OutputDelaySec"> |
| <summary> |
| The time from last segment selection to when the UKM is recorded, in |
| seconds. |
| </summary> |
| </metric> |
| <metric name="PredictionResult"> |
| <summary> |
| Predicted result from executing the ML model. This is normally a score for |
| determining whether to show a particular feature. The value is a floating |
| number between 0 to 1 and encoded into IEEE 754 double precision here. |
| This is being deprecated. Use PredictionResult1 instead. Will add |
| deprecated flag once all the code are start using PredictionResult1. |
| </summary> |
| </metric> |
| <metric name="PredictionResult1"> |
| <summary> |
| The 1st output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult10"> |
| <summary> |
| The 10th output when inferencing the ML model with input data. The value |
| is a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult2"> |
| <summary> |
| The 2nd output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult3"> |
| <summary> |
| The 3rd output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult4"> |
| <summary> |
| The 4th output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult5"> |
| <summary> |
| The 5th output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult6"> |
| <summary> |
| The 6th output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult7"> |
| <summary> |
| The 7th output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult8"> |
| <summary> |
| The 8th output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="PredictionResult9"> |
| <summary> |
| The 9th output when inferencing the ML model with input data. The value is |
| a floating number between 0 to 1 and encoded into IEEE 754 double |
| precision here. |
| </summary> |
| </metric> |
| <metric name="SelectionResult"> |
| <summary> |
| The OptimizationTarget of the last selected segment before UKM is |
| recorded. Some features might have several ML models with them. This |
| metric records which model is currently selected for the feature. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="ServiceWorker.OnLoad"> |
| <owner>yyanagisawa@chromium.org</owner> |
| <owner>chrome-worker@google.com</owner> |
| <summary> |
| Events taken at the end of the loading pages controlled by the service |
| workers. It means that the metrics is recorded only if the loading is |
| successfully completed. |
| </summary> |
| <metric name="AudioFallback"> |
| <summary> |
| True if there are network fallback sub-resources of audios in the page. |
| (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="AudioHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of audios in |
| the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="CSSStyleSheetFallback"> |
| <summary> |
| True if there are network fallback sub-resources of CSSStyleSheet in the |
| page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="CSSStyleSheetHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of |
| CSSStyleSheet in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="FontFallback"> |
| <summary> |
| True if there are network fallback sub-resources of CSSStyleSheet in the |
| page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="FontHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of fonts in |
| the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="ImageFallback"> |
| <summary> |
| True if there are network fallback sub-resources of images in the page. |
| (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="ImageHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of images in |
| the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="LinkPrefetchFallback"> |
| <summary> |
| True if there are network fallback sub-resources of link prefetches in the |
| page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="LinkPrefetchHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of link |
| prefetches in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="MainAndSubResourceLoadLocation" |
| enum="ServiceWorkerResourceLoadStatus"> |
| <summary> |
| Enum value to represent how main / sub resource are loaded. |
| </summary> |
| </metric> |
| <metric name="ManifestFallback"> |
| <summary> |
| True if there are network fallback sub-resources of manifests in the page. |
| (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="ManifestHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of manifests |
| in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="ScriptFallback"> |
| <summary> |
| True if there are network fallback sub-resources of CSSStyleSheet in the |
| page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="ScriptHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of scripts |
| in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="SpeculationRulesFallback"> |
| <summary> |
| True if there are network fallback sub-resources of speculation rules in |
| the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="SpeculationRulesHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of |
| speculation rules in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="SubResourceFallbackRatio"> |
| <summary> |
| An integer ratio (0 - 100) to represent the ratio of network fallbacks |
| from the total subresource load. |
| </summary> |
| </metric> |
| <metric name="SVGDocumentFallback"> |
| <summary> |
| True if there are network fallback sub-resources of SVG documents in the |
| page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="SVGDocumentHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of SVG |
| documents in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="TextTrackFallback"> |
| <summary> |
| True if there are network fallback sub-resources of text tracks in the |
| page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="TextTrackHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of text |
| tracks in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="TotalSubResourceFallback"> |
| <summary> |
| The number of network fallbacks during sub resource load. This is rounded |
| down to the nearest exponential bucket (with a bucket ratio on 1.15). |
| </summary> |
| </metric> |
| <metric name="TotalSubResourceLoad"> |
| <summary> |
| The number of all sub resource load of the page controlled by the service |
| worker. This is rounded down to the nearest exponential bucket (with a |
| bucket ratio on 1.15). |
| </summary> |
| </metric> |
| <metric name="VideoFallback"> |
| <summary> |
| True if there are network fallback sub-resources of videos in the page. |
| (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="VideoHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of videos in |
| the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="XSLStyleSheetFallback"> |
| <summary> |
| True if there are network fallback sub-resources of XSLStyleSheet in the |
| page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| <metric name="XSLStyleSheetHandled"> |
| <summary> |
| True if there are service workers handling sub-resource loads of |
| XSLStyleSheet in the page. (boolean value. true: 1 or false: 0) |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SharedHighlights.LinkGenerated"> |
| <owner>jeffreycohen@chromium.org</owner> |
| <owner>chrome-creation@google.com</owner> |
| <summary> |
| Event representing the user action of selecting a piece of text on a page |
| and selecting the option to create a link which would contain the necessary |
| text fragment information to link back to this specific part of the page. |
| </summary> |
| <metric name="Error" enum="LinkGenerationError"> |
| <summary> |
| Record the type of error which prevented a successful link generation. |
| Only recorded if the link creation failed. |
| </summary> |
| </metric> |
| <metric name="Success" enum="Boolean"> |
| <summary> |
| Whether the generation of a link with text fragments was successful or |
| not. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SharedHighlights.LinkGenerated.Requested"> |
| <owner>jeffreycohen@chromium.org</owner> |
| <owner>chrome-creation@google.com</owner> |
| <summary> |
| Event representing the user action of selecting a piece of text on a page |
| and selecting the option to create a link which would contain the necessary |
| text fragment information to link back to this specific part of the page. |
| </summary> |
| <metric name="Error" enum="LinkGenerationError"> |
| <summary> |
| Record the type of error which prevented offering link to text to user. |
| Only recorded if the link was not offered to the user. |
| </summary> |
| </metric> |
| <metric name="Success" enum="Boolean"> |
| <summary> |
| Whether the link with text fragments was successful offered to the user or |
| not. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SharedHighlights.LinkOpened" singular="true"> |
| <owner>jeffreycohen@chromium.org</owner> |
| <owner>chrome-creation@google.com</owner> |
| <summary> |
| Event representing the browser action of highlighting (incl. scroll-to) text |
| fragments that were part of the URL. This happens only once during page |
| load. |
| </summary> |
| <metric name="Source" enum="TextFragmentLinkOpenSource"> |
| <summary> |
| Record the type of source for the current navigation, which has text |
| fragments. At the moment, this maps to identifying whether the source is a |
| known search engine or not. |
| </summary> |
| </metric> |
| <metric name="Success" enum="Boolean"> |
| <summary> |
| Whether the highlighting of a set of text fragments was a complete success |
| or not. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Sharing.ClickToCall"> |
| <owner>knollr@chromium.org</owner> |
| <summary> |
| Collected when a user finishes a Click to Call journey. |
| </summary> |
| <metric name="EntryPoint" enum="SharingClickToCallEntryPoint"> |
| <summary> |
| Specifies the entry point of the user journey (i.e. left click, right |
| click, text selection). |
| </summary> |
| </metric> |
| <metric name="HasApps" enum="Boolean"> |
| <summary> |
| Boolean value indicating whether any (>0) apps are available that the |
| call could be sent to. |
| </summary> |
| </metric> |
| <metric name="HasDevices" enum="Boolean"> |
| <summary> |
| Boolean value indicating whether any (>0) devices are available that |
| the call could be sent to. These belong to the same account and are |
| running Android. |
| </summary> |
| </metric> |
| <metric name="Selection" enum="SharingClickToCallSelection"> |
| <summary> |
| Whether the user selected a device, an app or nothing (i.e. dismissal) in |
| the user interface. For some entry points this might always be the same |
| value (e.g. right clicks always select devices). |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.AddToCartDetection"> |
| <owner>wychen@chromium.org</owner> |
| <owner>yuezhanggg@chromium.org</owner> |
| <summary> |
| Metrics related to DOM-based AddToCart button detection in ChromeCart. |
| </summary> |
| <metric name="HeuristicsExecutionTime"> |
| <summary> |
| Logged when DOM-based AddToCart button detection heuristic is executed and |
| records the execution time. This is expressed in microseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.CartExtraction"> |
| <owner>wychen@chromium.org</owner> |
| <owner>yuezhanggg@chromium.org</owner> |
| <summary> |
| Metrics related to performance of cart content extraction in ChromeCart. |
| </summary> |
| <metric name="ExtractionElapsedTime"> |
| <summary> |
| Logged when cart content extraction is executed for ChromeCart and records |
| the elapsed time within the JavaScript, so script parsing/compilation time |
| is excluded. Shopping.CartExtraction.ExtractionExecutionTime is measured |
| in native, and is the end-to-end elapsed time. This is expressed in |
| milliseconds. |
| </summary> |
| </metric> |
| <metric name="ExtractionExecutionTime"> |
| <summary> |
| Logged when cart content extraction is executed for ChromeCart and records |
| the elapsed time between the start and the end of the extraction |
| JavaScript request execution. This includes script parsing/compilation |
| time and sleeping time. This is expressed in milliseconds. |
| </summary> |
| </metric> |
| <metric name="ExtractionLongestTaskTime"> |
| <summary> |
| Logged when cart content extraction is executed for ChromeCart and records |
| the time span of the longest task blocking the main thread of the renderer |
| process. This is expressed in milliseconds. |
| </summary> |
| </metric> |
| <metric name="ExtractionTimedOut" enum="Boolean"> |
| <summary> |
| Logged when cart content extraction is executed for ChromeCart and records |
| whether the cart content extraction has timed out. |
| </summary> |
| </metric> |
| <metric name="ExtractionTotalTasksTime"> |
| <summary> |
| Logged when cart content extraction is executed for ChromeCart and records |
| the time spent on execution, excluding sleeping time. This is expressed in |
| milliseconds. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.ChromeCart"> |
| <owner>wychen@chromium.org</owner> |
| <owner>yuezhanggg@chromium.org</owner> |
| <summary> |
| Metrics related to Chrome cart module in Chrome NTP. |
| </summary> |
| <metric name="VisitCart" enum="Boolean"> |
| <summary> |
| Always true. Recorded when users have visited cart page from Chrome cart |
| module. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.FormSubmitted"> |
| <owner>wychen@chromium.org</owner> |
| <owner>yuezhanggg@chromium.org</owner> |
| <summary> |
| Recorded when user submits a form. |
| </summary> |
| <metric name="IsTransaction" enum="Boolean"> |
| <summary> |
| Whether the form submission is a shopping transaction. This has 50% chance |
| randomized. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.MerchantTrust.DataAvailable"> |
| <owner>zhiyuancai@chromium.org</owner> |
| <owner>ayman@chromium.org</owner> |
| <summary> |
| Recorded when user finishes a navigation while the merchant trust data is |
| available. |
| </summary> |
| <metric name="DataAvailable" enum="Boolean"> |
| <summary> |
| A boolean signaling that data is available. Only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.MerchantTrust.MessageClicked"> |
| <owner>zhiyuancai@chromium.org</owner> |
| <owner>ayman@chromium.org</owner> |
| <summary> |
| Recorded when a merchant trust message is clicked by the user. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that message is clicked. Only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.MerchantTrust.MessageSeen"> |
| <owner>zhiyuancai@chromium.org</owner> |
| <owner>ayman@chromium.org</owner> |
| <summary> |
| Recorded when a merchant trust message is displayed to the user. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that message is displayed. Only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.MerchantTrust.RowClicked"> |
| <owner>zhiyuancai@chromium.org</owner> |
| <owner>ayman@chromium.org</owner> |
| <summary> |
| Recorded when a store info row in trusted surface is clicked by the user. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that store info row is clicked. Only records true |
| values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.MerchantTrust.RowSeen"> |
| <owner>zhiyuancai@chromium.org</owner> |
| <owner>ayman@chromium.org</owner> |
| <summary> |
| Recorded when a store info row in trusted surface is displayed to the user. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that store info row is displayed. Only records true |
| values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Shopping.WillSendRequest"> |
| <owner>wychen@chromium.org</owner> |
| <owner>yuezhanggg@chromium.org</owner> |
| <summary> |
| Recorded when an XHR is about to be sent. |
| </summary> |
| <metric name="IsAddToCart" enum="Boolean"> |
| <summary> |
| Whether the XHR is to add a product to a shopping cart. This has 50% |
| chance randomized. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SiteIsolation.XSD.Browser.Blocked"> |
| <obsolete> |
| Removed in June 2019 / M77. Some old data has been saved in a |
| Google-internal doc at go/xsdb-ukm-results (ask owners below for access). |
| </obsolete> |
| <owner>creis@chromium.org</owner> |
| <owner>chrome-site-isolation@google.com</owner> |
| <summary> |
| Resource request response was blocked by the cross-site document blocking |
| logic in the browser process. |
| </summary> |
| <metric name="CanonicalMimeType"> |
| <summary> |
| Classification of the Content-Type HTTP response header into one of the |
| blockable document flavours: html, xml, json, plain. |
| </summary> |
| </metric> |
| <metric name="ContentLengthWasZero"> |
| <summary> |
| ContentLengthWasZero=1 if Content-Length was available and equal to 0. |
| ContentLengthWasZero=0 otherwise. |
| </summary> |
| </metric> |
| <metric name="ContentResourceType"> |
| <summary> |
| content::ResourceType of the blocked resource (e.g. image / script / xhr / |
| etc.). |
| </summary> |
| </metric> |
| <metric name="HttpResponseCode"> |
| <summary> |
| The HTTP response code (e.g. 200 or 404) associated with the blocked |
| resource request. |
| </summary> |
| </metric> |
| <metric name="NeededSniffing"> |
| <summary> |
| Whether the HTTP response needed sniffing to confirm its MIME type. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SmartCharging"> |
| <owner>thanhdng@chromium.org</owner> |
| <owner>jiameng@chromium.org</owner> |
| <summary> |
| Records user activities that are related to charging such as battery |
| percentage, time, device type, etc. |
| </summary> |
| <metric name="BatteryPercentage"> |
| <summary> |
| Percentage of the battery. |
| </summary> |
| </metric> |
| <metric name="BatteryPercentageBeforeLastCharge"> |
| <summary> |
| The percentage of the battery at the beginning of the last charge. |
| </summary> |
| </metric> |
| <metric name="BatteryPercentageOfLastCharge"> |
| <summary> |
| The percentage of the battery that the last charge reached. |
| </summary> |
| </metric> |
| <metric name="DayOfMonth"> |
| <summary> |
| Event's day of the month (e.g. 1-31) in local time zone. |
| </summary> |
| </metric> |
| <metric name="DayOfWeek" enum="DayOfWeek"> |
| <summary> |
| Event's day of the week in local time zone. Sunday is 0. |
| </summary> |
| </metric> |
| <metric name="DeviceMode"> |
| <summary> |
| Mode of the device (e.g. closed lid, tablet). |
| </summary> |
| </metric> |
| <metric name="DeviceType"> |
| <summary> |
| Type of the device (e.g. laptop, tablet). |
| </summary> |
| </metric> |
| <metric name="DurationOfLastCharge"> |
| <summary> |
| Duratioin of the last time the device was charged in minutes. |
| </summary> |
| </metric> |
| <metric name="DurationRecentAudioPlaying"> |
| <summary> |
| Duration of audio playing in the last 30 minutes (bucketized and in |
| minutes). |
| </summary> |
| </metric> |
| <metric name="DurationRecentVideoPlaying"> |
| <summary> |
| Duration of video playing in the last 30 minutes (bucketized and in |
| minutes). |
| </summary> |
| </metric> |
| <metric name="EventId"> |
| <summary> |
| A unique number that represent order of an event. |
| </summary> |
| </metric> |
| <metric name="HaltFromLastCharge" enum="Boolean"> |
| <summary> |
| Whether there's any shutdown/suspend actions between the last charge and |
| current event. |
| </summary> |
| </metric> |
| <metric name="IsCharging" enum="Boolean"> |
| <summary> |
| Whether the device is being charged or not. |
| </summary> |
| </metric> |
| <metric name="Month" enum="Month"> |
| <summary> |
| Event's month (e.g. Jan-Dec) in local time zone. January is 1. |
| </summary> |
| </metric> |
| <metric name="NumRecentKeyEvents"> |
| <summary> |
| Number of key events in past 30 minutes. |
| </summary> |
| </metric> |
| <metric name="NumRecentMouseEvents"> |
| <summary> |
| Number of mouse events in past 30 minutes. |
| </summary> |
| </metric> |
| <metric name="NumRecentStylusEvents"> |
| <summary> |
| Number of stylus events in past 30 minutes. |
| </summary> |
| </metric> |
| <metric name="NumRecentTouchEvents"> |
| <summary> |
| Number of touch events in past 30 minutes. |
| </summary> |
| </metric> |
| <metric name="Reason" enum="SmartChargingReason"> |
| <summary> |
| Reason for the logging of an event. |
| </summary> |
| </metric> |
| <metric name="ScreenBrightnessPercent"> |
| <summary> |
| Brightness of the screen in percent. |
| </summary> |
| </metric> |
| <metric name="TimeOfTheDay"> |
| <summary> |
| Time of the event in minutes since midnight in the local time zone. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastCharge"> |
| <summary> |
| Time since the last time user unplugged the charger in minutes. |
| </summary> |
| </metric> |
| <metric name="TimezoneDifferenceFromLastCharge"> |
| <summary> |
| Timezone difference from the last charge. It is equal to current_timezone |
| - timezone_from_last_charge. The valid range of time zone value will be |
| -12 (UTC -12:00) to +14 (UTC +14:00). |
| </summary> |
| </metric> |
| <metric name="Voltage"> |
| <summary> |
| Charge voltage in mV. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SMSReceiver"> |
| <owner>goto@chromium.org</owner> |
| <owner>reillyg@chromium.org</owner> |
| <owner>ayui@chromium.org</owner> |
| <owner>yigu@chromium.org</owner> |
| <summary> |
| Records performance metrics for SMSReceiver API. |
| </summary> |
| <metric name="IsCrossOriginFrame" enum="Boolean"> |
| <summary> |
| Flag indicating whether the report comes from a cross-origin frame or not. |
| </summary> |
| </metric> |
| <metric name="Outcome" enum="WebOTPServiceOutcome"> |
| <summary> |
| Records the result of a call to the SmsReceiver API. |
| </summary> |
| </metric> |
| <metric name="SmsParsingStatus" enum="SmsParsingStatus"> |
| <summary> |
| Records the status of parsing an incoming SMS when using the WebOTP API. |
| It records one sample per incoming SMS. |
| </summary> |
| </metric> |
| <metric name="TimeSmsReceiveMs"> |
| <summary> |
| Records the duration from when the API is called to when an SMS has been |
| successfully received. |
| </summary> |
| </metric> |
| <metric name="TimeSuccessMs"> |
| <summary> |
| Records the duration from when the API is called to when the user presses |
| "Allow" to pass the incoming SMS to the site and proceed with |
| the SMS verification flow. |
| </summary> |
| </metric> |
| <metric name="TimeUserCancelMs"> |
| <summary> |
| Records the duration from when the API is called to when the user presses |
| "Deny" to terminate the SMS verification flow. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SSL.MixedContentShown"> |
| <obsolete> |
| Replaced by SSL.MixedContentShown2. Removed in 03/2021. |
| </obsolete> |
| <owner>carlosil@chromium.org</owner> |
| <summary> |
| Logged when mixed content is displayed on a site. |
| </summary> |
| <metric name="Type"> |
| <summary> |
| A value of the MixedContentType enum, detailing the type of mixed content |
| included on the site. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SSL.MixedContentShown2"> |
| <owner>carlosil@chromium.org</owner> |
| <owner>estark@chromium.org</owner> |
| <summary> |
| Logged when mixed content is loaded, differentiated by blockable, |
| optionally-blockable mixed content, and mixed forms. Also tracks when a site |
| with a valid certificate loads a subresource with an invalid certificate. |
| Replaced SSL.MixedContentShown. |
| </summary> |
| <metric name="Type"> |
| <summary> |
| A value of the MixedContentType enum, detailing the type of mixed content |
| included on the site. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SubframeDownload"> |
| <obsolete> |
| Deprecated as of 03/2019. |
| </obsolete> |
| <owner>yaoxia@chromium.org</owner> |
| <summary> |
| Measurement for subframe download. It is only recorded for downloads |
| originated from navigations or from HTML anchor download attributes. |
| </summary> |
| <metric name="HasGesture"> |
| <summary> |
| A boolean denoting whether the download involves a transient user gesture. |
| </summary> |
| </metric> |
| <metric name="HasSandbox"> |
| <summary> |
| A boolean denoting whether the download occurs in a sandboxed browsing |
| context. |
| </summary> |
| </metric> |
| <metric name="IsAdFrame"> |
| <summary> |
| A boolean denoting whether the download occurs in an ad subframe. |
| </summary> |
| </metric> |
| <metric name="IsCrossOrigin"> |
| <summary> |
| A boolean denoting whether the download occurs in a subframe x-origin to |
| the top frame. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SubresourceFilter" singular="True"> |
| <owner>csharrison@chromium.org</owner> |
| <summary> |
| Recorded for page loads where subresource filtering policy was evaluated. |
| </summary> |
| <metric name="ActivationDecision"> |
| <summary> |
| Enum that records the policy decision to activate subresource filtering |
| for a page load. 0 = Unknown, 1 = Activated, 2 = Disabled, 3 = Deprecated |
| value, 4 = URL whitelisted, 5 = Activation conditions not met. 'Activated' |
| indicates that subresource filtering was activated. All other reasons |
| indicate that subresource filtering was not activated. |
| </summary> |
| </metric> |
| <metric name="DryRun"> |
| <summary> |
| Records '1' if subresource filtering was activated in dry run mode. In dry |
| run mode, subresource filtering policy is evaluated against resources |
| loaded on the page, but subresource filtering is not actually applied. |
| </summary> |
| </metric> |
| <metric name="EnforcementRedirectPosition"> |
| <summary> |
| An enum denoting where in the redirect chain there was a URL that matched |
| one of the subresource_filter activation lists, and wasn't marked as |
| warning. See subresource_filter::RedirectPosition for values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="SubresourceRedirect.PublicSrcVideoCompression"> |
| <owner>rajendrant@chromium.org</owner> |
| <owner>mcrouse@chromium.org</owner> |
| <summary> |
| Records coverage information for src videos. Recorded once for every src |
| video that is fetched from network. |
| </summary> |
| <metric name="FullContentLength"> |
| <summary> |
| The full content length of the video retrieved from the first range |
| request for the resource. This full content length represents the total |
| bytes when the entire video is played. The bytes are rounded down to the |
| exponential bucket with factor of 1.3. |
| </summary> |
| </metric> |
| <metric name="SubresourceRedirectResult" |
| enum="SubresourceRedirectRedirectResult"> |
| <summary> |
| Enumerates the different results possible for subresource redirection, |
| such as redirectable or different reasons of ineligibility. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Tab.RendererOOM"> |
| <owner>ssid@chromium.org</owner> |
| <summary> |
| Metrics about renderer OOM, recorded for each detected OOM of renderer |
| process. |
| </summary> |
| <metric name="TimeSinceLastNavigation"> |
| <summary> |
| Duration in MS from when the main frame navigation was triggered to when |
| the tab crashed with OOM. Recorded only on Windows, Android and Chrome OS. |
| We do not have a way to detect OOMs reliably on Linux and Mac. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Tab.Screenshot"> |
| <owner>sayman@chromium.org</owner> |
| <summary> |
| User took one or more screenshots of a page. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred; only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Background.FirstAlertFired"> |
| <owner>chrisha@chromium.org</owner> |
| <owner>lpy@chromium.org</owner> |
| <summary> |
| Collects the duration in MS from when the tab is backgrounded to when a |
| JavaScript alert is fired. Only recorded when the tab is in the background. |
| </summary> |
| <metric name="IsMainFrame"> |
| <summary> |
| Indicates whether the alert is fired from main frame. |
| </summary> |
| </metric> |
| <metric name="TimeFromBackgrounded"> |
| <summary> |
| Duration in MS from when the tab is backgrounded to when alert is fired. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Background.FirstAudioStarts"> |
| <owner>chrisha@chromium.org</owner> |
| <owner>lpy@chromium.org</owner> |
| <summary> |
| Collects the duration in MS from when the tab is backgrounded to when audio |
| starts to play. Only recorded when the tab is in the background. |
| </summary> |
| <metric name="IsMainFrame"> |
| <summary> |
| Indicates whether the audio stream belongs to the main frame. |
| </summary> |
| </metric> |
| <metric name="TimeFromBackgrounded"> |
| <summary> |
| Duration in MS from when the tab is backgrounded to when audio starts to |
| play. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Background.FirstFaviconUpdated"> |
| <owner>chrisha@chromium.org</owner> |
| <owner>lpy@chromium.org</owner> |
| <summary> |
| Collects the duration in MS from when the tab is backgrounded to when the |
| favicon is updated. Only recorded when the tab is in the background. |
| </summary> |
| <metric name="TimeFromBackgrounded"> |
| <summary> |
| Duration in MS from when the tab is backgrounded to when the favicon is |
| updated. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Background.FirstNonPersistentNotificationCreated"> |
| <owner>chrisha@chromium.org</owner> |
| <owner>lpy@chromium.org</owner> |
| <summary/> |
| <metric name="IsMainFrame"> |
| <summary> |
| Indicates whether the notification creation is from the main frame. |
| </summary> |
| </metric> |
| <metric name="TimeFromBackgrounded"> |
| <summary> |
| Duration in MS from when the tab is backgrounded to when a non-persistent |
| notification is created. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Background.FirstTitleUpdated"> |
| <owner>chrisha@chromium.org</owner> |
| <owner>lpy@chromium.org</owner> |
| <summary> |
| Collects the duration in MS from when the tab is backgrounded to when the |
| title is updated. Only recorded when the tab is in the background. |
| </summary> |
| <metric name="TimeFromBackgrounded"> |
| <summary> |
| Duration in MS from when the tab is backgrounded to when the title is |
| updated. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Background.ForegroundedOrClosed"> |
| <owner>chrisha@chromium.org</owner> |
| <summary> |
| Collects the duration in MS from when the tab is backgrounded to when it is |
| brought to foreground or closed. |
| </summary> |
| <metric name="IsDiscarded"> |
| <summary> |
| Boolean value indicating whether or not the tab is discarded since it was |
| backgrounded. |
| </summary> |
| </metric> |
| <metric name="IsForegrounded"> |
| <summary> |
| Boolean value indicating whether or not it's triggered because the tab is |
| brought to foreground again. |
| </summary> |
| </metric> |
| <metric name="LabelId"> |
| <summary> |
| An int64 random number generated when TabManager.TabMetric is logged. The |
| same number is also logged here, so that feature label can be paired. |
| </summary> |
| </metric> |
| <metric name="MRUIndex"> |
| <obsolete> |
| Deprecated 10/2019 in favor MRUIndex in TabMetrics. |
| </obsolete> |
| <summary> |
| Index of the tab in most-recently-used order. A value of N means there are |
| N tabs more recently used than the one that is being foregrounded or |
| closed. |
| </summary> |
| </metric> |
| <metric name="SequenceId"> |
| <obsolete> |
| Deprecated 11/2018 in favor LabelId. |
| </obsolete> |
| <summary> |
| This metric is obsolete in 11/2018 in favor of LabelId for pairing with |
| Tabmanager.TabMetrics event. The sequence of this event and |
| TabManager.TabMetrics event in the current session. Incremented by 1 each |
| time one of the two events is logged to provide an ordering of events. |
| </summary> |
| </metric> |
| <metric name="TimeFromBackgrounded"> |
| <summary> |
| Duration in MS from when the tab is backgrounded to when it is brought to |
| foreground or closed. |
| </summary> |
| </metric> |
| <metric name="TotalTabCount"> |
| <obsolete> |
| Deprecated 10/2019 in favor TotalTabCount in TabMetrics. |
| </obsolete> |
| <summary> |
| Total number of tabs open across all non-incognito browser windows. Helps |
| contextualize the MRUIndex value. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="TabManager.BackgroundTabOpening.ForegroundTab.ExpectedTaskQueueingDurationInfo"> |
| <obsolete> |
| Removed June 2020. |
| </obsolete> |
| <owner>chrisha@chromium.org</owner> |
| <summary> |
| Collects the expected queueing duration of tasks and metadata for the |
| foreground tab during a background tab opening session (the duration of time |
| from when the browser starts to open background tabs until the time the |
| browser has finished loading those tabs or otherwise decided to stop loading |
| them). The event is not recorded when the session overlaps with session |
| restore. This event is sampled when there is only one backgrounded loading |
| or pending tab and all events are collected when there are 2 or more |
| backgrounded loading or pending tabs. In this way, we cap the volume while |
| keeping all interesting data. Therefore, aggregated tab counts over multiple |
| events are invalid. |
| </summary> |
| <metric name="BackgroundTabLoadingCount"> |
| <summary> |
| Number of background tabs that are loading. |
| </summary> |
| </metric> |
| <metric name="BackgroundTabOpeningSessionId"> |
| <summary> |
| The ID of this background tab opening session. |
| </summary> |
| </metric> |
| <metric name="BackgroundTabPendingCount"> |
| <summary> |
| Number of background tabs that are pending. |
| </summary> |
| </metric> |
| <metric name="ExpectedTaskQueueingDuration"> |
| <summary> |
| Duration in MS for expected task queueing duration. The metric reflects |
| the responsiveness of a tab. A lower value means the tab will respond to |
| inputs faster. This metric is equal to |
| RendererScheduler.ExpectedTaskQueueingDuration. It is emitted once for all |
| tasks in each 1000-ms window. |
| </summary> |
| </metric> |
| <metric name="SequenceId"> |
| <summary> |
| The ID of this event's sequence in current background tab opening session. |
| </summary> |
| </metric> |
| <metric name="SystemTabCount"> |
| <summary> |
| Number of all tabs of the system, which includes all browser windows. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Experimental.BackgroundTabOpening.TabSwitchLoadStopped" |
| singular="True"> |
| <obsolete> |
| Removed 11/2022 because it wasn't actively used. |
| </obsolete> |
| <owner>zhenw@chromium.org</owner> |
| <summary> |
| Collects data when a tab is switched to from another tab and then finishes |
| loading in the foreground during a background tab opening session (the |
| duration of time from when the browser starts to open background tabs until |
| the time the browser has finished loading those tabs or otherwise decided to |
| stop loading them). The event is only recorded when a tab is switched to |
| from another tab within the same tabstrip. As a result, the initial |
| foreground tab is not included in this event since it was not switched to |
| from another tab. The event is not recorded when the session overlaps with |
| session restore. |
| </summary> |
| <metric name="BackgroundTabLoadingCount"> |
| <summary> |
| Number of background tabs that are loading. |
| </summary> |
| </metric> |
| <metric name="BackgroundTabOpeningSessionId"> |
| <summary> |
| The ID of this background tab opening session. |
| </summary> |
| </metric> |
| <metric name="BackgroundTabPendingCount"> |
| <summary> |
| Number of background tabs that are pending. |
| </summary> |
| </metric> |
| <metric name="SequenceId"> |
| <summary> |
| The ID of this event's sequence in current background tab opening session. |
| </summary> |
| </metric> |
| <metric name="SystemTabCount"> |
| <summary> |
| Number of all tabs of the system, which includes all browser windows. |
| </summary> |
| </metric> |
| <metric name="TabSwitchLoadTime"> |
| <summary> |
| Tab switch load time in MS. It is defined as the time between when the |
| user switches to a backround tab, and the time when that tab finishes |
| loading in the foreground. If the user switches away before the tab |
| finishes loading, a metric will not be recorded unless the user switches |
| back, in which case the tab switch load time is measured from that point |
| in time. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Experimental.SessionRestore.ForegroundTab.PageLoad" |
| singular="True"> |
| <obsolete> |
| Removed 11/2022 because it wasn't actively used. |
| </obsolete> |
| <owner>zhenw@chromium.org</owner> |
| <summary> |
| Collects the tab counts for the foreground tab page load during session |
| restore. The event is not recorded when the session overlaps with background |
| tab opening. This event should be combined with PageLoad event for analysis. |
| </summary> |
| <metric name="SessionRestoreTabCount"> |
| <summary> |
| Number of tabs that are restored. |
| </summary> |
| </metric> |
| <metric name="SystemTabCount"> |
| <summary> |
| Number of all tabs of the system, which includes all browser windows. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.Experimental.SessionRestore.TabSwitchLoadStopped" |
| singular="True"> |
| <owner>zhenw@chromium.org</owner> |
| <summary> |
| Collects data when a tab is switched to from another tab and then finishes |
| loading in the foreground during session restore The event is only recorded |
| when a tab is switched to from another tab within the same tabstrip. As a |
| result, the initial foreground tab is not included in this event since it |
| was not switched to from another tab. The event is not recorded when the |
| session overlaps with background tab opening. |
| </summary> |
| <metric name="SequenceId"> |
| <summary> |
| The ID of this event's sequence in current session restore session. |
| </summary> |
| </metric> |
| <metric name="SessionRestoreSessionId"> |
| <summary> |
| The ID of this session restore session. |
| </summary> |
| </metric> |
| <metric name="SessionRestoreTabCount"> |
| <summary> |
| Number of tabs that are restored. |
| </summary> |
| </metric> |
| <metric name="SystemTabCount"> |
| <summary> |
| Number of all tabs of the system, which includes all browser windows. |
| </summary> |
| </metric> |
| <metric name="TabSwitchLoadTime"> |
| <summary> |
| Tab switch load time in MS. It is defined as the time between when the |
| user switches to a background tab, and the time when that tab finishes |
| loading in the foreground. If the user switches away before the tab |
| finishes loading, a metric will not be recorded unless the user switches |
| back, in which case the tab switch load time is measured from that point |
| in time. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.LifecycleStateChange"> |
| <owner>chrisha@chromium.org</owner> |
| <owner>fdoray@chromium.org</owner> |
| <summary> |
| Collects information about when and why a lifecycle state change was |
| attempted, and information about the outcome of the attempt. |
| </summary> |
| <metric name="FailureGlobalBlacklist" enum="Boolean"> |
| <obsolete> |
| Deprecated 06/2020. Replaced with FailureGlobalDisallowlist. |
| </obsolete> |
| <summary> |
| Boolean indicating that the tab was explicitly opted out of the |
| intervention via the global disallowlist. |
| </summary> |
| </metric> |
| <metric name="FailureGlobalDisallowlist" enum="Boolean"> |
| <summary> |
| Boolean indicating that the tab was explicitly opted out of the |
| intervention via the global disallowlist. |
| </summary> |
| </metric> |
| <metric name="FailureHeuristicAudio" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the origin |
| has historically been observed emitting audio while in the background. |
| </summary> |
| </metric> |
| <metric name="FailureHeuristicFavicon" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the origin |
| has historically been observed updating its favicon while in the |
| background. |
| </summary> |
| </metric> |
| <metric name="FailureHeuristicInsufficientObservation" enum="Boolean"> |
| <summary> |
| Boolean indicating that the site is still being observed locally in order |
| to determine which features are in use. In the meantime, it is protected |
| from this intervention. |
| </summary> |
| </metric> |
| <metric name="FailureHeuristicNotifications" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the origin |
| has historically been observed making use of notifications while in the |
| background. |
| </summary> |
| </metric> |
| <metric name="FailureHeuristicTitle" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the origin |
| has historically been observed updating its tab title while in the |
| background. |
| </summary> |
| </metric> |
| <metric name="FailureLifecyclesEnterprisePolicyOptOut" enum="Boolean"> |
| <summary> |
| Boolean indicating that the browser was explicitly opted out of the |
| intervention via enterprise policy. |
| </summary> |
| </metric> |
| <metric name="FailureLifecyclesFeaturePolicyOptOut"> |
| <obsolete> |
| Deprecated 08/2019. Replaced with FailureOriginTrialOptOut. |
| </obsolete> |
| <summary> |
| Boolean indicating that the tab explicitly opted out of the intervention |
| via feature policy. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateCapturing" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently capturing user media (making use of webcam or microphone, for |
| example). |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateDesktopCapture" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently capturing a window or screen. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateDevToolsOpen" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently using DevTools. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateExtensionDisallowed" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed by an extension. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateFormEntry" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab |
| currently contains text form entry. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateHasNotificationsPermission" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab |
| has the permission to use notifications. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateIsPDF" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently hosting a PDF. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateMirroring" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently being mirrored (casting its contents, for example). |
| </summary> |
| </metric> |
| <metric name="FailureLiveStatePlayingAudio" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently playing audio. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateSharingBrowsingInstance" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| sharing its BrowsingInstance with at least one other tab. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateUsingBluetooth" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently connected to at least one bluetooth device. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateUsingIndexedDBLock" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently holding at least one IndexedDB lock. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateUsingWebLock" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently holding at least one WebLock. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateUsingWebSockets" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently using WebSockets. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateUsingWebUSB" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently using WebUSB. |
| </summary> |
| </metric> |
| <metric name="FailureLiveStateVisible" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| currently visible. |
| </summary> |
| </metric> |
| <metric name="FailureLiveWebApp" enum="Boolean"> |
| <summary> |
| Boolean indicating that the intervention was disallowed because the tab is |
| a web application window. |
| </summary> |
| </metric> |
| <metric name="FailureOriginTrialOptOut" enum="Boolean"> |
| <summary> |
| Boolean indicating that the tab explicitly opted out of the intervention |
| via origin trial. |
| </summary> |
| </metric> |
| <metric name="FailureOriginTrialUnknown" enum="Boolean"> |
| <summary> |
| Boolean indicating that the tab did not report its origin trial |
| opt-in/opt-out yet. |
| </summary> |
| </metric> |
| <metric name="LifecycleStateChangeReason"> |
| <summary> |
| The reason the lifecycle state change was attempted. This corresponds to |
| the LifecycleStateChangeReason enumeration in lifecycle_unit_state.mojom. |
| </summary> |
| </metric> |
| <metric name="NewLifecycleState"> |
| <summary> |
| The lifecycle state the tab will be in after the state change. Corresponds |
| to a value from the LifecycleUnitState enum defined in |
| lifecycle_unit_state.mojom. |
| </summary> |
| </metric> |
| <metric name="OldLifecycleState"> |
| <summary> |
| The lifecycle state the tab was in prior to the state change. Corresponds |
| to a value from the LifecycleUnitState enum defined in |
| lifecycle_unit_state.mojom. |
| </summary> |
| </metric> |
| <metric name="Outcome" enum="Boolean"> |
| <summary> |
| Whether or not the state change was successful. The various Failure and |
| Success booleans encode the actual reasons for this outcome. Note that |
| multiple success and failure reasons may be encoded for a single decision. |
| The presence of any failure bit indicates a negative outcome. If only |
| success bits are present the outcome is positive. |
| </summary> |
| </metric> |
| <metric name="SuccessGlobalAllowlist" enum="Boolean"> |
| <summary> |
| Boolean indicating that the tab was explicitly opted in to the |
| intervention via the global allowlist. |
| </summary> |
| </metric> |
| <metric name="SuccessGlobalWhitelist" enum="Boolean"> |
| <obsolete> |
| Deprecated 06/2020. Replaced with SuccessGlobalAllowlist. |
| </obsolete> |
| <summary> |
| Boolean indicating that the tab was explicitly opted in to the |
| intervention via the global allowlist. |
| </summary> |
| </metric> |
| <metric name="SuccessHeuristic" enum="Boolean"> |
| <summary> |
| Boolean indicating that the tab was deemed safe for the intervention via |
| local observations and heuristics. |
| </summary> |
| </metric> |
| <metric name="SuccessLifecyclesFeaturePolicyOptIn"> |
| <obsolete> |
| Deprecated 08/2019. Replaced with SuccessOriginTrialOptIn. |
| </obsolete> |
| <summary> |
| Boolean indicating that the tab explicitly opted in to the intervention |
| via feature policy. |
| </summary> |
| </metric> |
| <metric name="SuccessOriginTrialOptIn" enum="Boolean"> |
| <summary> |
| Boolean indicating that the tab explicitly opted in to the intervention |
| via origin trial. |
| </summary> |
| </metric> |
| <metric name="TimeSinceNavigationMs"> |
| <summary> |
| The time elapsed (in milliseconds) since the top-level navigation was |
| committed that loaded this tab's content. |
| </summary> |
| </metric> |
| <metric name="TimeSinceVisibilityStateChangeMs"> |
| <summary> |
| The amount of time that has passed (in milliseconds) since the last |
| visibility state change. |
| </summary> |
| </metric> |
| <metric name="TransitionForced" enum="Boolean"> |
| <summary> |
| This is set if the transition to the new lifecycle state was forced by the |
| browser because the content took too long to respond to the lifecycle |
| event. |
| </summary> |
| </metric> |
| <metric name="VisibilityState"> |
| <summary> |
| The current visibility state. This is an integer value corresponding to |
| the enumeration in content/public/browser/visibility.h. |
| </summary> |
| </metric> |
| </event> |
| |
| <event |
| name="TabManager.SessionRestore.ForegroundTab.ExpectedTaskQueueingDurationInfo"> |
| <owner>zhenw@chromium.org</owner> |
| <summary> |
| Collects the expected queueing duration of tasks and metadata for the |
| foreground tab during session restore. The event is not recorded when the |
| session overlaps with background tab opening. The event is not recorded when |
| there is only one restored tab, in which case, there is no background |
| restored tab and we are not interested at that. In this way, we cap the |
| volume while keeping all interesting data. |
| </summary> |
| <metric name="ExpectedTaskQueueingDuration"> |
| <summary> |
| Duration in MS for expected task queueing duration. The metric reflects |
| the responsiveness of a tab. A lower value means the tab will respond to |
| inputs faster. This metric is equal to |
| RendererScheduler.ExpectedTaskQueueingDuration. It is emitted once for all |
| tasks in each 1000-ms window. |
| </summary> |
| </metric> |
| <metric name="SequenceId"> |
| <summary> |
| The ID of this event's sequence in current session restore session. |
| </summary> |
| </metric> |
| <metric name="SessionRestoreSessionId"> |
| <summary> |
| The ID of this session restore session. |
| </summary> |
| </metric> |
| <metric name="SessionRestoreTabCount"> |
| <summary> |
| Number of tabs that are restored. |
| </summary> |
| </metric> |
| <metric name="SystemTabCount"> |
| <summary> |
| Number of all tabs of the system, which includes all browser windows. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.TabLifetime" singular="True"> |
| <owner>chrisha@chromium.org</owner> |
| <summary> |
| Collected when a tab is closed, at most once per source. |
| </summary> |
| <metric name="TimeSinceNavigation"> |
| <summary> |
| The time when the tab was closed, expressed as the amount of time in MS |
| that has elapsed since the main frame navigation providing the content of |
| the tab. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.TabMetrics"> |
| <owner>michaelpg@chromium.org</owner> |
| <summary> |
| Collects tab information for a tab after navigations, activations and close |
| events. |
| </summary> |
| <metric name="ContentType"> |
| <summary> |
| Obsolete. Enumeration for the MIME type of the page. Values are enumerated |
| in metrics::TabMetricsEvent::ContentType. |
| </summary> |
| </metric> |
| <metric name="DefaultProtocolHandler"> |
| <summary> |
| Obsolete. Schemes that a page from this page's origin is the default |
| protocol handler for, meaning the user has chosen to accept (or the |
| handler was preinstalled by Chrome). The metric is repeated, occurring for |
| each such protocol handler, and uses values from |
| metrics::TabMetricsEvent::Scheme. |
| </summary> |
| </metric> |
| <metric name="HasBeforeUnloadHandler"> |
| <summary> |
| Boolean value indicating whether the page has a beforeunload JavaScript |
| event handler. |
| </summary> |
| </metric> |
| <metric name="HasFormEntry"> |
| <summary> |
| Boolean value indicating whether the page has any user-input text. |
| </summary> |
| </metric> |
| <metric name="IsExtensionProtected"> |
| <summary> |
| Obsolete. True if an extension has marked this tab as non-discardable via |
| the chrome.tabs.update() extension API. |
| </summary> |
| </metric> |
| <metric name="IsPinned"> |
| <summary> |
| Boolean value indicating whether the tab is pinned in the tabstrip. |
| </summary> |
| </metric> |
| <metric name="KeyEventCount"> |
| <summary> |
| Number of key events that were sent to the page. |
| </summary> |
| </metric> |
| <metric name="LabelId"> |
| <summary> |
| An int64 random number generated at logging time. The same number will |
| also be logged to the TabManager.Background.ForegroundedOrClosed event, so |
| that feature label can be paired. |
| </summary> |
| </metric> |
| <metric name="MouseEventCount"> |
| <summary> |
| Number of mouse events that were sent to the page. |
| </summary> |
| </metric> |
| <metric name="MRUIndex"> |
| <summary> |
| Index of the tab in most-recently-used order. A value of N means there are |
| N tabs more recently used than the one that is being foregrounded or |
| closed. |
| </summary> |
| </metric> |
| <metric name="NavigationEntryCount"> |
| <summary> |
| Number of navigation entries in the tab's NavigationController. |
| Corresponds to the size of the tab's back/forward list. |
| </summary> |
| </metric> |
| <metric name="NumReactivationBefore"> |
| <summary> |
| Number of reactivations that this tab had till now. |
| </summary> |
| </metric> |
| <metric name="PageTransitionCoreType"> |
| <summary> |
| Type of the page transition for this navigation. Uses the core values from |
| ui::PageTransition. |
| </summary> |
| </metric> |
| <metric name="PageTransitionFromAddressBar"> |
| <summary> |
| True if the page transition came from interacting with the address bar, |
| such as by typing a URL or performing a search. |
| </summary> |
| </metric> |
| <metric name="PageTransitionIsRedirect"> |
| <summary> |
| True if the page transition type is a redirect, in which case the |
| PageTransition type may not be accurate. |
| </summary> |
| </metric> |
| <metric name="QueryId"> |
| <summary> |
| An int64 random number generated at query time of |
| TabManager::GetSortedLifecycleUnitsFromTabRanker. Tabs with the same |
| QueryId will be later on combined in one full list for further analysis. |
| </summary> |
| </metric> |
| <metric name="SequenceId"> |
| <obsolete> |
| Deprecated 11/2018 in favor LabelId. |
| </obsolete> |
| <summary> |
| This metric is obsolete in 11/2018 in favor of LabelId for pairing with |
| Tabmanager.ForegroundedOrClosed event. The sequence of this event and |
| TabManager.ForegroundedOrClosed event in the current session. Incremented |
| by 1 each time one of the two events is logged to provide an ordering of |
| events. |
| </summary> |
| </metric> |
| <metric name="SiteEngagementScore"> |
| <summary> |
| Site engagement score in the range [0, 100], rounded down to a multiple of |
| 10 to limit granularity. |
| </summary> |
| </metric> |
| <metric name="TimeFromBackgrounded"> |
| <summary> |
| Duration in MS from when the tab is backgrounded to when it is brought to |
| foreground or closed. |
| </summary> |
| </metric> |
| <metric name="TotalTabCount"> |
| <summary> |
| Total number of tabs open across all non-incognito browser windows. Helps |
| contextualize the MRUIndex value. |
| </summary> |
| </metric> |
| <metric name="TouchEventCount"> |
| <summary> |
| Number of touch events that were sent to the page. |
| </summary> |
| </metric> |
| <metric name="WasRecentlyAudible"> |
| <summary> |
| Boolean value indicating whether the tab has played audio within the last |
| two seconds. |
| </summary> |
| </metric> |
| <metric name="WindowId"> |
| <obsolete> |
| Deprecated 11/2018 in favor of putting window features directly in this |
| event. |
| </obsolete> |
| <summary> |
| WindowId of the WindowMetrics entry corresponding to the browser window |
| containing this tab. This metrics is not populated from 11/2018 because we |
| don't need to join this event with other WindowMetrics any more. |
| </summary> |
| </metric> |
| <metric name="WindowIsActive"> |
| <summary> |
| Boolean value indicating whether the window is the active (frontmost) |
| window. |
| </summary> |
| </metric> |
| <metric name="WindowShowState"> |
| <summary> |
| Enumeration of the window show state, such as fullscreen or minimized. |
| Values are enumerated in metrics::WindowMetricsEvent::ShowState. |
| </summary> |
| </metric> |
| <metric name="WindowTabCount"> |
| <summary> |
| Number of tabs in the tab strip. Rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 1.5). Will be 1 for windows with |
| only one top-level WebContents, such as app windows. |
| </summary> |
| </metric> |
| <metric name="WindowType"> |
| <summary> |
| Enumeration for the type of the window. Values are enumerated in |
| metrics::WindowMetricsEvent::Type. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TabManager.WindowMetrics"> |
| <owner>michaelpg@chromium.org</owner> |
| <summary> |
| Collects information about a browser or app window to associate with the |
| TabManager.TabMetrics entries for tabs in that window. |
| </summary> |
| <metric name="IsActive"> |
| <summary> |
| Whether the window is the active (frontmost) window. |
| </summary> |
| </metric> |
| <metric name="ShowState"> |
| <summary> |
| Enumeration of the window show state, such as fullscreen or minimized. |
| Values are enumerated in metrics::WindowMetricsEvent::ShowState. |
| </summary> |
| </metric> |
| <metric name="TabCount"> |
| <summary> |
| Number of tabs in the tab strip. Rounded down to the nearest exponential |
| bucket (with a bucket spacing factor of 1.5). Will be 1 for windows with |
| only one top-level WebContents, such as app windows. |
| </summary> |
| </metric> |
| <metric name="Type"> |
| <summary> |
| Enumeration for the type of the window. Values are enumerated in |
| metrics::WindowMetricsEvent::Type. |
| </summary> |
| </metric> |
| <metric name="WindowId"> |
| <summary> |
| Session ID of the browser or app window this entry represents, unique for |
| the browsing session. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TopToolbar.Share"> |
| <owner>nyquist@chromium.org</owner> |
| <owner>ssid@chromium.org</owner> |
| <summary> |
| User pressed the 'Share' in the top toolbar, which shares the current URL. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred; only records true values. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TouchToFill.Shown"> |
| <owner>kazinova@google.com</owner> |
| <owner>fhorschig@chromium.org</owner> |
| <owner>kolos@chromium.org</owner> |
| <summary> |
| Recorded when a user takes an action on the Touch To Fill sheet. |
| </summary> |
| <metric name="UserAction" enum="TouchToFill.UserAction"> |
| <summary> |
| The action a user took when interacting with the Touch To Fill sheet. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TouchToFill.SubmissionReadiness"> |
| <owner>kolos@chromium.org</owner> |
| <owner>fhorschig@chromium.org</owner> |
| <summary> |
| Recorded when the Touch To Fill sheet is shown to the user. |
| </summary> |
| <metric name="SubmissionReadiness" enum="TouchToFill.SubmissionReadiness"> |
| <summary> |
| A given form's state (e.g. there are empty fields in the form, or there |
| are only two fields and they both are filled by Chrome) that indicates |
| whether the form is ready for submission. Recorded when a Touch To Fill |
| sheet is shown for that form. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TouchToFill.TimeToSuccessfulLogin"> |
| <owner>kolos@chromium.org</owner> |
| <owner>fhorschig@chromium.org</owner> |
| <summary> |
| Recorded when a successful login is detected after filling by the Touch To |
| Fill. |
| </summary> |
| <metric name="TimeToSuccessfulLogin"> |
| <summary> |
| The time in milliseconds between filling by the Touch To Fill and a |
| successful submission (To ensure filling and submitting correspond to each |
| other, the usernames should coincide and the timestamps should be within |
| one minute. A successful login after a failed submission or manual typing |
| is not reported). Used to compare the times when automated submission is |
| enabled and disabled. Thus, we measure the time saved for a user. Recorded |
| when the password manager detects that the login was successful. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Translate"> |
| <owner>hamelphi@chromium.org</owner> |
| <summary> |
| Metrics related to a Translate event. These metrics are described in |
| TranslateEventProto. |
| </summary> |
| <metric name="AcceptCount"/> |
| <metric name="Country"/> |
| <metric name="DeclineCount"/> |
| <metric name="EventType"/> |
| <metric name="IgnoreCount"/> |
| <metric name="RankerResponse"/> |
| <metric name="RankerVersion"/> |
| <metric name="SourceLanguage" semantic_type="ST_DEMOGRAPHIC_INFO"/> |
| <metric name="TargetLanguage" semantic_type="ST_DEMOGRAPHIC_INFO"/> |
| </event> |
| |
| <event name="TranslatePageLoad"> |
| <owner>curranmax@chromium.org</owner> |
| <owner>megjablon@chromium.org</owner> |
| <owner>chrome-language@google.com</owner> |
| <summary> |
| Summary of the user's interaction with Translate from the beginning of the |
| page load to when the event is recorded. This event is recorded when a page |
| load is completed and every time that Chrome is backgrounded during the |
| course of the page load. This means we can record multiple events for a |
| single page load, but it guarantees that we will still record data in |
| instances where the user backgrounds then kills Chrome. |
| </summary> |
| <metric name="FinalSourceLanguage" semantic_type="ST_DEMOGRAPHIC_INFO" |
| enum="LocaleCodeISO639"> |
| <summary> |
| The source language at the time the event is recorded. In most cases this |
| will match the initial source language, but the user can change the source |
| language manually if they want. Note that the semantic_type attribute is |
| included in order to remain consistent with the previous Translate UKM |
| proto. |
| </summary> |
| </metric> |
| <metric name="FinalState" enum="TranslateState"> |
| <summary> |
| At the time this event is recorded, the state of Translate. This includes |
| whether the page is translated or not and if no UI is shown, just the |
| omnibox icon is shown, or the full translate UI is shown. |
| </summary> |
| </metric> |
| <metric name="FinalTargetLanguage" semantic_type="ST_DEMOGRAPHIC_INFO" |
| enum="LocaleCodeISO639"> |
| <summary> |
| The target language at the time the event is recorded. In most cases this |
| will match the initial target language, but the user can change the target |
| language manually if they want. Note that the semantic_type attribute is |
| included in order to remain consistent with the previous Translate UKM |
| proto. |
| </summary> |
| </metric> |
| <metric name="FirstTranslateError" enum="TranslateError"> |
| <summary> |
| The first error to occur within Translate for this page load. |
| </summary> |
| </metric> |
| <metric name="FirstUIInteraction" enum="TranslateUIInteraction"> |
| <summary> |
| The user's first interaction with the Translate UI. |
| </summary> |
| </metric> |
| <metric name="HTMLContentLanguage" semantic_type="ST_DEMOGRAPHIC_INFO" |
| enum="LocaleCodeISO639"> |
| <summary> |
| The HTML language content attribute specified by the document. Note that |
| the semantic_type attribute is included in order to remain consistent with |
| the previous Translate UKM proto. |
| </summary> |
| </metric> |
| <metric name="HTMLDocumentLanguage" semantic_type="ST_DEMOGRAPHIC_INFO" |
| enum="LocaleCodeISO639"> |
| <summary> |
| The HTML language attribute specified by the document. Note that the |
| semantic_type attribute is included in order to remain consistent with the |
| previous Translate UKM proto. |
| </summary> |
| </metric> |
| <metric name="InitialSourceLanguage" semantic_type="ST_DEMOGRAPHIC_INFO" |
| enum="LocaleCodeISO639"> |
| <summary> |
| The initial source language that Translate determines for the page. Note |
| that the semantic_type attribute is included in order to remain consistent |
| with the previous Translate UKM proto. |
| </summary> |
| </metric> |
| <metric name="InitialSourceLanguageInContentLanguages" enum="Boolean"> |
| <summary> |
| Whether or not the initial source language is in the user's never |
| translate language list. By default the UI language, languages the user |
| has translated to, and languages added to the content languages are on the |
| never tranlsate list. However, users can add or remove languages manually |
| as well. |
| </summary> |
| </metric> |
| <metric name="InitialState" enum="TranslateState"> |
| <summary> |
| At the beginning of the page load, the state of Translate. This includes |
| whether the page is translated or not and if no UI is shown, just the |
| omnibox icon is shown, or the full translate UI is shown. |
| </summary> |
| </metric> |
| <metric name="InitialTargetLanguage" semantic_type="ST_DEMOGRAPHIC_INFO" |
| enum="LocaleCodeISO639"> |
| <summary> |
| The initial target language that Translate thinks it should translate to. |
| Note that the semantic_type attribute is included in order to remain |
| consistent with the previous Translate UKM proto. |
| </summary> |
| </metric> |
| <metric name="MaxTimeToTranslate"> |
| <summary> |
| Across all translations during this page load, the maximum amount of time |
| (in milliseconds) it took to translate the page. |
| </summary> |
| </metric> |
| <metric name="ModelDetectedLanguage" semantic_type="ST_DEMOGRAPHIC_INFO" |
| enum="LocaleCodeISO639"> |
| <summary> |
| The language that was estimated by the language model based on the page's |
| content. Note that the semantic_type attribute is included in order to |
| remain consistent with the previous Translate UKM proto. |
| </summary> |
| </metric> |
| <metric name="ModelDetectionReliabilityScore"> |
| <summary> |
| The score, or confidence, of the language detection model's prediction |
| about the language of the page content. The score is between 0 and 100, |
| higher means more confident. |
| </summary> |
| </metric> |
| <metric name="NumReversions"> |
| <summary> |
| The number of times a translation was reverted. |
| </summary> |
| </metric> |
| <metric name="NumTargetLanguageChanges"> |
| <summary> |
| The number of times that the target language was changed by the user over |
| the course of this page load. |
| </summary> |
| </metric> |
| <metric name="NumTranslateErrors"> |
| <summary> |
| The number of errors to occur within Translate for this page load. |
| </summary> |
| </metric> |
| <metric name="NumTranslations"> |
| <summary> |
| The number of times the page was translated. |
| </summary> |
| </metric> |
| <metric name="NumUIInteractions"> |
| <summary> |
| The number of times that the user interacts with the Translate UI. |
| </summary> |
| </metric> |
| <metric name="RankerDecision" enum="TranslateRankerDecision"> |
| <summary> |
| Decision of the Ranker whether to show the UI or not. |
| </summary> |
| </metric> |
| <metric name="RankerVersion"> |
| <summary> |
| Version of Ranker used for this page load. |
| </summary> |
| </metric> |
| <metric name="SequenceNumber"> |
| <summary> |
| In case multiple events are logged for one page load, we track the |
| sequence in the order each event is logged. |
| </summary> |
| </metric> |
| <metric name="TotalTimeNotTranslated"> |
| <summary> |
| The amount of time (in seconds) this page was in the foreground and not |
| translated. |
| </summary> |
| </metric> |
| <metric name="TotalTimeTranslated"> |
| <summary> |
| The amount of time (in seconds) this page was in the foreground and |
| translated. |
| </summary> |
| </metric> |
| <metric name="TriggerDecision" enum="TranslateTriggerDecision"> |
| <summary> |
| The highest priority trigger that determined the initial state of |
| Translate for this page load. |
| </summary> |
| </metric> |
| <metric name="WasContentEmpty" enum="Boolean"> |
| <summary> |
| Whether the page content used to detect the page language was empty or |
| not. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="TrustedWebActivity.LocationDelegation" singular="True"> |
| <owner>eirage@chromium.org</owner> |
| <owner>peconn@chromium.org</owner> |
| <summary> |
| Records when a site running in Trusted Web Activity requests geolocation. |
| </summary> |
| <metric name="Enrolled" enum="Boolean"> |
| <summary> |
| Whether the Trusted Web Activity client app enrolled location delegation. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="TrustedWebActivity.Open" singular="True"> |
| <owner>peconn@chromium.org</owner> |
| <summary> |
| Collected when a page is opened in a Trusted Web Activity. |
| </summary> |
| <metric name="HasOccurred" enum="Boolean"> |
| <summary> |
| A boolean signaling that the event has occurred (typically only records |
| true values). |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="TrustedWebActivity.QualityEnforcementViolation" singular="True"> |
| <owner>eirage@chromium.org</owner> |
| <owner>peconn@chromium.org</owner> |
| <summary> |
| Records when Trusted Web Activity launches or navigates to a site that |
| violates the quality criteria. |
| </summary> |
| <metric name="ViolationType" |
| enum="TrustedWebActivityQualityEnforcementViolationType"> |
| <summary> |
| An enum that records the type of the quality criteria. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Unload" singular="True"> |
| <owner>kdillon@chromium.org</owner> |
| <summary> |
| Metrics associated with a unloading in preparation for a navigation. |
| </summary> |
| <metric name="BeforeUnloadDuration"> |
| <summary> |
| Measures the time in milliseconds of running the beforeunload handlers for |
| a page. If the beforeunloads are dispatched from the browser, this reports |
| the longest running one since these handlers will be run in parallel when |
| the page has frames in different processes. If the navigation is renderer |
| initiated, it will be the duration of running beforeunload handlers in the |
| navigating frame and its local descendants in the renderer plus any |
| latency caused by dispatching beforeunloads to remote frames from the |
| browser. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="BeforeUnloadQueueingDuration"> |
| <summary> |
| Measures the time in milliseconds from when the browser sends the request |
| to run beforeunload to the renderer to when the renderer begins |
| dispatching the handlers. For browser-initiated navigations, we report the |
| queueing duration of the beforeunloads that took the longest since they |
| are dispatched in parallel to remote and local frames. For renderer- |
| initiated navigations this metric will only be filled in if we dispatched |
| beforeunloads from the browser to remote frames which we had to wait on. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="BeforeUnloadToCommit.CrossProcess"> |
| <summary> |
| Measures the time in milliseconds from when the browser sends the request |
| to dispatch before unload handlers (for browser-intitated navigations) or |
| from when the renderer started running before unload handlers (for |
| renderer-initiated navigations) to when the commit navigation was sent to |
| the renderer process. For cross-process navigations this represents the |
| total amount of time the navigation is blocked since it was initiated. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="BeforeUnloadToCommit.SameProcess"> |
| <summary> |
| Measures the time in milliseconds from when the browser sends the request |
| to dispatch before unload handlers (for browser-intitated navigations) or |
| from when the renderer started running before unload handlers (for |
| renderer-initiated navigations) to when the navigation was committed. For |
| same-process navigations this represents the total amount of time the |
| navigation is blocked since it was initiated. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UnloadDuration"> |
| <summary> |
| Measures the time in milliseconds to run the unload handlers in the old |
| document where the navigation was committed. Only records for same-process |
| navigations since there are no unload handlers to be run in the new |
| process during a cross-process navigation. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="UnloadQueueingDuration"> |
| <summary> |
| Measures the time in milliseconds from when the browser sends the commit |
| navigation request to the renderer to when the renderer dispatches unload |
| events. Only records for same-process navigations since unload handlers |
| are run in a different process for cross-process navigations. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="UserActivity"> |
| <owner>jiameng@chromium.org</owner> |
| <summary> |
| Collects user activity events after staying idle for a short period of time. |
| </summary> |
| <metric name="BatteryPercent"> |
| <summary> |
| Percentage of battery, bucketed to 5 percents, i.e. [0, 5%) is mapped to |
| 0, [5%, 10%) is mapped to 5 etc. |
| </summary> |
| </metric> |
| <metric name="DeviceManagement"> |
| <summary> |
| An enum representing whether the device is managed, defined in |
| |ash::power::ml::UserActivityEvent::Features::ManagementType|. |
| </summary> |
| </metric> |
| <metric name="DeviceMode"> |
| <summary> |
| An enum representing the mode of the device, defined in |
| |ash::power::ml::UserActivityEvent::Features::DeviceMode| |
| </summary> |
| </metric> |
| <metric name="DeviceType"> |
| <summary> |
| An enum representing the type of the device, defined in |
| |ash::power::ml::UserActivityEvent::Features::DeviceType| |
| </summary> |
| </metric> |
| <metric name="EventLogDuration"> |
| <summary> |
| Time taken in seconds from when we start logging the features to the |
| moment when the event type is known and we finish logging the complete |
| event. |
| </summary> |
| </metric> |
| <metric name="EventReason"> |
| <summary> |
| An enum representing the reason of the event, defined in |
| |ash::power::ml::UserActivityEvent::Event::Reason|. |
| </summary> |
| </metric> |
| <metric name="EventType"> |
| <summary> |
| An enum representing the type of the event, defined in |
| |ash::power::ml::UserActivityEvent::Event::Type|. |
| </summary> |
| </metric> |
| <metric name="KeyEventsInLastHour"> |
| <summary> |
| The number of key events reported as user activity in the last hour. This |
| is bucketized so that it is recorded precisely when it is in [0, 99], |
| rounded to nearest 100 when it is in [100, 999] and rounded to nearest |
| 1000 when it is in [1000, 9999]. It is capped at 10000. |
| </summary> |
| </metric> |
| <metric name="LastActivityDay"> |
| <summary> |
| An enum representing the last activity day of the week, defined in |
| |ash::power::ml::UserActivityEvent::Features::DayOfWeek|. |
| </summary> |
| </metric> |
| <metric name="LastActivityTime"> |
| <summary> |
| Last activity time as hours since midnight in the local time zone. |
| </summary> |
| </metric> |
| <metric name="LastUserActivityTime"> |
| <summary> |
| Last user activity time as hours since midnight in the local time zone. |
| </summary> |
| </metric> |
| <metric name="ModelApplied"> |
| <summary> |
| A boolean value whether model prediction is applied in the screen-dim |
| decision. False means powerd dims the screen regardless of the model |
| prediction. |
| </summary> |
| </metric> |
| <metric name="ModelDecisionThreshold"> |
| <summary> |
| A threhold in the range of [0, 100]. Higher threshold makes screen-dim |
| less likely. |
| </summary> |
| </metric> |
| <metric name="ModelInactivityScore"> |
| <summary> |
| Probability that user will remain inactive as predicted by the model. It |
| is in the range of [0, 100]. If score is less than the decision threshold, |
| dim will be deferred. |
| </summary> |
| </metric> |
| <metric name="ModelResponse"> |
| <summary> |
| Whether the model recommends the screen dim should be deferred (NO_DIM) or |
| allowed (DIM), or encountered an error (MODEL_ERROR). |
| </summary> |
| </metric> |
| <metric name="MouseEventsInLastHour"> |
| <summary> |
| The number of mouse events reported as user activity in the last hour. |
| This is bucketized so that it is recorded precisely when it is in [0, 99], |
| rounded to nearest 100 when it is in [100, 999] and rounded to nearest |
| 1000 when it is in [1000, 9999]. It is capped at 10000. |
| </summary> |
| </metric> |
| <metric name="OnBattery"> |
| <summary> |
| Boolean value to represent whether the device is currently on battery |
| power. |
| </summary> |
| </metric> |
| <metric name="PreviousNegativeActionsCount"> |
| <summary> |
| Number of times user reactivated, not including the current event. |
| </summary> |
| </metric> |
| <metric name="PreviousPositiveActionsCount"> |
| <summary> |
| Number of times user has remained idle, not including the current event. |
| </summary> |
| </metric> |
| <metric name="RecentTimeActive"> |
| <summary> |
| Duration of activity in seconds up to last activity. |
| </summary> |
| </metric> |
| <metric name="RecentVideoPlayingTime"> |
| <summary> |
| Recent video playing time in seconds. |
| </summary> |
| </metric> |
| <metric name="ScreenDimDelay"> |
| <summary> |
| Delay after which the screen will be dimmed in seconds. |
| </summary> |
| </metric> |
| <metric name="ScreenDimmedInitially"> |
| <summary> |
| Whether screen was dimmed at the start of the event. |
| </summary> |
| </metric> |
| <metric name="ScreenDimOccurred"> |
| <summary> |
| Whether screen dim occurred due to inactivity timeout. |
| </summary> |
| </metric> |
| <metric name="ScreenDimToOffDelay"> |
| <summary> |
| Delay after which the screen will be turned off in seconds, as measured |
| from screen is dimmed. If dim is disabled, it is the delay from the start |
| of inactivity. |
| </summary> |
| </metric> |
| <metric name="ScreenLockedInitially"> |
| <summary> |
| Whether screen was locked at the start of the event. |
| </summary> |
| </metric> |
| <metric name="ScreenLockOccurred"> |
| <summary> |
| Whether screen lock occurred. |
| </summary> |
| </metric> |
| <metric name="ScreenOffInitially"> |
| <summary> |
| Whether screen was off at the start of the event. |
| </summary> |
| </metric> |
| <metric name="ScreenOffOccurred"> |
| <summary> |
| Whether screen off occurred due to inactivity timeout. |
| </summary> |
| </metric> |
| <metric name="SequenceId"> |
| <summary> |
| The ID of this event in the current session. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastKey"> |
| <summary> |
| Time from last key event in seconds. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastMouse"> |
| <summary> |
| Time from last mouse event in seconds. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastTouch"> |
| <summary> |
| Time from last touch event in seconds. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastVideoEnded"> |
| <summary> |
| Time from the end of the last video playing in seconds. |
| </summary> |
| </metric> |
| <metric name="TouchEventsInLastHour"> |
| <summary> |
| The number of touch events reported as user activity in the last hour. |
| This is bucketized so that it is recorded precisely when it is in [0, 99], |
| rounded to nearest 100 when it is in [100, 999] and rounded to nearest |
| 1000 when it is in [1000, 9999]. It is capped at 10000. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="UserActivityId"> |
| <owner>jiameng@chromium.org</owner> |
| <summary> |
| Records an activity that happened while a page was open. |
| </summary> |
| <metric name="ActivityId"> |
| <summary> |
| The ID of the activity that happened while a page was open. |
| </summary> |
| </metric> |
| <metric name="ContentType"> |
| <summary> |
| Enumeration for the MIME type of the page. Values are enumerated in |
| metrics::TabMetricsEvent::ContentType. |
| </summary> |
| </metric> |
| <metric name="HasFormEntry"> |
| <summary> |
| Boolean value indicating whether the page has any user-input text. |
| </summary> |
| </metric> |
| <metric name="IsActive"> |
| <summary> |
| Boolean value representing whether this tab is selected in its containing |
| browser. |
| </summary> |
| </metric> |
| <metric name="IsBrowserFocused"> |
| <summary> |
| Boolean value representing whether the containing browser is in focus. |
| </summary> |
| </metric> |
| <metric name="IsBrowserVisible"> |
| <summary> |
| Boolean value representing whether the containing browser is visible. |
| </summary> |
| </metric> |
| <metric name="IsTopmostBrowser"> |
| <summary> |
| Boolean value representing whether the containing browser is the topmost |
| one on the screen. |
| </summary> |
| </metric> |
| <metric name="SiteEngagementScore"> |
| <summary> |
| Site engagement score in the range [0, 100], rounded down to a multiple of |
| 10 to limit granularity. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="UserPerceivedPageVisit" singular="True"> |
| <owner>djw@chromium.org</owner> |
| <owner>altimin@chromium.org</owner> |
| <summary> |
| Metrics related to a page visit as a user perceives it, regardless of how |
| the page was visited. More metrics may be associated with a particular page |
| visit, these can be found in specific UKM events with the same UKM source |
| ID. Currently the methods of visiting a page that will populate this event |
| are: 'normal' page load (more metrics in the PageLoad event), Back-Forward |
| Cache Restore (more metrics in the HistoryNavigation event), and AMP |
| documents (more metrics in the AmpPageLoad event) |
| </summary> |
| <metric name="NotCountedForCoreWebVitals" enum="Boolean"> |
| <summary> |
| Determines if this page visit event should be counted towards calculations |
| involving Core Web Vitals. If true, this page visit event should not be |
| counted. If false or NULL, the page visit event should be considered. |
| Currently this is determined by checking the mime-type of the page visit |
| event. |
| </summary> |
| </metric> |
| <metric name="PageVisitFinalStatus" enum="PageVisitFinalStatus"> |
| <summary> |
| Determines the final status for this page visit. That is, records whether |
| the page was never foregrounded, was foregrounded but did not reach FCP, |
| or did reach FCP. The metric is recorded at the end of each page visit. |
| App backgrounding on Android to is considered to be the end of page visit |
| as well, as the app could be evicted by Android anytime after that |
| happens. |
| </summary> |
| </metric> |
| <metric name="UserInitiated" enum="Boolean"> |
| <summary> |
| True if this page visit was initiated by user input. For renderer |
| navigations, only true if the code can trace back to the original input |
| event - there are cases where this known not to be possible. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="UserSettingsEvent"> |
| <obsolete> |
| Removed 3/2023 |
| </obsolete> |
| <owner>wrong@chromium.org</owner> |
| <owner>jiameng@chromium.org</owner> |
| <summary> |
| Contains information about user activities relating to settings changes. |
| </summary> |
| <metric name="AccessibilityId" enum="AccessibilityId"> |
| <summary> |
| The accessibility setting that was changed. |
| </summary> |
| </metric> |
| <metric name="BatteryPercentage"> |
| <summary> |
| Battery percentage from 0 to 100. |
| </summary> |
| </metric> |
| <metric name="Country"> |
| <summary> |
| Country ID at install, corresponding to the value used by |
| src/components/country_codes/country_codes.h. |
| </summary> |
| </metric> |
| <metric name="CurrentValue"> |
| <summary> |
| Value of the setting after the change. |
| </summary> |
| </metric> |
| <metric name="DayOfWeek" enum="DayOfWeek"> |
| <summary> |
| Day of the week of the settings change. |
| </summary> |
| </metric> |
| <metric name="DeviceMode" enum="DeviceMode"> |
| <summary> |
| The current device mode, such as clamshell or tablet. |
| </summary> |
| </metric> |
| <metric name="DeviceOrientation" enum="DeviceOrientation"> |
| <summary> |
| The current orientation of the device. |
| </summary> |
| </metric> |
| <metric name="EventId"> |
| <summary> |
| Randomly generated ID that links together settings events that occurred at |
| the same time. |
| </summary> |
| </metric> |
| <metric name="HasNightLightSchedule" enum="Boolean"> |
| <summary> |
| A boolean indicating whether the user has set up a night light schedule. |
| </summary> |
| </metric> |
| <metric name="HasWifiSecurity" enum="Boolean"> |
| <summary> |
| A boolean indicating whether or not the current wifi network has security. |
| Only populated upon connection to a wifi network. |
| </summary> |
| </metric> |
| <metric name="HourOfDay"> |
| <summary> |
| Time in hours since midnight in the local time zone. |
| </summary> |
| </metric> |
| <metric name="IsAfterSunset" enum="Boolean"> |
| <summary> |
| A boolean, true if it is after sunset and before sunrise in the local |
| time. |
| </summary> |
| </metric> |
| <metric name="IsCharging" enum="Boolean"> |
| <summary> |
| A boolean indicating whether the device is charging. |
| </summary> |
| </metric> |
| <metric name="IsFromSearch" enum="Boolean"> |
| <summary> |
| A boolean indicating whether or not search was used to navigate to the |
| setting. |
| </summary> |
| </metric> |
| <metric name="IsPairedBluetoothDevice" enum="Boolean"> |
| <summary> |
| A boolean indicating whether or not the current bluetooth device was |
| already paired. Only populated upon connection to a bluetooth device. |
| </summary> |
| </metric> |
| <metric name="IsPlayingAudio" enum="Boolean"> |
| <summary> |
| A boolean indicating whether the device is playing audio. |
| </summary> |
| </metric> |
| <metric name="IsPlayingVideo" enum="Boolean"> |
| <summary> |
| A boolean indicating whether the device is playing video. |
| </summary> |
| </metric> |
| <metric name="IsRecentlyFullscreen" enum="Boolean"> |
| <summary> |
| A boolean indicating whether the device has been in fullscreen mode in the |
| last 5 minutes. |
| </summary> |
| </metric> |
| <metric name="IsRecentlyPresenting" enum="Boolean"> |
| <summary> |
| A boolean indicating whether the device has been presenting in the last 5 |
| minutes. |
| </summary> |
| </metric> |
| <metric name="NetworkStatus" enum="NetworkStatus"> |
| <summary> |
| Internet connection status of the device. |
| </summary> |
| </metric> |
| <metric name="PreviousValue"> |
| <summary> |
| Value of the setting before the change. |
| </summary> |
| </metric> |
| <metric name="SettingId" enum="SettingId"> |
| <summary> |
| The setting that was changed. |
| </summary> |
| </metric> |
| <metric name="SettingType" enum="SettingType"> |
| <summary> |
| Where the settings event originated from. |
| </summary> |
| </metric> |
| <metric name="SignalStrength"> |
| <summary> |
| The signal strength for the connected network. Only populated upon |
| connection to a wifi or cellular network. |
| </summary> |
| </metric> |
| <metric name="TimeSinceLastSettingsChange"> |
| <summary> |
| Time in minutes since the last settings change. |
| </summary> |
| </metric> |
| <metric name="UsedCellularInSession" enum="Boolean"> |
| <summary> |
| A boolean indicating whether the user has connected to a cellular network |
| in the current session. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="V8.Wasm.ModuleCompiled"> |
| <owner>ecmziegler@chromium.org</owner> |
| <summary> |
| Records information on baseline compilation of WebAssembly modules and its |
| resource consumption. |
| </summary> |
| <metric name="Async" enum="Boolean"> |
| <summary> |
| The compilation was running asynchronously. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Cached" enum="Boolean"> |
| <summary> |
| The compilation was re-using already cached native module code instead of |
| JIT compiling it. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CodeSize"> |
| <summary> |
| The size of the native module code in bytes after baseline compilation |
| finished. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Deserialized" enum="Boolean"> |
| <summary> |
| The compilation was deserializing the native module code from the disk |
| cache instead of JIT compiling it. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Lazy" enum="Boolean"> |
| <summary> |
| The lazy compilation flag was enabled and therefore not all functions |
| might have been compiled. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LiftoffBailoutCount"> |
| <summary> |
| The number of functions that Liftoff could not compile and that therefore |
| needed to be compiled by TurboFan. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Streamed" enum="Boolean"> |
| <summary> |
| The wire bytes were streamed while compiling. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Success" enum="Boolean"> |
| <summary> |
| The module was successfully compiled. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockDuration"> |
| <summary> |
| The total time the compilation took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockTime"> |
| <obsolete> |
| Removed 11/2020 |
| </obsolete> |
| <summary> |
| The total time the compilation took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="V8.Wasm.ModuleDecoded"> |
| <owner>ecmziegler@chromium.org</owner> |
| <summary> |
| Records information on WebAssembly modules included in websites. |
| </summary> |
| <metric name="FunctionCount"> |
| <summary> |
| Number of declared functions in this module. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ModuleSize"> |
| <summary> |
| The size of the wire bytes of the module. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Streamed" enum="Boolean"> |
| <summary> |
| The wire bytes were streamed while decoding. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Success" enum="Boolean"> |
| <summary> |
| The module was successfully decoded. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockDuration"> |
| <summary> |
| The total time the decoding took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockTime"> |
| <obsolete> |
| Removed 11/2020 |
| </obsolete> |
| <summary> |
| The total time the compilation took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="V8.Wasm.ModuleInstantiated"> |
| <owner>ecmziegler@chromium.org</owner> |
| <summary> |
| Records information on instantiation of WebAssembly modules and its resource |
| consumption. |
| </summary> |
| <metric name="ImportedFunctionCount"> |
| <summary> |
| The number of functions imported by the module. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Success" enum="Boolean"> |
| <summary> |
| The module was successfully instantiated. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockDuration"> |
| <summary> |
| The total time the instantiation took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockTime"> |
| <obsolete> |
| Removed 11/2020 |
| </obsolete> |
| <summary> |
| The total time the compilation took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="V8.Wasm.ModuleTieredUp"> |
| <owner>ecmziegler@chromium.org</owner> |
| <summary> |
| Records information on top-tier compilation of WebAssembly modules and its |
| resource consumption. |
| </summary> |
| <metric name="CodeSize"> |
| <summary> |
| The size of the native module code in bytes after top-tier compilation |
| finished. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Lazy" enum="Boolean"> |
| <summary> |
| The lazy compilation flag was enabled and therefore not all functions |
| might have been compiled. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockDuration"> |
| <summary> |
| The total time the compilation took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WallClockTime"> |
| <obsolete> |
| Removed 11/2020 |
| </obsolete> |
| <summary> |
| The total time the compilation took in microseconds. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="V8CompileHints.Version4"> |
| <owner>marja@chromium.org</owner> |
| <owner>v8-loading@google.com</owner> |
| <summary> |
| Data about which JavaScript functions are compiled. The collected data is |
| obfuscated to not reveal script URLs. The data is split into separate |
| int64s. |
| </summary> |
| <metric name="Data0"/> |
| <metric name="Data1"/> |
| <metric name="Data10"/> |
| <metric name="Data100"/> |
| <metric name="Data1000"/> |
| <metric name="Data1001"/> |
| <metric name="Data1002"/> |
| <metric name="Data1003"/> |
| <metric name="Data1004"/> |
| <metric name="Data1005"/> |
| <metric name="Data1006"/> |
| <metric name="Data1007"/> |
| <metric name="Data1008"/> |
| <metric name="Data1009"/> |
| <metric name="Data101"/> |
| <metric name="Data1010"/> |
| <metric name="Data1011"/> |
| <metric name="Data1012"/> |
| <metric name="Data1013"/> |
| <metric name="Data1014"/> |
| <metric name="Data1015"/> |
| <metric name="Data1016"/> |
| <metric name="Data1017"/> |
| <metric name="Data1018"/> |
| <metric name="Data1019"/> |
| <metric name="Data102"/> |
| <metric name="Data1020"/> |
| <metric name="Data1021"/> |
| <metric name="Data1022"/> |
| <metric name="Data1023"/> |
| <metric name="Data103"/> |
| <metric name="Data104"/> |
| <metric name="Data105"/> |
| <metric name="Data106"/> |
| <metric name="Data107"/> |
| <metric name="Data108"/> |
| <metric name="Data109"/> |
| <metric name="Data11"/> |
| <metric name="Data110"/> |
| <metric name="Data111"/> |
| <metric name="Data112"/> |
| <metric name="Data113"/> |
| <metric name="Data114"/> |
| <metric name="Data115"/> |
| <metric name="Data116"/> |
| <metric name="Data117"/> |
| <metric name="Data118"/> |
| <metric name="Data119"/> |
| <metric name="Data12"/> |
| <metric name="Data120"/> |
| <metric name="Data121"/> |
| <metric name="Data122"/> |
| <metric name="Data123"/> |
| <metric name="Data124"/> |
| <metric name="Data125"/> |
| <metric name="Data126"/> |
| <metric name="Data127"/> |
| <metric name="Data128"/> |
| <metric name="Data129"/> |
| <metric name="Data13"/> |
| <metric name="Data130"/> |
| <metric name="Data131"/> |
| <metric name="Data132"/> |
| <metric name="Data133"/> |
| <metric name="Data134"/> |
| <metric name="Data135"/> |
| <metric name="Data136"/> |
| <metric name="Data137"/> |
| <metric name="Data138"/> |
| <metric name="Data139"/> |
| <metric name="Data14"/> |
| <metric name="Data140"/> |
| <metric name="Data141"/> |
| <metric name="Data142"/> |
| <metric name="Data143"/> |
| <metric name="Data144"/> |
| <metric name="Data145"/> |
| <metric name="Data146"/> |
| <metric name="Data147"/> |
| <metric name="Data148"/> |
| <metric name="Data149"/> |
| <metric name="Data15"/> |
| <metric name="Data150"/> |
| <metric name="Data151"/> |
| <metric name="Data152"/> |
| <metric name="Data153"/> |
| <metric name="Data154"/> |
| <metric name="Data155"/> |
| <metric name="Data156"/> |
| <metric name="Data157"/> |
| <metric name="Data158"/> |
| <metric name="Data159"/> |
| <metric name="Data16"/> |
| <metric name="Data160"/> |
| <metric name="Data161"/> |
| <metric name="Data162"/> |
| <metric name="Data163"/> |
| <metric name="Data164"/> |
| <metric name="Data165"/> |
| <metric name="Data166"/> |
| <metric name="Data167"/> |
| <metric name="Data168"/> |
| <metric name="Data169"/> |
| <metric name="Data17"/> |
| <metric name="Data170"/> |
| <metric name="Data171"/> |
| <metric name="Data172"/> |
| <metric name="Data173"/> |
| <metric name="Data174"/> |
| <metric name="Data175"/> |
| <metric name="Data176"/> |
| <metric name="Data177"/> |
| <metric name="Data178"/> |
| <metric name="Data179"/> |
| <metric name="Data18"/> |
| <metric name="Data180"/> |
| <metric name="Data181"/> |
| <metric name="Data182"/> |
| <metric name="Data183"/> |
| <metric name="Data184"/> |
| <metric name="Data185"/> |
| <metric name="Data186"/> |
| <metric name="Data187"/> |
| <metric name="Data188"/> |
| <metric name="Data189"/> |
| <metric name="Data19"/> |
| <metric name="Data190"/> |
| <metric name="Data191"/> |
| <metric name="Data192"/> |
| <metric name="Data193"/> |
| <metric name="Data194"/> |
| <metric name="Data195"/> |
| <metric name="Data196"/> |
| <metric name="Data197"/> |
| <metric name="Data198"/> |
| <metric name="Data199"/> |
| <metric name="Data2"/> |
| <metric name="Data20"/> |
| <metric name="Data200"/> |
| <metric name="Data201"/> |
| <metric name="Data202"/> |
| <metric name="Data203"/> |
| <metric name="Data204"/> |
| <metric name="Data205"/> |
| <metric name="Data206"/> |
| <metric name="Data207"/> |
| <metric name="Data208"/> |
| <metric name="Data209"/> |
| <metric name="Data21"/> |
| <metric name="Data210"/> |
| <metric name="Data211"/> |
| <metric name="Data212"/> |
| <metric name="Data213"/> |
| <metric name="Data214"/> |
| <metric name="Data215"/> |
| <metric name="Data216"/> |
| <metric name="Data217"/> |
| <metric name="Data218"/> |
| <metric name="Data219"/> |
| <metric name="Data22"/> |
| <metric name="Data220"/> |
| <metric name="Data221"/> |
| <metric name="Data222"/> |
| <metric name="Data223"/> |
| <metric name="Data224"/> |
| <metric name="Data225"/> |
| <metric name="Data226"/> |
| <metric name="Data227"/> |
| <metric name="Data228"/> |
| <metric name="Data229"/> |
| <metric name="Data23"/> |
| <metric name="Data230"/> |
| <metric name="Data231"/> |
| <metric name="Data232"/> |
| <metric name="Data233"/> |
| <metric name="Data234"/> |
| <metric name="Data235"/> |
| <metric name="Data236"/> |
| <metric name="Data237"/> |
| <metric name="Data238"/> |
| <metric name="Data239"/> |
| <metric name="Data24"/> |
| <metric name="Data240"/> |
| <metric name="Data241"/> |
| <metric name="Data242"/> |
| <metric name="Data243"/> |
| <metric name="Data244"/> |
| <metric name="Data245"/> |
| <metric name="Data246"/> |
| <metric name="Data247"/> |
| <metric name="Data248"/> |
| <metric name="Data249"/> |
| <metric name="Data25"/> |
| <metric name="Data250"/> |
| <metric name="Data251"/> |
| <metric name="Data252"/> |
| <metric name="Data253"/> |
| <metric name="Data254"/> |
| <metric name="Data255"/> |
| <metric name="Data256"/> |
| <metric name="Data257"/> |
| <metric name="Data258"/> |
| <metric name="Data259"/> |
| <metric name="Data26"/> |
| <metric name="Data260"/> |
| <metric name="Data261"/> |
| <metric name="Data262"/> |
| <metric name="Data263"/> |
| <metric name="Data264"/> |
| <metric name="Data265"/> |
| <metric name="Data266"/> |
| <metric name="Data267"/> |
| <metric name="Data268"/> |
| <metric name="Data269"/> |
| <metric name="Data27"/> |
| <metric name="Data270"/> |
| <metric name="Data271"/> |
| <metric name="Data272"/> |
| <metric name="Data273"/> |
| <metric name="Data274"/> |
| <metric name="Data275"/> |
| <metric name="Data276"/> |
| <metric name="Data277"/> |
| <metric name="Data278"/> |
| <metric name="Data279"/> |
| <metric name="Data28"/> |
| <metric name="Data280"/> |
| <metric name="Data281"/> |
| <metric name="Data282"/> |
| <metric name="Data283"/> |
| <metric name="Data284"/> |
| <metric name="Data285"/> |
| <metric name="Data286"/> |
| <metric name="Data287"/> |
| <metric name="Data288"/> |
| <metric name="Data289"/> |
| <metric name="Data29"/> |
| <metric name="Data290"/> |
| <metric name="Data291"/> |
| <metric name="Data292"/> |
| <metric name="Data293"/> |
| <metric name="Data294"/> |
| <metric name="Data295"/> |
| <metric name="Data296"/> |
| <metric name="Data297"/> |
| <metric name="Data298"/> |
| <metric name="Data299"/> |
| <metric name="Data3"/> |
| <metric name="Data30"/> |
| <metric name="Data300"/> |
| <metric name="Data301"/> |
| <metric name="Data302"/> |
| <metric name="Data303"/> |
| <metric name="Data304"/> |
| <metric name="Data305"/> |
| <metric name="Data306"/> |
| <metric name="Data307"/> |
| <metric name="Data308"/> |
| <metric name="Data309"/> |
| <metric name="Data31"/> |
| <metric name="Data310"/> |
| <metric name="Data311"/> |
| <metric name="Data312"/> |
| <metric name="Data313"/> |
| <metric name="Data314"/> |
| <metric name="Data315"/> |
| <metric name="Data316"/> |
| <metric name="Data317"/> |
| <metric name="Data318"/> |
| <metric name="Data319"/> |
| <metric name="Data32"/> |
| <metric name="Data320"/> |
| <metric name="Data321"/> |
| <metric name="Data322"/> |
| <metric name="Data323"/> |
| <metric name="Data324"/> |
| <metric name="Data325"/> |
| <metric name="Data326"/> |
| <metric name="Data327"/> |
| <metric name="Data328"/> |
| <metric name="Data329"/> |
| <metric name="Data33"/> |
| <metric name="Data330"/> |
| <metric name="Data331"/> |
| <metric name="Data332"/> |
| <metric name="Data333"/> |
| <metric name="Data334"/> |
| <metric name="Data335"/> |
| <metric name="Data336"/> |
| <metric name="Data337"/> |
| <metric name="Data338"/> |
| <metric name="Data339"/> |
| <metric name="Data34"/> |
| <metric name="Data340"/> |
| <metric name="Data341"/> |
| <metric name="Data342"/> |
| <metric name="Data343"/> |
| <metric name="Data344"/> |
| <metric name="Data345"/> |
| <metric name="Data346"/> |
| <metric name="Data347"/> |
| <metric name="Data348"/> |
| <metric name="Data349"/> |
| <metric name="Data35"/> |
| <metric name="Data350"/> |
| <metric name="Data351"/> |
| <metric name="Data352"/> |
| <metric name="Data353"/> |
| <metric name="Data354"/> |
| <metric name="Data355"/> |
| <metric name="Data356"/> |
| <metric name="Data357"/> |
| <metric name="Data358"/> |
| <metric name="Data359"/> |
| <metric name="Data36"/> |
| <metric name="Data360"/> |
| <metric name="Data361"/> |
| <metric name="Data362"/> |
| <metric name="Data363"/> |
| <metric name="Data364"/> |
| <metric name="Data365"/> |
| <metric name="Data366"/> |
| <metric name="Data367"/> |
| <metric name="Data368"/> |
| <metric name="Data369"/> |
| <metric name="Data37"/> |
| <metric name="Data370"/> |
| <metric name="Data371"/> |
| <metric name="Data372"/> |
| <metric name="Data373"/> |
| <metric name="Data374"/> |
| <metric name="Data375"/> |
| <metric name="Data376"/> |
| <metric name="Data377"/> |
| <metric name="Data378"/> |
| <metric name="Data379"/> |
| <metric name="Data38"/> |
| <metric name="Data380"/> |
| <metric name="Data381"/> |
| <metric name="Data382"/> |
| <metric name="Data383"/> |
| <metric name="Data384"/> |
| <metric name="Data385"/> |
| <metric name="Data386"/> |
| <metric name="Data387"/> |
| <metric name="Data388"/> |
| <metric name="Data389"/> |
| <metric name="Data39"/> |
| <metric name="Data390"/> |
| <metric name="Data391"/> |
| <metric name="Data392"/> |
| <metric name="Data393"/> |
| <metric name="Data394"/> |
| <metric name="Data395"/> |
| <metric name="Data396"/> |
| <metric name="Data397"/> |
| <metric name="Data398"/> |
| <metric name="Data399"/> |
| <metric name="Data4"/> |
| <metric name="Data40"/> |
| <metric name="Data400"/> |
| <metric name="Data401"/> |
| <metric name="Data402"/> |
| <metric name="Data403"/> |
| <metric name="Data404"/> |
| <metric name="Data405"/> |
| <metric name="Data406"/> |
| <metric name="Data407"/> |
| <metric name="Data408"/> |
| <metric name="Data409"/> |
| <metric name="Data41"/> |
| <metric name="Data410"/> |
| <metric name="Data411"/> |
| <metric name="Data412"/> |
| <metric name="Data413"/> |
| <metric name="Data414"/> |
| <metric name="Data415"/> |
| <metric name="Data416"/> |
| <metric name="Data417"/> |
| <metric name="Data418"/> |
| <metric name="Data419"/> |
| <metric name="Data42"/> |
| <metric name="Data420"/> |
| <metric name="Data421"/> |
| <metric name="Data422"/> |
| <metric name="Data423"/> |
| <metric name="Data424"/> |
| <metric name="Data425"/> |
| <metric name="Data426"/> |
| <metric name="Data427"/> |
| <metric name="Data428"/> |
| <metric name="Data429"/> |
| <metric name="Data43"/> |
| <metric name="Data430"/> |
| <metric name="Data431"/> |
| <metric name="Data432"/> |
| <metric name="Data433"/> |
| <metric name="Data434"/> |
| <metric name="Data435"/> |
| <metric name="Data436"/> |
| <metric name="Data437"/> |
| <metric name="Data438"/> |
| <metric name="Data439"/> |
| <metric name="Data44"/> |
| <metric name="Data440"/> |
| <metric name="Data441"/> |
| <metric name="Data442"/> |
| <metric name="Data443"/> |
| <metric name="Data444"/> |
| <metric name="Data445"/> |
| <metric name="Data446"/> |
| <metric name="Data447"/> |
| <metric name="Data448"/> |
| <metric name="Data449"/> |
| <metric name="Data45"/> |
| <metric name="Data450"/> |
| <metric name="Data451"/> |
| <metric name="Data452"/> |
| <metric name="Data453"/> |
| <metric name="Data454"/> |
| <metric name="Data455"/> |
| <metric name="Data456"/> |
| <metric name="Data457"/> |
| <metric name="Data458"/> |
| <metric name="Data459"/> |
| <metric name="Data46"/> |
| <metric name="Data460"/> |
| <metric name="Data461"/> |
| <metric name="Data462"/> |
| <metric name="Data463"/> |
| <metric name="Data464"/> |
| <metric name="Data465"/> |
| <metric name="Data466"/> |
| <metric name="Data467"/> |
| <metric name="Data468"/> |
| <metric name="Data469"/> |
| <metric name="Data47"/> |
| <metric name="Data470"/> |
| <metric name="Data471"/> |
| <metric name="Data472"/> |
| <metric name="Data473"/> |
| <metric name="Data474"/> |
| <metric name="Data475"/> |
| <metric name="Data476"/> |
| <metric name="Data477"/> |
| <metric name="Data478"/> |
| <metric name="Data479"/> |
| <metric name="Data48"/> |
| <metric name="Data480"/> |
| <metric name="Data481"/> |
| <metric name="Data482"/> |
| <metric name="Data483"/> |
| <metric name="Data484"/> |
| <metric name="Data485"/> |
| <metric name="Data486"/> |
| <metric name="Data487"/> |
| <metric name="Data488"/> |
| <metric name="Data489"/> |
| <metric name="Data49"/> |
| <metric name="Data490"/> |
| <metric name="Data491"/> |
| <metric name="Data492"/> |
| <metric name="Data493"/> |
| <metric name="Data494"/> |
| <metric name="Data495"/> |
| <metric name="Data496"/> |
| <metric name="Data497"/> |
| <metric name="Data498"/> |
| <metric name="Data499"/> |
| <metric name="Data5"/> |
| <metric name="Data50"/> |
| <metric name="Data500"/> |
| <metric name="Data501"/> |
| <metric name="Data502"/> |
| <metric name="Data503"/> |
| <metric name="Data504"/> |
| <metric name="Data505"/> |
| <metric name="Data506"/> |
| <metric name="Data507"/> |
| <metric name="Data508"/> |
| <metric name="Data509"/> |
| <metric name="Data51"/> |
| <metric name="Data510"/> |
| <metric name="Data511"/> |
| <metric name="Data512"/> |
| <metric name="Data513"/> |
| <metric name="Data514"/> |
| <metric name="Data515"/> |
| <metric name="Data516"/> |
| <metric name="Data517"/> |
| <metric name="Data518"/> |
| <metric name="Data519"/> |
| <metric name="Data52"/> |
| <metric name="Data520"/> |
| <metric name="Data521"/> |
| <metric name="Data522"/> |
| <metric name="Data523"/> |
| <metric name="Data524"/> |
| <metric name="Data525"/> |
| <metric name="Data526"/> |
| <metric name="Data527"/> |
| <metric name="Data528"/> |
| <metric name="Data529"/> |
| <metric name="Data53"/> |
| <metric name="Data530"/> |
| <metric name="Data531"/> |
| <metric name="Data532"/> |
| <metric name="Data533"/> |
| <metric name="Data534"/> |
| <metric name="Data535"/> |
| <metric name="Data536"/> |
| <metric name="Data537"/> |
| <metric name="Data538"/> |
| <metric name="Data539"/> |
| <metric name="Data54"/> |
| <metric name="Data540"/> |
| <metric name="Data541"/> |
| <metric name="Data542"/> |
| <metric name="Data543"/> |
| <metric name="Data544"/> |
| <metric name="Data545"/> |
| <metric name="Data546"/> |
| <metric name="Data547"/> |
| <metric name="Data548"/> |
| <metric name="Data549"/> |
| <metric name="Data55"/> |
| <metric name="Data550"/> |
| <metric name="Data551"/> |
| <metric name="Data552"/> |
| <metric name="Data553"/> |
| <metric name="Data554"/> |
| <metric name="Data555"/> |
| <metric name="Data556"/> |
| <metric name="Data557"/> |
| <metric name="Data558"/> |
| <metric name="Data559"/> |
| <metric name="Data56"/> |
| <metric name="Data560"/> |
| <metric name="Data561"/> |
| <metric name="Data562"/> |
| <metric name="Data563"/> |
| <metric name="Data564"/> |
| <metric name="Data565"/> |
| <metric name="Data566"/> |
| <metric name="Data567"/> |
| <metric name="Data568"/> |
| <metric name="Data569"/> |
| <metric name="Data57"/> |
| <metric name="Data570"/> |
| <metric name="Data571"/> |
| <metric name="Data572"/> |
| <metric name="Data573"/> |
| <metric name="Data574"/> |
| <metric name="Data575"/> |
| <metric name="Data576"/> |
| <metric name="Data577"/> |
| <metric name="Data578"/> |
| <metric name="Data579"/> |
| <metric name="Data58"/> |
| <metric name="Data580"/> |
| <metric name="Data581"/> |
| <metric name="Data582"/> |
| <metric name="Data583"/> |
| <metric name="Data584"/> |
| <metric name="Data585"/> |
| <metric name="Data586"/> |
| <metric name="Data587"/> |
| <metric name="Data588"/> |
| <metric name="Data589"/> |
| <metric name="Data59"/> |
| <metric name="Data590"/> |
| <metric name="Data591"/> |
| <metric name="Data592"/> |
| <metric name="Data593"/> |
| <metric name="Data594"/> |
| <metric name="Data595"/> |
| <metric name="Data596"/> |
| <metric name="Data597"/> |
| <metric name="Data598"/> |
| <metric name="Data599"/> |
| <metric name="Data6"/> |
| <metric name="Data60"/> |
| <metric name="Data600"/> |
| <metric name="Data601"/> |
| <metric name="Data602"/> |
| <metric name="Data603"/> |
| <metric name="Data604"/> |
| <metric name="Data605"/> |
| <metric name="Data606"/> |
| <metric name="Data607"/> |
| <metric name="Data608"/> |
| <metric name="Data609"/> |
| <metric name="Data61"/> |
| <metric name="Data610"/> |
| <metric name="Data611"/> |
| <metric name="Data612"/> |
| <metric name="Data613"/> |
| <metric name="Data614"/> |
| <metric name="Data615"/> |
| <metric name="Data616"/> |
| <metric name="Data617"/> |
| <metric name="Data618"/> |
| <metric name="Data619"/> |
| <metric name="Data62"/> |
| <metric name="Data620"/> |
| <metric name="Data621"/> |
| <metric name="Data622"/> |
| <metric name="Data623"/> |
| <metric name="Data624"/> |
| <metric name="Data625"/> |
| <metric name="Data626"/> |
| <metric name="Data627"/> |
| <metric name="Data628"/> |
| <metric name="Data629"/> |
| <metric name="Data63"/> |
| <metric name="Data630"/> |
| <metric name="Data631"/> |
| <metric name="Data632"/> |
| <metric name="Data633"/> |
| <metric name="Data634"/> |
| <metric name="Data635"/> |
| <metric name="Data636"/> |
| <metric name="Data637"/> |
| <metric name="Data638"/> |
| <metric name="Data639"/> |
| <metric name="Data64"/> |
| <metric name="Data640"/> |
| <metric name="Data641"/> |
| <metric name="Data642"/> |
| <metric name="Data643"/> |
| <metric name="Data644"/> |
| <metric name="Data645"/> |
| <metric name="Data646"/> |
| <metric name="Data647"/> |
| <metric name="Data648"/> |
| <metric name="Data649"/> |
| <metric name="Data65"/> |
| <metric name="Data650"/> |
| <metric name="Data651"/> |
| <metric name="Data652"/> |
| <metric name="Data653"/> |
| <metric name="Data654"/> |
| <metric name="Data655"/> |
| <metric name="Data656"/> |
| <metric name="Data657"/> |
| <metric name="Data658"/> |
| <metric name="Data659"/> |
| <metric name="Data66"/> |
| <metric name="Data660"/> |
| <metric name="Data661"/> |
| <metric name="Data662"/> |
| <metric name="Data663"/> |
| <metric name="Data664"/> |
| <metric name="Data665"/> |
| <metric name="Data666"/> |
| <metric name="Data667"/> |
| <metric name="Data668"/> |
| <metric name="Data669"/> |
| <metric name="Data67"/> |
| <metric name="Data670"/> |
| <metric name="Data671"/> |
| <metric name="Data672"/> |
| <metric name="Data673"/> |
| <metric name="Data674"/> |
| <metric name="Data675"/> |
| <metric name="Data676"/> |
| <metric name="Data677"/> |
| <metric name="Data678"/> |
| <metric name="Data679"/> |
| <metric name="Data68"/> |
| <metric name="Data680"/> |
| <metric name="Data681"/> |
| <metric name="Data682"/> |
| <metric name="Data683"/> |
| <metric name="Data684"/> |
| <metric name="Data685"/> |
| <metric name="Data686"/> |
| <metric name="Data687"/> |
| <metric name="Data688"/> |
| <metric name="Data689"/> |
| <metric name="Data69"/> |
| <metric name="Data690"/> |
| <metric name="Data691"/> |
| <metric name="Data692"/> |
| <metric name="Data693"/> |
| <metric name="Data694"/> |
| <metric name="Data695"/> |
| <metric name="Data696"/> |
| <metric name="Data697"/> |
| <metric name="Data698"/> |
| <metric name="Data699"/> |
| <metric name="Data7"/> |
| <metric name="Data70"/> |
| <metric name="Data700"/> |
| <metric name="Data701"/> |
| <metric name="Data702"/> |
| <metric name="Data703"/> |
| <metric name="Data704"/> |
| <metric name="Data705"/> |
| <metric name="Data706"/> |
| <metric name="Data707"/> |
| <metric name="Data708"/> |
| <metric name="Data709"/> |
| <metric name="Data71"/> |
| <metric name="Data710"/> |
| <metric name="Data711"/> |
| <metric name="Data712"/> |
| <metric name="Data713"/> |
| <metric name="Data714"/> |
| <metric name="Data715"/> |
| <metric name="Data716"/> |
| <metric name="Data717"/> |
| <metric name="Data718"/> |
| <metric name="Data719"/> |
| <metric name="Data72"/> |
| <metric name="Data720"/> |
| <metric name="Data721"/> |
| <metric name="Data722"/> |
| <metric name="Data723"/> |
| <metric name="Data724"/> |
| <metric name="Data725"/> |
| <metric name="Data726"/> |
| <metric name="Data727"/> |
| <metric name="Data728"/> |
| <metric name="Data729"/> |
| <metric name="Data73"/> |
| <metric name="Data730"/> |
| <metric name="Data731"/> |
| <metric name="Data732"/> |
| <metric name="Data733"/> |
| <metric name="Data734"/> |
| <metric name="Data735"/> |
| <metric name="Data736"/> |
| <metric name="Data737"/> |
| <metric name="Data738"/> |
| <metric name="Data739"/> |
| <metric name="Data74"/> |
| <metric name="Data740"/> |
| <metric name="Data741"/> |
| <metric name="Data742"/> |
| <metric name="Data743"/> |
| <metric name="Data744"/> |
| <metric name="Data745"/> |
| <metric name="Data746"/> |
| <metric name="Data747"/> |
| <metric name="Data748"/> |
| <metric name="Data749"/> |
| <metric name="Data75"/> |
| <metric name="Data750"/> |
| <metric name="Data751"/> |
| <metric name="Data752"/> |
| <metric name="Data753"/> |
| <metric name="Data754"/> |
| <metric name="Data755"/> |
| <metric name="Data756"/> |
| <metric name="Data757"/> |
| <metric name="Data758"/> |
| <metric name="Data759"/> |
| <metric name="Data76"/> |
| <metric name="Data760"/> |
| <metric name="Data761"/> |
| <metric name="Data762"/> |
| <metric name="Data763"/> |
| <metric name="Data764"/> |
| <metric name="Data765"/> |
| <metric name="Data766"/> |
| <metric name="Data767"/> |
| <metric name="Data768"/> |
| <metric name="Data769"/> |
| <metric name="Data77"/> |
| <metric name="Data770"/> |
| <metric name="Data771"/> |
| <metric name="Data772"/> |
| <metric name="Data773"/> |
| <metric name="Data774"/> |
| <metric name="Data775"/> |
| <metric name="Data776"/> |
| <metric name="Data777"/> |
| <metric name="Data778"/> |
| <metric name="Data779"/> |
| <metric name="Data78"/> |
| <metric name="Data780"/> |
| <metric name="Data781"/> |
| <metric name="Data782"/> |
| <metric name="Data783"/> |
| <metric name="Data784"/> |
| <metric name="Data785"/> |
| <metric name="Data786"/> |
| <metric name="Data787"/> |
| <metric name="Data788"/> |
| <metric name="Data789"/> |
| <metric name="Data79"/> |
| <metric name="Data790"/> |
| <metric name="Data791"/> |
| <metric name="Data792"/> |
| <metric name="Data793"/> |
| <metric name="Data794"/> |
| <metric name="Data795"/> |
| <metric name="Data796"/> |
| <metric name="Data797"/> |
| <metric name="Data798"/> |
| <metric name="Data799"/> |
| <metric name="Data8"/> |
| <metric name="Data80"/> |
| <metric name="Data800"/> |
| <metric name="Data801"/> |
| <metric name="Data802"/> |
| <metric name="Data803"/> |
| <metric name="Data804"/> |
| <metric name="Data805"/> |
| <metric name="Data806"/> |
| <metric name="Data807"/> |
| <metric name="Data808"/> |
| <metric name="Data809"/> |
| <metric name="Data81"/> |
| <metric name="Data810"/> |
| <metric name="Data811"/> |
| <metric name="Data812"/> |
| <metric name="Data813"/> |
| <metric name="Data814"/> |
| <metric name="Data815"/> |
| <metric name="Data816"/> |
| <metric name="Data817"/> |
| <metric name="Data818"/> |
| <metric name="Data819"/> |
| <metric name="Data82"/> |
| <metric name="Data820"/> |
| <metric name="Data821"/> |
| <metric name="Data822"/> |
| <metric name="Data823"/> |
| <metric name="Data824"/> |
| <metric name="Data825"/> |
| <metric name="Data826"/> |
| <metric name="Data827"/> |
| <metric name="Data828"/> |
| <metric name="Data829"/> |
| <metric name="Data83"/> |
| <metric name="Data830"/> |
| <metric name="Data831"/> |
| <metric name="Data832"/> |
| <metric name="Data833"/> |
| <metric name="Data834"/> |
| <metric name="Data835"/> |
| <metric name="Data836"/> |
| <metric name="Data837"/> |
| <metric name="Data838"/> |
| <metric name="Data839"/> |
| <metric name="Data84"/> |
| <metric name="Data840"/> |
| <metric name="Data841"/> |
| <metric name="Data842"/> |
| <metric name="Data843"/> |
| <metric name="Data844"/> |
| <metric name="Data845"/> |
| <metric name="Data846"/> |
| <metric name="Data847"/> |
| <metric name="Data848"/> |
| <metric name="Data849"/> |
| <metric name="Data85"/> |
| <metric name="Data850"/> |
| <metric name="Data851"/> |
| <metric name="Data852"/> |
| <metric name="Data853"/> |
| <metric name="Data854"/> |
| <metric name="Data855"/> |
| <metric name="Data856"/> |
| <metric name="Data857"/> |
| <metric name="Data858"/> |
| <metric name="Data859"/> |
| <metric name="Data86"/> |
| <metric name="Data860"/> |
| <metric name="Data861"/> |
| <metric name="Data862"/> |
| <metric name="Data863"/> |
| <metric name="Data864"/> |
| <metric name="Data865"/> |
| <metric name="Data866"/> |
| <metric name="Data867"/> |
| <metric name="Data868"/> |
| <metric name="Data869"/> |
| <metric name="Data87"/> |
| <metric name="Data870"/> |
| <metric name="Data871"/> |
| <metric name="Data872"/> |
| <metric name="Data873"/> |
| <metric name="Data874"/> |
| <metric name="Data875"/> |
| <metric name="Data876"/> |
| <metric name="Data877"/> |
| <metric name="Data878"/> |
| <metric name="Data879"/> |
| <metric name="Data88"/> |
| <metric name="Data880"/> |
| <metric name="Data881"/> |
| <metric name="Data882"/> |
| <metric name="Data883"/> |
| <metric name="Data884"/> |
| <metric name="Data885"/> |
| <metric name="Data886"/> |
| <metric name="Data887"/> |
| <metric name="Data888"/> |
| <metric name="Data889"/> |
| <metric name="Data89"/> |
| <metric name="Data890"/> |
| <metric name="Data891"/> |
| <metric name="Data892"/> |
| <metric name="Data893"/> |
| <metric name="Data894"/> |
| <metric name="Data895"/> |
| <metric name="Data896"/> |
| <metric name="Data897"/> |
| <metric name="Data898"/> |
| <metric name="Data899"/> |
| <metric name="Data9"/> |
| <metric name="Data90"/> |
| <metric name="Data900"/> |
| <metric name="Data901"/> |
| <metric name="Data902"/> |
| <metric name="Data903"/> |
| <metric name="Data904"/> |
| <metric name="Data905"/> |
| <metric name="Data906"/> |
| <metric name="Data907"/> |
| <metric name="Data908"/> |
| <metric name="Data909"/> |
| <metric name="Data91"/> |
| <metric name="Data910"/> |
| <metric name="Data911"/> |
| <metric name="Data912"/> |
| <metric name="Data913"/> |
| <metric name="Data914"/> |
| <metric name="Data915"/> |
| <metric name="Data916"/> |
| <metric name="Data917"/> |
| <metric name="Data918"/> |
| <metric name="Data919"/> |
| <metric name="Data92"/> |
| <metric name="Data920"/> |
| <metric name="Data921"/> |
| <metric name="Data922"/> |
| <metric name="Data923"/> |
| <metric name="Data924"/> |
| <metric name="Data925"/> |
| <metric name="Data926"/> |
| <metric name="Data927"/> |
| <metric name="Data928"/> |
| <metric name="Data929"/> |
| <metric name="Data93"/> |
| <metric name="Data930"/> |
| <metric name="Data931"/> |
| <metric name="Data932"/> |
| <metric name="Data933"/> |
| <metric name="Data934"/> |
| <metric name="Data935"/> |
| <metric name="Data936"/> |
| <metric name="Data937"/> |
| <metric name="Data938"/> |
| <metric name="Data939"/> |
| <metric name="Data94"/> |
| <metric name="Data940"/> |
| <metric name="Data941"/> |
| <metric name="Data942"/> |
| <metric name="Data943"/> |
| <metric name="Data944"/> |
| <metric name="Data945"/> |
| <metric name="Data946"/> |
| <metric name="Data947"/> |
| <metric name="Data948"/> |
| <metric name="Data949"/> |
| <metric name="Data95"/> |
| <metric name="Data950"/> |
| <metric name="Data951"/> |
| <metric name="Data952"/> |
| <metric name="Data953"/> |
| <metric name="Data954"/> |
| <metric name="Data955"/> |
| <metric name="Data956"/> |
| <metric name="Data957"/> |
| <metric name="Data958"/> |
| <metric name="Data959"/> |
| <metric name="Data96"/> |
| <metric name="Data960"/> |
| <metric name="Data961"/> |
| <metric name="Data962"/> |
| <metric name="Data963"/> |
| <metric name="Data964"/> |
| <metric name="Data965"/> |
| <metric name="Data966"/> |
| <metric name="Data967"/> |
| <metric name="Data968"/> |
| <metric name="Data969"/> |
| <metric name="Data97"/> |
| <metric name="Data970"/> |
| <metric name="Data971"/> |
| <metric name="Data972"/> |
| <metric name="Data973"/> |
| <metric name="Data974"/> |
| <metric name="Data975"/> |
| <metric name="Data976"/> |
| <metric name="Data977"/> |
| <metric name="Data978"/> |
| <metric name="Data979"/> |
| <metric name="Data98"/> |
| <metric name="Data980"/> |
| <metric name="Data981"/> |
| <metric name="Data982"/> |
| <metric name="Data983"/> |
| <metric name="Data984"/> |
| <metric name="Data985"/> |
| <metric name="Data986"/> |
| <metric name="Data987"/> |
| <metric name="Data988"/> |
| <metric name="Data989"/> |
| <metric name="Data99"/> |
| <metric name="Data990"/> |
| <metric name="Data991"/> |
| <metric name="Data992"/> |
| <metric name="Data993"/> |
| <metric name="Data994"/> |
| <metric name="Data995"/> |
| <metric name="Data996"/> |
| <metric name="Data997"/> |
| <metric name="Data998"/> |
| <metric name="Data999"/> |
| </event> |
| |
| <event name="VirtualKeyboard.Open"> |
| <owner>shend@chromium.org</owner> |
| <summary> |
| Collects the used input types with the Virtual Keyboard. |
| </summary> |
| <metric name="TextInputType"> |
| <summary> |
| Type of a input field which the user is trying to use the Virtual Keyboard |
| on. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.form_factor"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="WebAPK.Install" singular="True"> |
| <owner>yfriedman@chromium.org</owner> |
| <owner>hartmanng@chromium.org</owner> |
| <owner>pkotwicz@chromium.org</owner> |
| <summary> |
| WebAPK usage metrics recorded on Install. |
| </summary> |
| <metric name="AppVersion"> |
| <summary> |
| WebAPK app version that the user is installing. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Distributor" enum="WebApkDistributor"> |
| <summary> |
| Distribution source of the WebAPK (browser, device policy, etc). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Install" enum="Boolean"> |
| <summary> |
| Recorded when this WebAPK is installed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="WebAPK.SessionEnd" singular="True"> |
| <owner>yfriedman@chromium.org</owner> |
| <owner>hartmanng@chromium.org</owner> |
| <owner>pkotwicz@chromium.org</owner> |
| <summary> |
| WebAPK usage metrics recorded when the WebAPK is backgrounded. |
| </summary> |
| <metric name="AppVersion"> |
| <summary> |
| WebAPK app version that the user has installed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Distributor" enum="WebApkDistributor"> |
| <summary> |
| Distribution source of the WebAPK (browser, device policy, etc). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SessionDuration"> |
| <summary> |
| How long the user spent inside the WebAPK, in milliseconds. This will use |
| exponential bucketing (ie, count in 10s of milliseconds at first, then |
| 100s, then seconds, 10s of seconds, minutes, 10 minutes, hours, 10 hours, |
| days, weeks, years.) |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="WebAPK.Uninstall" singular="True"> |
| <owner>yfriedman@chromium.org</owner> |
| <owner>hartmanng@chromium.org</owner> |
| <owner>pkotwicz@chromium.org</owner> |
| <summary> |
| WebAPK usage metrics recorded on Uninstall. |
| </summary> |
| <metric name="AppVersion"> |
| <summary> |
| WebAPK app version that the user has installed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Distributor" enum="WebApkDistributor"> |
| <summary> |
| Distribution source of the WebAPK (browser, device policy, etc). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InstalledDuration"> |
| <summary> |
| How long between Install and Uninstall of a particular WebAPK, in seconds. |
| This will use exponential bucketing (ie, count in seconds at first, then |
| 10s of seconds, minutes, 10 minutes, hours, 10 hours, days, weeks, years.) |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LifetimeLaunches" enum="WebApkLifetimeLaunchCount"> |
| <summary> |
| Records how many times the WebAPK was launched between install and |
| uninstall (in coarse buckets). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Uninstall" enum="Boolean"> |
| <summary> |
| Recorded when this WebAPK is uninstalled. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="WebAPK.Visit" singular="True"> |
| <owner>yfriedman@chromium.org</owner> |
| <owner>hartmanng@chromium.org</owner> |
| <owner>pkotwicz@chromium.org</owner> |
| <summary> |
| WebAPK usage metrics recorded during a user's interaction with the site. |
| </summary> |
| <metric name="AppVersion"> |
| <summary> |
| WebAPK app version that the user has installed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Distributor" enum="WebApkDistributor"> |
| <summary> |
| Distribution source of the WebAPK (browser, device policy, etc). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Launch" enum="Boolean"> |
| <summary> |
| Recorded every time this WebAPK is launched. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="LaunchSource" enum="LaunchFromHomeScreenSource"> |
| <summary> |
| Launch source of the WebAPK. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="metrics.Distributor"/> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="Webapp.AddToHomeScreen"> |
| <owner>eirage@chromium.org></owner> |
| <owner>hartmanng@chromium.org</owner> |
| <owner>mwi-team-core@google.com</owner> |
| <summary> |
| A2HS usage metrics recorded when users started the add to home screen flow |
| on Android. |
| </summary> |
| <metric name="DisplayMode" enum="WebAppDisplayMode"> |
| <summary> |
| Records the display mode of the added Webapp. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="SameAsManifestStartUrl" enum="Boolean"> |
| <summary> |
| Record whether `start_url` for the Shortcuts is the same as the current |
| page url. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ShortcutReason" enum="InstallableStatusCode"> |
| <summary> |
| Record an StatusCode for why this site is not WebAPK compatible. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="WebApp.DailyInteraction"> |
| <owner>glenrob@chromium.org</owner> |
| <owner>benwells@chromium.org</owner> |
| <summary> |
| Features of a web app recorded at most once per day if a user interacted |
| with the web app. Recorded for installed and/or promotable (installable) web |
| apps unless noted otherwise on the metric. Keyed by start_url of the app. |
| Note: Changed in Feb 2023 to only record when App sync is enabled. |
| </summary> |
| <metric name="BackgroundDuration"> |
| <summary> |
| Records the total duration (seconds, bucketed) that the app was open in |
| the background in the last calendar day. Summed during the day and emitted |
| if the date changes. Recorded only for installed web apps that are |
| currently open in a web app window, and all preinstalled web apps. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="CapturesLinks" enum="Boolean"> |
| <summary> |
| Whether the user has enabled link capturing to open in-scope links in the |
| app window. Recorded only for installed web apps that are currently open |
| in a web app window, and all preinstalled web apps. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DisplayMode" enum="WebAppDisplayMode"> |
| <summary> |
| Effective display mode of the web app (may be set by a manifest and |
| manifest may be overridden by the user). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ForegroundDuration"> |
| <summary> |
| Records the total duration (seconds, bucketed) that the app was open in |
| the foreground in the last calendar day. Summed during the day and emitted |
| if the date changes. Recorded only for installed web apps that are |
| currently open in a web app window, and all preinstalled web apps. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Installed" enum="Boolean"> |
| <summary> |
| Whether the web app is installed. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="InstallSource" enum="WebappInstallSource"> |
| <summary> |
| Install source of the web app (omnibox, menu item, policy, etc). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="NumSessions"> |
| <summary> |
| Records the total number of times the app was focused in the foreground in |
| the last calendar day. Recorded only for installed web apps that are |
| currently open in a web app window, and all preinstalled web apps. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PreinstalledWindowExperimentHasLaunchedBefore" enum="Boolean"> |
| <summary> |
| Records whether the user has launched this preinstalled app before the |
| preinstalled app window vs tab experiment started. Recorded only if the |
| user was eligible for the experiment, which is new Chrome OS users. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="PreinstalledWindowExperimentUserGroup" |
| enum="WebAppPreinstalledWindowExperimentUserGroup"> |
| <summary> |
| Records the user group that the user is in, for an experiment on opening |
| preinstalled apps in windows vs tabs. Recorded only if the user was |
| eligible for the experiment, which is new Chrome OS users. |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Promotable" enum="Boolean"> |
| <summary> |
| Whether the web app is currently considered 'promotable' (passes Chrome |
| checks to be considered an installable web app). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Used" enum="Boolean"> |
| <summary> |
| Records that the web app was used. Always true (or the event would not |
| have been emitted for this WebApp). |
| </summary> |
| <aggregation> |
| <history> |
| <index fields="profile.country"/> |
| <index fields="profile.form_factor"/> |
| <index fields="profile.system_ram"/> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="WebOTPImpact"> |
| <owner>yigu@chromium.org</owner> |
| <owner>goto@chromium.org</owner> |
| <owner>web-identity@google.com</owner> |
| <summary> |
| Records in the browser process when a document is destroyed. |
| </summary> |
| <metric name="PhoneCollection" enum="PhoneCollectionState"> |
| <summary> |
| Records whether a document collected phone number, and/or used WebOTP, |
| and/or used OneTimeCode (OTC) during its lifecycle. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="WebRTC.AddressHarvesting"> |
| <owner>hta@chromium.org</owner> |
| <summary> |
| Collects usage patterns that may indicate attempts to gather users' IP |
| addresses. A heuristic in the webrtc library tries to detect usages that may |
| indicate attempts to gather users' IP addresses rather than setting up |
| communication via WebRTC, and reports possible attempts. |
| </summary> |
| <metric name="UsagePattern"> |
| <summary> |
| The usage pattern detected (an int encoding bit values). The bits are |
| defined in third_party/webrtc/pc/peerconnection.h, in the |
| "PeerConnection::UsageEvent" enum. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="WebRTC.ComplexSdp"> |
| <owner>hbos@chromium.org</owner> |
| <owner>guidou@chromium.org</owner> |
| <summary> |
| Logged when an application uses complex SDP in a WebRTC PeerConnection or |
| experiences an error attempting to parse SDP. Such cases will result in |
| errors if the application assumes the wrong default SDP format. This is an |
| important concern during the transition of the default SDP format from Plan |
| B to Unified Plan. |
| </summary> |
| <metric name="Category"> |
| <summary> |
| A value that represents how complex/unparsable SDP is used. The categories |
| are defined in blink::ComplexSdpCategory. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="Worker.ClientAdded"> |
| <owner>cfredric@google.com</owner> |
| <summary> |
| Recorded when a client connects to an existing SharedWorker or |
| ServiceWorker; records the source IDs of the client (which may be a document |
| or another worker), and the type of the worker being connected to. In the |
| case of a ServiceWorker, this is recorded for each worker-client pair that |
| could communicate (whether or not they actually do) and this is only |
| recorded once the client is execution ready. Note also that emission can be |
| caused by the creation of a new ServiceWorker or a new ServiceWorker client. |
| </summary> |
| <metric name="ClientSourceId"> |
| <summary> |
| The UKM source ID of the connecting client, as an integer. |
| </summary> |
| </metric> |
| <metric name="WorkerType" enum="WorkerType"> |
| <summary> |
| The type of the worker that was connected to. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="XR.PageSession" singular="True"> |
| <obsolete> |
| Removed 2/2020 |
| </obsolete> |
| <owner>xr-dev@chromium.org</owner> |
| <summary> |
| Records properties of page use in XR, including VR browsing and WebXR |
| presentation. |
| </summary> |
| <metric name="Duration"> |
| <summary> |
| The approximate amount of time the user spends on a page in XR in seconds. |
| Times are reported accurately when low, for example, under a minute, and |
| get rounded to minutes and then hours as they get larger. This is done by |
| SessionTracker::GetRoundedDurationInSeconds. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EnteredFullscreen" enum="Boolean"> |
| <summary> |
| A boolean that is set to 1 if the user requested fullscreen while in XR on |
| some element on the page. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="EnteredVROnPageReason" enum="VRStartReason"> |
| <summary> |
| An enum that indicates that the user entered VR on this page and what |
| triggered the entry into VR, where 1 means VR was entered through headset |
| activation, and 2 means that request presentation triggered the entry into |
| VR. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="TimeOnPage"> |
| <obsolete> |
| Deprecated. |
| </obsolete> |
| <summary> |
| Deprecated. |
| </summary> |
| </metric> |
| <metric name="WasOmniboxNavigation" enum="Boolean"> |
| <summary> |
| A boolean that is set to 1 if this page was entered into the omnibox, |
| either manually or using autocomplete. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="WasVoiceSearchNavigation" enum="Boolean"> |
| <summary> |
| A boolean that is set to 1 if this page was specifically requested and |
| recognized by a voice search. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="XR.WebXR" singular="True"> |
| <owner>billorr@chromium.org</owner> |
| <owner>xr-dev@chromium.org</owner> |
| <summary> |
| Records information about WebXR methods that were used in a single |
| navigation. The event will be recorded as the WebXR functions are called - |
| since the event is singular, the data that will eventualy be sent will |
| contain a union of metrics that were set in an event. |
| </summary> |
| <metric name="DidGetGamepads"> |
| <obsolete> |
| Deprecated in M75. |
| </obsolete> |
| <summary> |
| Boolean value that indicates that the Gamepad API was used on a WebXR |
| site. |
| </summary> |
| </metric> |
| <metric name="DidGetXRInputSources" enum="Boolean"> |
| <summary> |
| Boolean value that indicates that the WebXR input API was used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DidRequestAvailableDevices" enum="Boolean"> |
| <summary> |
| Boolean value that indicates that the API to enumerate devices was called. |
| This API is only exposed through WebVR. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DidRequestPose" enum="Boolean"> |
| <summary> |
| Boolean value that indicates that poses were requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DidRequestPresentation" enum="Boolean"> |
| <summary> |
| Boolean value that indicates that presentation was requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="DidUseNavigatorXR" enum="Boolean"> |
| <summary> |
| Boolean value that indicates that the WebXR Device API was used. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ReturnedDevice" enum="Boolean"> |
| <summary> |
| Boolean value that indicates that a device was returned by the API to |
| enumerate devices. This API is only exposed through WebVR. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="ReturnedPresentationCapableDevice" enum="Boolean"> |
| <summary> |
| Boolean value that indicates that a device was returned by the API to |
| enumerate devices, and that the device supports presentation. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="XR.WebXR.PresentationSession"> |
| <obsolete> |
| Deprecated 5/2019 |
| </obsolete> |
| <owner>xr-dev@chromium.org</owner> |
| <summary> |
| Records data for a presentation session, where WebXR is running an exclusive |
| presentation to some device. |
| </summary> |
| <metric name="Duration"> |
| <summary> |
| The approximate amount of time the user spends in presentation in seconds. |
| Times are reported accurately when low, for example, under a minute, and |
| get rounded to minutes and then hours as they get larger. This is done by |
| SessionTracker::GetRoundedDurationInSeconds. |
| </summary> |
| </metric> |
| <metric name="StartAction"> |
| <summary> |
| An enum value to track specifically how the user got into XR presentation. |
| See `vr::PresentationStartAction` for enum type declaration. 0: Other, |
| catch all. 1: RequestFrom2DBrowsing, the page requested presentation while |
| Chrome was in 2D mode. 2: RequestFromVRBrowsing, the page requested |
| presentation while Chrome was in VR browsing mode. 3: HeadsetActivation, |
| the user activated the VR headset while in 2D browsing on the page, which |
| listens for headset activations to request presentation. 4: DeepLinkedApp |
| (Obsolete), The page was launched in Chrome from the VR system home (e.g., |
| Daydream Home) and requested presentation. |
| </summary> |
| </metric> |
| </event> |
| |
| <event name="XR.WebXR.Session"> |
| <owner>billorr@chromium.org</owner> |
| <owner>bialpio@chromium.org</owner> |
| <owner>xr-dev@chromium.org</owner> |
| <owner>cassew@google.com</owner> |
| <summary> |
| When session ends, records data for a WebXR / WebVR session. |
| </summary> |
| <metric name="Duration"> |
| <summary> |
| The approximate amount of time (in seconds) that elapsed from session |
| creation to session end. Times are reported accurately when low, for |
| example, under a minute, and get rounded to minutes and then hours as they |
| get larger. This is done by SessionTracker::GetRoundedDurationInSeconds. |
| For inline sessions, this might get pretty large. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <quantiles type="std-percentiles"/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="FeatureRequest.BoundedFloor" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'bounded-floor' feature request. |
| </summary> |
| </metric> |
| <metric name="FeatureRequest.Local" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'local' feature request. |
| </summary> |
| </metric> |
| <metric name="FeatureRequest.LocalFloor" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'local-floor' feature request. |
| </summary> |
| </metric> |
| <metric name="FeatureRequest.Unbounded" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'unbounded' feature request. |
| </summary> |
| </metric> |
| <metric name="FeatureRequest.Viewer" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'viewer' feature request. |
| </summary> |
| </metric> |
| <metric name="FeatureUse.BoundedFloor" enum="Boolean"> |
| <summary> |
| Whether the 'bounded-floor' feature was used during this session, |
| regardless of whether it was used successfully. |
| </summary> |
| </metric> |
| <metric name="FeatureUse.Local" enum="Boolean"> |
| <summary> |
| Whether the 'local' feature was used during this session, regardless of |
| whether it was used successfully. |
| </summary> |
| </metric> |
| <metric name="FeatureUse.LocalFloor" enum="Boolean"> |
| <summary> |
| Whether the 'local-floor' feature was used during this session, regardless |
| of whether it was used successfully. |
| </summary> |
| </metric> |
| <metric name="FeatureUse.Unbounded" enum="Boolean"> |
| <summary> |
| Whether the 'unbounded' feature was used during this session, regardless |
| of whether it was used successfully. |
| </summary> |
| </metric> |
| <metric name="FeatureUse.Viewer" enum="Boolean"> |
| <summary> |
| Whether the 'viewer' feature was used during this session, regardless of |
| whether it was used successfully. |
| </summary> |
| </metric> |
| <metric name="IsLegacyWebVR" enum="Boolean"> |
| <obsolete> |
| Removed 2/2020 |
| </obsolete> |
| <summary> |
| Boolean value indicating whether a session was created using the legacy |
| WebVR API rather than WebXR. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Mode" enum="XRSessionMode"> |
| <summary> |
| An enum value specifying WebXR session's mode. See `device::SessionMode` |
| for enum type declaration. 0: Unknown, catch all. 1: Inline session. 2: |
| Immersive VR session. 3: Immersive AR session. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| <event name="XR.WebXR.SessionRequest"> |
| <owner>xr-dev@chromium.org</owner> |
| <owner>cassew@google.com</owner> |
| <summary> |
| Recorded when promise returned by `requestSession` gets resolved / rejected. |
| </summary> |
| <metric name="Feature.BoundedFloor" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'bounded-floor' feature request. |
| </summary> |
| </metric> |
| <metric name="Feature.Local" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'local' feature request. |
| </summary> |
| </metric> |
| <metric name="Feature.LocalFloor" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'local-floor' feature request. |
| </summary> |
| </metric> |
| <metric name="Feature.Unbounded" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'unbounded' feature request. |
| </summary> |
| </metric> |
| <metric name="Feature.Viewer" enum="XRFeatureRequestStatus"> |
| <summary> |
| State of the 'viewer' feature request. |
| </summary> |
| </metric> |
| <metric name="Mode" enum="XRSessionMode"> |
| <summary> |
| An enum value that indicates that the `requestSession` API was called to |
| request session with this mode. See `device::SessionMode` for enum type |
| declaration. 0: Unknown, catch all. 1: Inline session was requested. 2: |
| Immersive VR session was requested. 3: Immersive AR session was requested. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| <metric name="Status" enum="XRSessionRequestStatus"> |
| <summary> |
| An enum value that describes the result of the call to `requestSession` |
| method. See `` for enum type declaration. 0: Success. 1: Other failure. |
| </summary> |
| <aggregation> |
| <history> |
| <statistics> |
| <enumeration/> |
| </statistics> |
| </history> |
| </aggregation> |
| </metric> |
| </event> |
| |
| </ukm-configuration> |