"Fossies" - the Fresh Open Source Software Archive

Member "firefox-69.0.1/build/docs/telemetry.rst" (17 Sep 2019, 7432 Bytes) of package /linux/www/firefox-69.0.1.source.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format (assuming markdown format). Alternatively you can here view or download the uninterpreted source code file. A member file download can also be achieved by clicking within a package contents listing on the according byte size field. See also the last Fossies "Diffs" side-by-side code changes report for "telemetry.rst": 67.0.4_vs_68.0.

Build Telemetry

The build system (specifically, all the build tooling hooked up to ./mach) has been configured to collect metrics data points for various build system actions. This data helps drive team planning for the build team and ensure that resources are applied to build processes that need them most. You can opt-in to send telemetry to Mozilla during ./mach bootstrap.

The build telemetry schema can be found in-tree under python/mozbuild/mozbuild/telemetry.py in Voluptuous schema format. You can use the export_telemetry_schema.py script in that same directory to get the schema in JSON-schema format. Details of the schema are specified below:

telemetry

type

object

Required

telemetry.json#/properties/argv, telemetry.json#/properties/build_opts, telemetry.json#/properties/client_id, telemetry.json#/properties/command, telemetry.json#/properties/duration_ms, telemetry.json#/properties/success, telemetry.json#/properties/system, telemetry.json#/properties/time

Properties: telemetry.json#/properties/argv, telemetry.json#/properties/build_opts, telemetry.json#/properties/client_id, telemetry.json#/properties/command, telemetry.json#/properties/duration_ms, telemetry.json#/properties/exception, telemetry.json#/properties/file_types_changed, telemetry.json#/properties/success, telemetry.json#/properties/system, telemetry.json#/properties/time

argv

Full mach commandline. If the commandline contains absolute paths they will be sanitized.

type

array

Every element of argv is:

type

string

build_opts

Selected build options

type

object

Properties: telemetry.json#/properties/build_opts/properties/artifact, telemetry.json#/properties/build_opts/properties/ccache, telemetry.json#/properties/build_opts/properties/compiler, telemetry.json#/properties/build_opts/properties/debug, telemetry.json#/properties/build_opts/properties/icecream, telemetry.json#/properties/build_opts/properties/opt, telemetry.json#/properties/build_opts/properties/sccache

artifact

true if --enable-artifact-builds

type

boolean

ccache

true if ccache is in use (--with-ccache)

type

boolean

compiler

The compiler type in use (CC_TYPE)

Allowed values:

debug

true if build is debug (--enable-debug)

type

boolean

icecream

true if icecream in use

type

boolean

opt

true if build is optimized (--enable-optimize)

type

boolean

sccache

true if ccache in use is sccache

type

boolean

build_attrs

Selected runtime attributes of the build

type

object

Properties: telemetry.json#/properties/build_attrs/properties/cpu_percent, telemetry.json#/properties/build_attrs/properties/clobber

cpu_percent

cpu utilization observed during the build

type

number

clobber

true if the build was a clobber/full build

type

boolean

client_id

A UUID to uniquely identify a client

type

string

command

The mach command that was invoked

type

string

duration_ms

Command duration in milliseconds

type

number

exception

If a Python exception was encountered during the execution of the command, this value contains the result of calling repr on the exception object.

type

string

file_types_changed

This array contains a list of objects with {ext, count} properties giving the count of files changed since the last invocation grouped by file type

type

array

Every element of file_types_changed is:

type

object

Required

telemetry.json#/properties/file_types_changed/items/properties/count, telemetry.json#/properties/file_types_changed/items/properties/ext

Properties: telemetry.json#/properties/file_types_changed/items/properties/count, telemetry.json#/properties/file_types_changed/items/properties/ext

count

Count of changed files with this extension

type

number

ext

File extension

type

string

success

true if the command succeeded

type

boolean

system

type

object

Required

telemetry.json#/properties/system/properties/os

Properties: telemetry.json#/properties/system/properties/cpu_brand, telemetry.json#/properties/system/properties/drive_is_ssd, telemetry.json#/properties/system/properties/logical_cores, telemetry.json#/properties/system/properties/memory_gb, telemetry.json#/properties/system/properties/os, telemetry.json#/properties/system/properties/physical_cores, telemetry.json#/properties/system/properties/virtual_machine

cpu_brand

CPU brand string from CPUID

type

string

drive_is_ssd

true if the source directory is on a solid-state disk

type

boolean

logical_cores

Number of logical CPU cores present

type

number

memory_gb

System memory in GB

type

number

os

Operating system

Allowed values:

physical_cores

Number of physical CPU cores present

type

number

virtual_machine

true if the OS appears to be running in a virtual machine

type

boolean

time

Time at which this event happened

type

string

format

date-time