<!--
Copyright 2024 The Chromium Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<histogram-configuration>
<histograms>
<histogram name="StructuredMetrics.ExternalMetricsDropped" units="count"
expires_after="2025-02-09">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of events that are dropped when processing External Metrics.
Events are dropped once a threshold, 50 by default, is reached. This field
is only recorded when recording is enabled.
</summary>
</histogram>
<histogram name="StructuredMetrics.ExternalMetricsDropped2.{Project}"
units="count" expires_after="2025-02-16">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of events that are dropped when processing External Metrics per
project. Events are dropped once a threshold, 50 by default, is reached.
This field is only recorded when recording is enabled.
</summary>
<token key="Project">
<variant name="AudioPeripheral"/>
<variant name="AudioPeripheralInfo"/>
<variant name="Bluetooth"/>
<variant name="BluetoothChipset"/>
<variant name="BluetoothDevice"/>
<variant name="Cellular"/>
<variant name="HardwareVerifier"/>
<variant name="Rmad"/>
<variant name="RollbackEnterprise"/>
<variant name="UNKOWN"/>
<variant name="UsbDevice"/>
<variant name="UsbError"/>
<variant name="UsbPdDevice"/>
<variant name="UsbSession"/>
<variant name="WiFi"/>
<variant name="WiFiAP"/>
<variant name="WiFiChipset"/>
</token>
</histogram>
<histogram name="StructuredMetrics.ExternalMetricsProduced2.{Project}"
units="count" expires_after="2025-02-16">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of events that are produced by Platform2 per-project. This field
is only recorded when recording is enabled.
</summary>
<token key="Project">
<variant name="AudioPeripheral"/>
<variant name="AudioPeripheralInfo"/>
<variant name="Bluetooth"/>
<variant name="BluetoothChipset"/>
<variant name="BluetoothDevice"/>
<variant name="Cellular"/>
<variant name="HardwareVerifier"/>
<variant name="Rmad"/>
<variant name="RollbackEnterprise"/>
<variant name="UNKOWN"/>
<variant name="UsbDevice"/>
<variant name="UsbError"/>
<variant name="UsbPdDevice"/>
<variant name="UsbSession"/>
<variant name="WiFi"/>
<variant name="WiFiAP"/>
<variant name="WiFiChipset"/>
</token>
</histogram>
<histogram name="StructuredMetrics.FlushedMap.Error" units="FlushedMapError"
expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Logs errors that occur in FlushedMap. This metric is captured when events
are written to disk.
</summary>
</histogram>
<histogram name="StructuredMetrics.FlushedMap.LoadedFlushedKeys" units="count"
expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of flushed keys loaded from the previous session. This is
recorded once when the Structured Metrics is created.
</summary>
</histogram>
<histogram name="StructuredMetrics.InitSequence" enum="UmaInitSequence"
expires_after="2025-07-14">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Logged during StructuredMetricsService initialization whether the init task
or the initial log timer completed first. The expectation is the vast
majority of the time, the init task should complete first. If metrics show
otherwise, then it may indicate there's a bug in the
StructuredMetricsService init sequence and that it should be investigated.
</summary>
</histogram>
<histogram name="StructuredMetrics.LogStore.CompressionRatio" units="%"
expires_after="2025-07-14">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The compression ratio of Structured Metrics logs. Recorded when logs are
stored.
</summary>
</histogram>
<histogram name="StructuredMetrics.LogStore.Dropped" units="logs"
expires_after="2025-07-14">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of logs dropped for exceeding the log size constraints. Recorded
when trimming the logs is complete and when the remaining logs is less then
the original logs.
</summary>
</histogram>
<histogram name="StructuredMetrics.LogStore.DroppedSize" units="KB"
expires_after="2025-07-14">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The size in KB of logs trimmed by log storage for being too large. Recorded
when trimming the log and the compressed size of a log exceeds the max log
size.
</summary>
</histogram>
<histogram name="StructuredMetrics.OnExternalMetricsCollectedDuration"
units="microseconds" expires_after="2025-03-20">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Messures the duration of
AshStructuredMetricsRecorder::OnExternalMetricsCollected in microseconds.
Measuring to collect information about potential UI jankiness this function
is causing.
</summary>
</histogram>
<histogram name="StructuredMetrics.Reporting.ActualUploadInterval"
units="minutes" expires_after="2025-01-26">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The actual interval between log upload start and previous log upload
finished within the same process. A value of 0 indicates there was no
previous upload.
</summary>
</histogram>
<histogram name="StructuredMetrics.Reporting.HTTPErrorCode"
enum="CombinedHttpResponseAndNetErrorCode" expires_after="2025-01-12">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
HTTP and network errors encountered by Structured Metrics when attempting to
upload logs to the server through an HTTPS connection.
</summary>
</histogram>
<histogram name="StructuredMetrics.Reporting.HTTPResponseCode"
enum="CombinedHttpResponseAndNetErrorCode" expires_after="2025-01-12">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
HTTP response codes encountered by Structured Metrics when attempting to
upload logs to the server through an HTTPS connection.
</summary>
</histogram>
<histogram name="StructuredMetrics.Reporting.LogSize.OnSuccess" units="KB"
expires_after="2025-01-26">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Size in kilobytes (after compression) of an uploaded Structured Metrics log.
Recorded after a successful Structured Metrics upload.
</summary>
</histogram>
<histogram name="StructuredMetrics.Reporting.LogSize.RejectedSize" units="KB"
expires_after="2025-07-14">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Size in kilobytes (after compression) of a log rejected for being to large.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.DeletedBufferWhenOverQuota"
units="buffers" expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of flushed event buffers that were deleted when our disk quota
was exceeded. Recorded when flushed event buffers are deleted.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.DiskQuotaExceededDelta"
units="KB" expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of Kibibytes the disk quota was exceeded by when buffers were
deleted. This should be proportional to the number of event buffers deleted.
This metric is recorded when Structured Metrics exceeds its disk space quota
and must delete events.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.Flush"
units="StorageManagerFlushStatus" expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The result of flushing an in-memory event buffer to disk. Captures success
and errors when an event buffer is flushed.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.FlushedBuffersAtUpload"
units="buffers" expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of flushed buffers when an upload occurs. Currently, all flushed
events are read at upload so this correlates to how many buffers were
flushed since the last upload. If that behaivor changes then a new histogram
needs to be created for the number of read buffers. This is recorded when
events are uploaded.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.InMemoryEventsAtUpload"
units="events" expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The number of in-memory events read when an upload occurs. This is recorded
when events are uploaded.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.MaxDiskDizeKB" units="KB"
expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The max amount of disk space flushed events can consume. This is recorded
when the Storage Manager is created.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.MaxMemorySizeKB" units="KB"
expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The max amount of memory in-memory events can consume. This is recorded when
the Storage Manager is created.
</summary>
</histogram>
<histogram name="StructuredMetrics.StorageManager.RecordStatus"
enum="RecordStatus" expires_after="2025-05-21">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
Records the status of an event recording. This is recorded when an event is
added to the StorageManager.
</summary>
</histogram>
<histogram name="StructuredMetrics.UploadSize" units="bytes"
expires_after="2025-01-19">
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<owner>[email protected]</owner>
<summary>
The serialized size in bytes of the Structured Metrics payload attached to
UMA. This correlates to the amount of memory Structured Metrics uses during
an upload by UMA.
</summary>
</histogram>
</histograms>
</histogram-configuration>