<!--
Copyright 2020 The Chromium Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<!--
This file is used to generate a comprehensive list of Installer histograms
along with a detailed description for each histogram.
For best practices on writing histogram descriptions, see
https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md
Please follow the instructions in the OWNERS file in this directory to find a
reviewer. If no OWNERS file exists, please consider signing up at
go/reviewing-metrics (Googlers only), as all subdirectories are expected to
have an OWNERS file. As a last resort you can send the CL to
[email protected].
-->
<histogram-configuration>
<histograms>
<histogram name="Installer.DevModeErrorCodes" enum="UpdateEngineErrorCode"
expires_after="M85">
<owner>[email protected]</owner>
<summary>Errors from update_engine process when running in dev mode.</summary>
</histogram>
<histogram name="Installer.Postinstall.BiosType" enum="ChromeOSBiosType"
expires_after="2025-01-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The firmware+bootloader type targeted when installing/updating.
The main intent is to see distribution of EFI/Legacy on boards where those
types are both supported.
This is reported early in postinstall, only on ChromeOS, and only when
USE=postinst_metrics. There's also an increased risk of losing metrics
recorded in postinstall, see:
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/installer/docs/postinst_metrics.md
</summary>
</histogram>
<histogram name="Installer.Postinstall.EfiBootEntryCount" units="entries"
expires_after="2025-01-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Total number of EFI Boot* entries seen during postinstall, before making any
modifications.
Growth in higher buckets across releases warrants additional investigation:
are we accidentally creating excess entries?
This is reported during postinstall, only on ChromeOS, and only when
USE=postinst_metrics. There's also an increased risk of losing metrics
recorded in postinstall, see:
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/installer/docs/postinst_metrics.md
</summary>
</histogram>
<histogram name="Installer.Postinstall.EfiBootEntryFailedLoad" units="entries"
expires_after="2025-01-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of EFI Boot* entries that we couldn't load.
We have seen bugs result in failure to read entries.
This is reported during postinstall, only on ChromeOS, and only when
USE=postinst_metrics. There's also an increased risk of losing metrics
recorded in postinstall, see:
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/installer/docs/postinst_metrics.md
</summary>
</histogram>
<histogram name="Installer.Postinstall.EfiManagementEvent"
enum="ChromeOSEfiManagementEvent" expires_after="2025-01-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Event of interest from EFI boot entry management. Intended mainly to asses
the frequency of various expected-to-be-rare errors or uncommon occurrances.
This is reported in multiple, potentially-overlapping places, so the total
number of events is not necessarily meaningful. Instead look at the count of
individual buckets over time.
This is reported during postinstall, only on ChromeOS, and only when
USE=postinst_metrics. There's also an increased risk of losing metrics
recorded in postinstall, see:
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/installer/docs/postinst_metrics.md
</summary>
</histogram>
<histogram name="Installer.Postinstall.ESPMountRetries" units="retries"
expires_after="2025-01-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
How many retries were necessary when attempting to mount the boot Partition
after partition updates. Reported once during postinstall. ChromeOS only.
</summary>
</histogram>
<histogram name="Installer.Postinstall.ManagedEfiBootEntryCount"
units="entries" expires_after="2025-01-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Number of EFI Boot* entries seen during postinstall that match our
label/description.
Any values greater than 1 are potentially concerning, as we try to enforce
just one.
This is only reported if all entries load successfully, because otherwise
our count may be invalid.
This is reported during postinstall, only on ChromeOS, and only when
USE=postinst_metrics. There's also an increased risk of losing metrics
recorded in postinstall, see:
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/installer/docs/postinst_metrics.md
</summary>
</histogram>
<histogram name="Installer.Postinstall.NonChromebookBiosSuccess.{BiosType}"
enum="BooleanSuccess" expires_after="2025-01-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Success or Failure of special handling for BiosType: {BiosType}.
This doesn't indicate overall success or failure of postinstall on these
systems.
This is reported after making changes to the EFI System Partition, only on
ChromeOS, and only when USE=postinst_metrics. There's also an increased risk
of losing metrics recorded in postinstall, see:
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/installer/docs/postinst_metrics.md
</summary>
<token key="BiosType">
<variant name="EFI" summary=""/>
<variant name="Legacy" summary=""/>
<variant name="Secure" summary=""/>
<variant name="UBoot" summary=""/>
<variant name="Unknown" summary=""/>
</token>
</histogram>
<histogram name="Installer.Postinstall.RevenPartitionMigration"
enum="ChromeOSRevenPartitionMigration" expires_after="2025-01-05">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Result of running the Reven (ChromeOS Flex) partition migration.
This is reported at the end of the partition migration, which is run during
postinstall. The migration is only run with USE=reven_partition_migration.
Note that some metrics may be lost during postinstall, see:
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/platform2/installer/docs/postinst_metrics.md
</summary>
</histogram>
<histogram name="Installer.PowerwashCount" units="powerwashes"
expires_after="2025-01-05">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of times a Chrome OS device has been powerwashed (factory reset)
without subsequently going through recovery and/or changing the dev mode
switch. Reported once after each powerwash.
</summary>
</histogram>
<histogram name="Installer.PowerwashDays" units="powerwashdays"
expires_after="2025-01-05">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
How many calendar(UTC) days that powerwash occurred before the date that the
metric is recorded. The histogram is recorded on the next restart after
powerwash. The purpose of this metric is to get the date when the powerwash
happened. This histogram is 1 based instead of 0 based and 1 means the
device was restarted immediately after powerwash completed. The value for
marjority cases is 1, but some edge cases may greater than 1 which means the
device was shutdown immediately (by user manually) after the powerwash
completed and then restarted more than 1 days later. The powerwash date and
the metric recorded date are all get from client device.
</summary>
</histogram>
<histogram name="Installer.Recovery.NbrDurationMinutes" units="minutes"
expires_after="2024-12-01">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The duration in minutes for the network based recovery to complete.
This is reported on reboot after a successful recovery.
This metric is specific to Chrome OS.
</summary>
</histogram>
<histogram name="Installer.Recovery.Reason" enum="ChromeOSRecoveryReason"
expires_after="2025-01-05">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The reason for entering recovery mode immediately prior to a recovery.
This is reported on reboot after a successful recovery.
This metric is specific to Chrome OS.
</summary>
</histogram>
</histograms>
</histogram-configuration>