blob: 1553d0843182323249d34a45991e01a365630521 [file] [log] [blame]
<!--
Copyright 2020 The Chromium Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<!--
This file is used to generate a comprehensive list of Startup histograms
along with a detailed description for each histogram.
For best practices on writing histogram descriptions, see
https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md
Please send CLs to chromium-metrics-reviews@google.com rather than to specific
individuals. These CLs will be automatically reassigned to a reviewer within
about 5 minutes. This approach helps the metrics team to load-balance incoming
reviews. Googlers can read more about this at go/gwsq-gerrit.
-->
<histogram-configuration>
<histograms>
<histogram name="Startup.AfterStartupTaskCount" units="units"
expires_after="2021-09-05">
<owner>michaeln@chromium.org</owner>
<summary>
The number of after-startup tasks that were queued prior to startup
completion and deferred until that time.
</summary>
</histogram>
<histogram name="Startup.AfterStartupTaskDelayedUntilTime" units="ms"
expires_after="2021-09-19">
<owner>michaeln@chromium.org</owner>
<summary>
Time from the process creation until deferred after-startup tasks began
running.
</summary>
</histogram>
<histogram name="Startup.Android.CachedFeedVisibilityConsistency"
enum="BooleanConsistent" expires_after="2021-08-09">
<owner>hanxi@chromium.org</owner>
<owner>spdonghao@chromium.org</owner>
<owner>wychen@chromium.org</owner>
<summary>
Records whether or not the cached Feed visibility in the SharedPreferences
is consistent with the Feed visibility user preference on the disk. It's
recorded when overview mode is shown because of Return to Tab Switcher, and
only on cold start. By recording this histogram, the number of mismatches
between the criteria of whether the Feed placeholder of Instant Start
pre-native is shown and the criteria of whether Feed articles after native
initialization are shown is recorded.
</summary>
</histogram>
<histogram name="Startup.Android.ChromeTabbedTaskExistsTime" units="ms"
expires_after="2021-09-19">
<owner>mthiesse@chromium.org</owner>
<owner>yfriedman@chromium.org</owner>
<summary>
Measures the amount of time it takes to check if a ChromeTabbedActivity task
already exists during startup.
</summary>
</histogram>
<histogram base="true" name="Startup.Android.Cold.TimeToFirstContentfulPaint"
units="ms" expires_after="2021-09-12">
<owner>pasko@chromium.org</owner>
<owner>alexilin@chromium.org</owner>
<summary>
Android: The time from the activity creation point to the first contentful
paint of the first loaded page. It's not recorded when the first loaded page
is non http(s) page like a chrome error page, a new tab page, a blank page.
It's also not recorded if the application wasn't in the foreground since the
start till the end of event.
</summary>
</histogram>
<histogram base="true" name="Startup.Android.Cold.TimeToFirstNavigationCommit"
units="ms" expires_after="2021-09-12">
<owner>pasko@chromium.org</owner>
<owner>alexilin@chromium.org</owner>
<summary>
Android: The time from the activity creation point to the moment the first
navigation is committed, i.e. when renderer gets the first byte of the
document. It's not recorded when the first loaded page is non http(s) page
like a chrome error page, a new tab page, a blank page. It's also not
recorded if the application wasn't in the foreground since the start till
the end of event.
</summary>
</histogram>
<histogram name="Startup.Android.Cold.TimeToFirstVisibleContent" units="ms"
expires_after="2021-08-10">
<owner>yfriedman@chromium.org</owner>
<owner>yashard@chromium.org</owner>
<summary>
The time from the activity creation point to the moment Chrome appears
ready. The intent is to reflect Clank's perceived cold start performance
regardless of different launch paths. The recorded value is the minimum of
'Startup.Android.Cold.TimeToFirstNavigationCommit.Tabbed' and
'Browser.PaintPreview.TabbedPlayer.TimeToFirstBitmap' metric values.
</summary>
</histogram>
<histogram name="Startup.Android.Cold.TimeToVisibleContent" units="ms"
expires_after="2021-08-29">
<owner>yashard@chromium.org</owner>
<owner>ckitagawa@chromium.org</owner>
<summary>
Android: The time from the activity creation point to the moment the content
may first appear ready to a user. The intent is to capture readiness of
Chrome regardless of whether Chrome is launched into native UI or a web
page. The recorded value is the minimum of
'Startup.Android.Cold.TimeToFirstContentfulPaint.Tabbed' and
'Browser.PaintPreview.TabbedPlayer.TimeToFirstBitmap' metric values.
</summary>
</histogram>
<histogram base="true" name="Startup.Android.FeedContentFirstLoadedTime"
units="ms" expires_after="2021-10-04">
<!-- Name completed by histogram_suffixes name="JavaStartMode" -->
<owner>hanxi@chromium.org</owner>
<owner>spdonghao@chromium.org</owner>
<owner>wychen@chromium.org</owner>
<summary>
Records the time duration from a cold start till the Feeds articles are
first loaded on the StartSurface. This histogram is only recorded when
StartSurface is shown at launch due to &quot;return to tab switcher&quot;
feature.
</summary>
</histogram>
<histogram name="Startup.Android.FeedsLoadingPlaceholderShown.Instant"
units="ms" expires_after="2021-10-10">
<owner>hanxi@chromium.org</owner>
<owner>spdonghao@chromium.org</owner>
<owner>wychen@chromium.org</owner>
<summary>
Records the time duration from a cold start till the Feeds loading
placeholder is shown on the StartSurface. This placeholder is only shown
when the feature flag InstantStart is enabled and StartSurface is shown at
launch due to &quot;return to tab switcher&quot; feature.
</summary>
</histogram>
<histogram base="true" name="Startup.Android.FeedStreamCreatedTime" units="ms"
expires_after="2021-08-09">
<!-- Name completed by histogram_suffixes name="JavaStartMode" -->
<owner>hanxi@chromium.org</owner>
<owner>spdonghao@chromium.org</owner>
<owner>wychen@chromium.org</owner>
<summary>
Records the time duration from a cold start till the Feeds stream is created
on the StartSurface. This histogram is only recorded when StartSurface is
shown at launch due to &quot;return to tab switcher&quot; feature.
</summary>
</histogram>
<histogram base="true" name="Startup.Android.FirstDrawCompletedTime" units="ms"
expires_after="2021-10-10">
<!-- Name completed by histogram_suffixes name="JavaStartMode" -->
<owner>hanxi@chromium.org</owner>
<owner>spdonghao@chromium.org</owner>
<owner>wychen@chromium.org</owner>
<summary>
Records the time duration from a cold start till the first draw completes.
</summary>
</histogram>
<histogram name="Startup.Android.GURLEnsureMainDexInitialized" units="ms"
expires_after="2021-10-10">
<owner>mthiesse@chromium.org</owner>
<owner>yfriedman@chromium.org</owner>
<summary>
Measures the amount of time startup has likely been delayed due to GURL
waiting on the native library to be initialized.
</summary>
</histogram>
<histogram base="true" name="Startup.Android.SingleTabTitleAvailableTime"
units="ms" expires_after="2021-10-10">
<!-- Name completed by histogram_suffixes name="JavaStartMode" -->
<owner>hanxi@chromium.org</owner>
<owner>spdonghao@chromium.org</owner>
<owner>wychen@chromium.org</owner>
<summary>
Records the time duration from a cold start till the title of the single Tab
is shown on the StartSurface. This histogram is only recorded when
StartSurface is shown at launch due to &quot;return to tab switcher&quot;
feature.
</summary>
</histogram>
<histogram name="Startup.Android.StartupTabPreloader.TabLoaded" units="Boolean"
expires_after="2021-08-22">
<owner>skyostil@chromium.org</owner>
<summary>
Android: Whether or not creation of a profile lead to the
StartupTabPreloader speculatively created a tab. Recorded when a profile is
created, assuming a StartupTabPreloader has been constructed for intents
with a url and either regular Chrome or a Custom Tab will be loaded.
</summary>
</histogram>
<histogram name="Startup.Android.StartupTabPreloader.TabTaken" units="Boolean"
expires_after="2020-11-08">
<owner>skyostil@chromium.org</owner>
<summary>
Android: Whether or not a tab speculatively created by the
StartupTabPreloader was subsequently adopted by ChromeTabCreator. Recorded
when a tab is loaded, assuming a StartupTabPreloader has been constructed
for intents with a url for either regular Chrome or a Custom Tab will be
loaded.
</summary>
</histogram>
<histogram name="Startup.Android.ThumbnailFetchedForGTSFirstMeaningfulPaint"
units="thumbnails" expires_after="2020-08-02">
<owner>yusufo@chromium.org</owner>
<owner>yfriedman@chromium.org</owner>
<summary>
Android: The number of thumbnails fetched for the first meaningful paint of
the Grid Tab Switcher. First meaningful paint is defined as having all the
thumbnails shown. This is recorded at most once per activity lifecycle. This
is gated by feature &quot;TabSwitcherOnReturn&quot;.
</summary>
</histogram>
<histogram name="Startup.Android.TimeToGTSFirstMeaningfulPaint" units="ms"
expires_after="2021-08-22">
<owner>yusufo@chromium.org</owner>
<owner>yfriedman@chromium.org</owner>
<summary>
Android: The elapsed time from the activity creation point to the first
meaningful paint of the Grid Tab Switcher. First meaningful paint is defined
as having all the thumbnails shown. This is recorded at most once per
activity lifecycle. This is gated by feature
&quot;TabSwitcherOnReturn&quot;.
</summary>
</histogram>
<histogram name="Startup.Android.TimeToGTSFirstMeaningfulPaint.Cold" units="ms"
expires_after="2021-10-04">
<owner>yusufo@chromium.org</owner>
<owner>yfriedman@chromium.org</owner>
<summary>
Android: The elapsed time from the activity creation point to the first
meaningful paint of the Grid Tab Switcher. First meaningful paint is defined
as having all the thumbnails shown. This is recorded at most once per
activity lifecycle. This is gated by feature
&quot;TabSwitcherOnReturn&quot;. It's only recorded on cold startup.
</summary>
</histogram>
<histogram name="Startup.Android.TimeToGTSFirstMeaningfulPaint.Warm" units="ms"
expires_after="2021-08-22">
<owner>yusufo@chromium.org</owner>
<owner>yfriedman@chromium.org</owner>
<summary>
Android: The elapsed time from the activity creation point to the first
meaningful paint of the Grid Tab Switcher. First meaningful paint is defined
as having all the thumbnails shown. This is recorded at most once per
activity lifecycle. This is gated by feature
&quot;TabSwitcherOnReturn&quot;. It's only recorded on warm startup.
</summary>
</histogram>
<histogram name="Startup.BlockForCrashpadHandlerStartupTime" units="ms"
expires_after="M85">
<owner>mark@chromium.org</owner>
<owner>crashpad-dev@chromium.org</owner>
<summary>
The amount of time that elapsed during in
crash_report::BlockUntilHandlerStarted().
</summary>
</histogram>
<histogram name="Startup.BringToForegroundReason"
enum="BooleanBringToForegroundReason" expires_after="2021-09-19">
<owner>peter@chromium.org</owner>
<summary>
Records the cause, each time Chrome is brought to the foreground. Currently
only checks if a NotificationUIManager notification was shown in the last 5
seconds (includes Web Notifications, but not media or Cast).
</summary>
</histogram>
<histogram name="Startup.BrowserMainRunnerImplInitializeLongTime" units="ms"
expires_after="2021-10-04">
<owner>robliao@chromium.org</owner>
<summary>
The amount of time that elapsed during BrowserMainRunnerImpl::Initialize.
</summary>
</histogram>
<histogram name="Startup.BrowserMainRunnerImplInitializeStep1Time" units="ms"
expires_after="M77">
<owner>robliao@chromium.org</owner>
<summary>
The amount of time that elapsed during the first section of
BrowserMainRunnerImpl::Initialize.
</summary>
</histogram>
<histogram name="Startup.BrowserMainRunnerImplInitializeStep2Time" units="ms"
expires_after="M77">
<owner>robliao@chromium.org</owner>
<summary>
The amount of time that elapsed during the second section of
BrowserMainRunnerImpl::Initialize.
</summary>
</histogram>
<histogram name="Startup.BrowserMessageLoopStart.To.NonEmptyPaint2" units="ms"
expires_after="2021-03-07">
<owner>asvitkine@chromium.org</owner>
<summary>
Time between Startup.BrowserMessageLoopStartTime and
Startup.FirstWebContents.NonEmptyPaint2. Recorded explicitly to allow easy
breakdown of Startup.FirstWebContents.NonEmptyPaint2 when diagnosing issues.
</summary>
</histogram>
<histogram name="Startup.BrowserMessageLoopStartHardFaultCount" units="faults"
expires_after="never">
<!-- expires-never: calibration metric for StartupTemperature, see
kColdStartHardFaultCountThreshold and WarmStartHardFaultCountThreshold in
startup_metric_utils.cc for details -->
<owner>chrisha@chromium.org</owner>
<owner>fdoray@chromium.org</owner>
<summary>
The number of hard faults incurred in the browser process from startup to
start of the main thread's message loop, not including first runs of the
browser.
</summary>
</histogram>
<histogram name="Startup.BrowserMessageLoopStartTime" units="ms"
expires_after="never">
<!-- expires-never: used to diagnose regressions to Startup.FirstWebContents.NonEmptyPaint3 -->
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
Time from application start to the start of the main thread's message loop.
Not recorded for first run.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.BrowserMessageLoopStartTime.FirstRun" units="ms"
expires_after="never">
<!-- expires-never: only metric to ensure that first run doesn't regress -->
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
Time from application start to the start of the main thread's message loop.
Recorded for a first run of the browser.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.BrowserProcessImpl_PreMainMessageLoopRunTime"
units="ms" expires_after="M85">
<owner>rkaplow@chromium.org</owner>
<summary>
The amount of time that elapsed during
BrowserProcessImpl::PreMainMessageLoopRun.
</summary>
</histogram>
<histogram name="Startup.BrowserWindow.FirstPaint" units="ms"
expires_after="2021-09-19">
<owner>sebmarchand@chromium.org</owner>
<owner>mblsha@yandex-team.ru</owner>
<summary>
Time from application start to the time the first Browser window has
finished painting its children.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.BrowserWindow.FirstPaint.CompositingEnded" units="ms"
expires_after="2020-04-26">
<obsolete>
Removed 02/2021.
</obsolete>
<owner>sebmarchand@chromium.org</owner>
<owner>mblsha@yandex-team.ru</owner>
<summary>
Time from application start to the time the GPU has finished compositing
after first Browser window has finished painting its children. At this point
the Browser interface is visible on screen. Measures how much time does it
take for GPU to actually paint the first time.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.BrowserWindowDisplay" units="ms" expires_after="never">
<!-- expires-never: used to diagnose regressions to Startup.FirstWebContents.NonEmptyPaint3 -->
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
Time from application start to the time the browser window initially becomes
visible.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.ColdStartFromProcessCreationTime" units="ms"
expires_after="2021-08-22">
<obsolete>
Removed 03/2021. Broken starting M-87; removed and replaced with
Startup.ColdStartFromProcessCreationTimeV2 in M-91.
</obsolete>
<owner>djean@chromium.org</owner>
<owner>olivierrobin@chromium.org</owner>
<summary>
The duration of all initializations from process creation time to UI ready.
This includes code loading, static initializers and the execution time
contained in Startup.ColdStartWithExternalURLTime and
Startup.ColdStartWithoutExternalURLTime metrics. iOS specific. Deprecated
due to incomplete data from M87 to M91. The data is incomplete because it
was not logged in iOS 13+. See Startup.ColdStartFromProcessCreationTimeV2
instead.
</summary>
</histogram>
<histogram name="Startup.ColdStartFromProcessCreationTimeV2" units="ms"
expires_after="2022-03-24">
<owner>djean@chromium.org</owner>
<owner>olivierrobin@chromium.org</owner>
<summary>
The duration of all initializations from process creation time to UI ready
to receive input. iOS specific, from M91+
The process can only be created in response to a user action, either tapping
the icon, tapping a link that opens in Chrome, or using the app switcher to
switch to Chrome after it has been background-killed by the OS.
The metric is recorded at the point where the Chrome window starts receiving
input events like touches and keypresses. However, the Chrome splash screen
is showing at this point, so there aren't any UI elements for a user to
interact with.
It includes code loading, static initializers and the execution time
contained in Startup.ColdStartWithExternalURLTime and
Startup.ColdStartWithoutExternalURLTime metrics.
The total counts in this histogram can be compared with the number of emits
to the user action MobileWillEnterForeground. The former reports the number
of cold starts. The latter is only recorded when Chrome comes to the
foreground on non-cold starts.
</summary>
</histogram>
<histogram name="Startup.ColdStartWithExternalURLTime" units="ms"
expires_after="2021-04-18">
<owner>jif@chromium.org</owner>
<summary>
The duration of all initializations in a cold start triggered by an external
URL.
</summary>
</histogram>
<histogram name="Startup.ColdStartWithoutExternalURLTime" units="ms"
expires_after="M82">
<owner>jif@chromium.org</owner>
<summary>
The duration of all initializations in a cold start not triggered by an
external URL.
</summary>
</histogram>
<histogram name="Startup.CreateFirstProfile" units="ms" expires_after="never">
<!-- expires-never: used to diagnose regressions to Startup.FirstWebContents.NonEmptyPaint3 -->
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
How long it takes to load the original profile synchronously on the UI
thread.
</summary>
</histogram>
<histogram name="Startup.FirstWebContents.FinishReason"
enum="StartupProfilingFinishReason" expires_after="never">
<!-- expires-never: used to understand user behavior shifts when Startup.FirstWebContents.NonEmptyPaint3 regresses -->
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
[Desktop] The reason for which startup profiling was deemed complete. Logged
once per session on startup.
</summary>
</histogram>
<histogram name="Startup.FirstWebContents.MainNavigationFinished" units="ms"
expires_after="never">
<!-- expires-never: used to diagnose regressions to Startup.FirstWebContents.NonEmptyPaint3 -->
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
[Desktop] Measure the elapsed time from application start to the moment when
the navigation is committed (first bytes received) in the first web
contents' main frame.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.FirstWebContents.MainNavigationStart" units="ms"
expires_after="never">
<!-- expires-never: used to diagnose regressions to Startup.FirstWebContents.NonEmptyPaint3 -->
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
[Desktop] Measure the elapsed time from application start to the beginning
of navigation in the first web contents' main frame.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.FirstWebContents.NonEmptyPaint3" units="ms"
expires_after="never">
<!-- expires-never: guiding metric (internal: go/chrome-browser-guiding-metrics) -->
<owner>etiennep@chromium.org</owner>
<owner>fdoray@chromium.org</owner>
<owner>gab@chromium.org</owner>
<owner>chrome-analysis-team@google.com</owner>
<summary>
Measure the elapsed time from the application start to the first non empty
paint of the first web contents. Only comprised of cases where the initial
foreground tab gets to complete its rendering task unimpeded (an improvement
over Startup.FirstWebContents.NonEmptyPaint).
Application start is a time recorded as early as possible in the startup
process. On Android, the application start is the time at which the Java
code starts. On Windows, application start is when chrome.exe:main starts,
before chrome.dll is loaded. On other platforms, it is when
ChromeMainDelegate is constructed.
</summary>
</histogram>
<histogram
name="Startup.FirstWebContents.RenderProcessHostInit.ToNonEmptyPaint"
units="ms" expires_after="M78">
<owner>hans@chromium.org</owner>
<summary>
Time between RenderFrameHostImpl::Init and
Startup.FirstWebContents.NonEmptyPaint2.
</summary>
</histogram>
<histogram name="Startup.LoadTime.ApplicationStartToChromeMain" units="ms"
expires_after="never">
<!-- expires-never: used to diagnose regressions to Startup.FirstWebContents.NonEmptyPaint3 -->
<owner>fdoray@chromium.org</owner>
<owner>etiennep@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
Time from the application start to the C++ ChromeMain() function being
invoked.
</summary>
</histogram>
<histogram name="Startup.LoadTime.ProcessCreateToApplicationStart" units="ms"
expires_after="never">
<!-- expires-never: used to diagnose regressions to Startup.FirstWebContents.NonEmptyPaint3 -->
<owner>fdoray@chromium.org</owner>
<owner>etiennep@chromium.org</owner>
<owner>gab@chromium.org</owner>
<summary>
Time from the process creation to application start, i.e. time recorded as
early as possible in the startup process.
</summary>
</histogram>
<histogram name="Startup.MobileSessionStartAction"
enum="MobileSessionStartAction" expires_after="2021-09-05">
<owner>thegreenfrog@chromium.org</owner>
<owner>olivierrobin@chromium.org</owner>
<summary>
The action requested on the application startup when called from another app
or the OS.
</summary>
</histogram>
<histogram name="Startup.MobileSessionStartFromApps"
enum="MobileSessionCallerApp" expires_after="2021-09-05">
<owner>thegreenfrog@chromium.org</owner>
<owner>olivierrobin@chromium.org</owner>
<summary>The calling application (if any).</summary>
</histogram>
<histogram name="Startup.OSX.AwakeFromNib" units="ms"
expires_after="2018-08-30">
<owner>erikchen@chromium.org</owner>
<summary>
The amount of time that elapsed between main entry and the invocation of
-[AppControllerMac awakeFromNib].
</summary>
</histogram>
<histogram name="Startup.OSX.DockIconWillFinishBouncing" units="ms"
expires_after="M77">
<owner>erikchen@chromium.org</owner>
<summary>
The amount of time that elapsed between main entry and the invocation of
-[AppControllerMac didFinishLaunching:]. At that point, the dock icon will
finish its current animation and stop bouncing.
</summary>
</histogram>
<histogram name="Startup.OSX.PostMainMessageLoopStart" units="ms"
expires_after="M85">
<owner>erikchen@chromium.org</owner>
<summary>
The amount of time that elapsed between main entry and the invocation of
ChromeBrowserMainPartsMac::PostMainMessageLoopStart.
</summary>
</histogram>
<histogram name="Startup.OSX.PostProfileInit" units="ms" expires_after="M77">
<owner>erikchen@chromium.org</owner>
<summary>
The amount of time that elapsed between main entry and the invocation of
ChromeBrowserMainPartsMac::PostProfileInit.
</summary>
</histogram>
<histogram name="Startup.OSX.PreMainMessageLoopStart" units="ms"
expires_after="2018-08-30">
<owner>erikchen@chromium.org</owner>
<summary>
The amount of time that elapsed between main entry and the invocation of
ChromeBrowserMainPartsMac::PreMainMessageLoopStart.
</summary>
</histogram>
<histogram name="Startup.OSX.PreProfileInit" units="ms"
expires_after="2018-08-30">
<owner>erikchen@chromium.org</owner>
<summary>
The amount of time that elapsed between main entry and the invocation of
ChromeBrowserMainPartsMac::PreProfileInit.
</summary>
</histogram>
<histogram name="Startup.OSX.WillFinishLaunching" units="ms"
expires_after="2018-08-30">
<owner>erikchen@chromium.org</owner>
<summary>
The amount of time that elapsed between main entry and the invocation of
-[AppControllerMac willFinishLaunching:].
</summary>
</histogram>
<histogram name="Startup.PreMainMessageLoopRunImplLongTime" units="ms"
expires_after="2021-08-22">
<owner>rkaplow@chromium.org</owner>
<summary>
The amount of time that elapsed during
ChromeBrowserMainParts::PreMainMessageLoopRunImpl.
</summary>
</histogram>
<histogram name="Startup.StartupBrowserCreator_Start" units="ms"
expires_after="M77">
<owner>rkaplow@chromium.org</owner>
<summary>
The amount of time that elapsed during StartupBrowserCreator::Start().
</summary>
</histogram>
<histogram name="Startup.Temperature" enum="StartupTemperature"
expires_after="2021-10-10">
<!-- expires-after: Diagnosis metric for changes in StartupTemperature suffix.
Shouldn't truly expire but kColdStartHardFaultCountThreshold should be
surveyed yearly. -->
<owner>chrisha@chromium.org</owner>
<owner>fdoray@chromium.org</owner>
<summary>
Indicates whether or not the given startup was warm, cold or unable to be
determined. This is based off observing the number of hard faults that occur
during startup prior to Startup.BrowserMessageLoopStartTime. The threshold
for cold startup was updated Jan 2020, a bump in the metric is expected.
</summary>
</histogram>
<histogram name="Startup.WebFooterExperiment.DidFirstVisuallyNonEmptyPaint"
units="ms" expires_after="M89">
<owner>pbos@chromium.org</owner>
<owner>robliao@chromium.org</owner>
<summary>
Time from application start until the first web footer finishes painting.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
<histogram name="Startup.WebFooterExperiment.WebFooterCreation" units="ms"
expires_after="M89">
<owner>pbos@chromium.org</owner>
<owner>robliao@chromium.org</owner>
<summary>
Time from application start until the first WebView used to display a web
footer is created.
April 8, 2020: Changed the reference from process creation to application
start. See Startup.FirstWebContents.NonEmptyPaint3 for a definition of
application start.
</summary>
</histogram>
</histograms>
</histogram-configuration>