Metrics and error reports are collected from devices in several ways: Cobalt, feedback reports, crash reports, manual reports from developers and QA. Interpreting these signals requires knowing where they are generated from to varying levels of detail. This document describes the places where version information about the system are stored for use in these types of reports.
Note that this information only applies to the base system; dynamically or ephemerally added software will not be included here.
To view the device's build information using a command line, run the following ffx
command:
ffx target show
To access build information at runtime, add the feature build-info
to the component manifest of the component that needs to read the following fields:
Location: /config/build-info/product
This string describes the product configuration used at build time. Ths string defaults to the value passed as PRODUCT
in fx set
. Example: products/core.gni
and products/workstation.gni
.
Location: /config/build-info/board
This string describes the board configuration used at build time to specify the target hardware. This string defaults to the value passed as BOARD
in fx set
. Example: boards/x64.gni
.
Location: /config/build-info/version
This string describes the version of the build. The string defaults to the same string used currently in latest-commit-date
, which can be overridden by build infrastructure to provide a more semantically meaningful version, for example, to include the release train the build was produced on.
Location: /config/build-info/latest-commit-date
This string contains a timestamp of the most recent commit to the integration repository (specifically, the CommitDate
field) formatted in strict ISO 8601 format in the UTC timezone. Example: 2019-03-28T15:42:20+00:00
.
Location: /config/build-info/snapshot
This string contains the Jiri snapshot of the most recent ‘jiri update’.
Location: Stored in vDSO. Accessed through zx_system_get_version_string
.
This string contains the Zircon revision computed during the kernel build process.