blob: fc06267d56161ba6597fff94f44d1b8a7f6085bd [file] [log] [blame]
# Copyright 2019 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
################################################################################
# Cobalt Project: media
################################################################################
metric_definitions:
#####################################################################
# Next Metric ID: 13
#
# Reserved: Metric ID 2 (deleted in fxrev.dev/437254)
#####################################################################
################################################################################
# audio_session_duration
#
# Total amount of time (ns) in which audio input or output was being processed.
# Typically this is the time between Play/Pause or Record/Stop, or for components
# behind a mixer, it's the time between the first Play of any input being mixed
# until all inputs have been Stopped.
################################################################################
- id: 3
replacement_metric_id: 103
metric_name: audio_session_duration
metric_type: ELAPSED_TIME
metric_dimensions: &asd_dimensions
- dimension: component
event_codes: &component_event_codes
0: OutputDevice
1: OutputPipeline
2: Renderer
3: Capturer
reports:
- report_name: audio_session_duration_stats
id: 1
report_type: NUMERIC_AGGREGATION
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: audio_session_duration_histograms
id: 2
report_type: INT_RANGE_HISTOGRAM
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: &nanosecond_duration_buckets_one_day
exponential:
# The effective range is 1ms to 18hr, which allows us to represent sessions
# up to about 1 day long. The floor of the largest bucket is 1ms*2^26, or
# 67108s, or about 18h.
floor: 0
num_buckets: 27
initial_step: 1000000
step_multiplier: 2
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
- id: 103
metric_name: audio_session_duration_migrated
metric_type: INTEGER
metric_semantics: [LATENCY]
metric_units_other: "nanoseconds"
metric_dimensions: *asd_dimensions
reports:
- report_name: audio_session_duration_stats
id: 1
report_type: FLEETWIDE_MEANS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: audio_session_duration_histograms
id: 2
report_type: FLEETWIDE_HISTOGRAMS
int_buckets: *nanosecond_duration_buckets_one_day
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
################################################################################
# audio_overflow_duration
#
# Total amount of time (ns) in which the system was stalled by an overflow.
################################################################################
- id: 4
replacement_metric_id: 104
metric_name: audio_overflow_duration
metric_type: ELAPSED_TIME
metric_dimensions: &aod_dimensions
- dimension: component
event_codes: *component_event_codes
reports:
- report_name: audio_overflow_duration_stats
id: 1
report_type: NUMERIC_AGGREGATION
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: audio_overflow_duration_histograms
id: 2
report_type: INT_RANGE_HISTOGRAM
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: &nanosecond_duration_buckets_ten_minutes
exponential:
# The effective range is 1ms to 10min. We expect that overflows and underflows
# are typically at most a few seconds long, so this is plenty of precision.
# The floor of the largest bucket is 1ms*2^19, or 524s, or about 8min.
floor: 0
num_buckets: 20
initial_step: 1000000
step_multiplier: 2
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
- id: 104
metric_name: audio_overflow_duration_migrated
metric_type: INTEGER
metric_semantics: [LATENCY]
metric_units_other: "nanoseconds"
metric_dimensions: *aod_dimensions
reports:
- report_name: audio_overflow_duration_stats
id: 1
report_type: FLEETWIDE_MEANS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: audio_overflow_duration_histograms
id: 2
report_type: FLEETWIDE_HISTOGRAMS
int_buckets: *nanosecond_duration_buckets_ten_minutes
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
################################################################################
# audio_underflow_duration
#
# Total amount of time (ns) in which the system was stalled by an underflow.
################################################################################
- id: 5
replacement_metric_id: 105
metric_name: audio_underflow_duration
metric_type: ELAPSED_TIME
metric_dimensions: &aud_dimensions
- dimension: component
event_codes: *component_event_codes
reports:
- report_name: audio_underflow_duration_stats
id: 1
report_type: NUMERIC_AGGREGATION
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: audio_underflow_duration_histograms
id: 2
report_type: INT_RANGE_HISTOGRAM
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: *nanosecond_duration_buckets_ten_minutes
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
- id: 105
metric_name: audio_underflow_duration_migrated
metric_type: INTEGER
metric_semantics: [LATENCY]
metric_units_other: "nanoseconds"
metric_dimensions: *aud_dimensions
reports:
- report_name: audio_underflow_duration_stats
id: 1
report_type: FLEETWIDE_MEANS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: audio_underflow_duration_histograms
id: 2
report_type: FLEETWIDE_HISTOGRAMS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: *nanosecond_duration_buckets_ten_minutes
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
################################################################################
# audio_time_since_last_overflow_or_session_start
#
# Total amount of time (ns) since the last overflow event, or since the session
# started, whichever happened most recently. This is recorded at every overflow
# event and when the session ends.
################################################################################
- id: 6
replacement_metric_id: 106
metric_name: audio_time_since_last_overflow_or_session_start
metric_type: ELAPSED_TIME
metric_dimensions: &atslorss_dimensions
- dimension: component
event_codes: *component_event_codes
- dimension: last_event
event_codes:
0: SessionStart
1: Overflow
reports:
# Reserved: id 1 (deleted in fxrev.dev/437254)
- report_name: audio_time_since_last_overflow_or_session_start_histograms
id: 2
report_type: INT_RANGE_HISTOGRAM
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: *nanosecond_duration_buckets_one_day
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
- id: 106
metric_name: audio_time_since_last_overflow_or_session_start_migrated
metric_type: INTEGER
metric_semantics: [LATENCY]
metric_units_other: "nanoseconds"
metric_dimensions: *atslorss_dimensions
reports:
# Reserved: id 1 (deleted in fxrev.dev/437254)
- report_name: audio_time_since_last_overflow_or_session_start_histograms
id: 2
report_type: FLEETWIDE_HISTOGRAMS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: *nanosecond_duration_buckets_one_day
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
################################################################################
# audio_time_since_last_underflow_or_session_start
#
# Total amount of time (ns) since the last underflow event, or since the session
# started, whichever happened most recently. This is recorded at every underflow
# event and when the session ends.
################################################################################
- id: 7
replacement_metric_id: 107
metric_name: audio_time_since_last_underflow_or_session_start
metric_type: ELAPSED_TIME
metric_dimensions: &atsluoss_dimensions
- dimension: component
event_codes: *component_event_codes
- dimension: last_event
event_codes:
0: SessionStart
1: Underflow
reports:
# Reserved: id 1 (deleted in fxrev.dev/437254)
- report_name: audio_time_since_last_overflow_or_session_start_histograms
id: 2
report_type: INT_RANGE_HISTOGRAM
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: *nanosecond_duration_buckets_one_day
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
- id: 107
metric_name: audio_time_since_last_underflow_or_session_start_migrated
metric_type: INTEGER
metric_semantics: [LATENCY]
metric_units_other: "nanoseconds"
metric_dimensions: *atsluoss_dimensions
reports:
# Reserved: id 1 (deleted in fxrev.dev/437254)
- report_name: audio_time_since_last_overflow_or_session_start_histograms
id: 2
report_type: FLEETWIDE_HISTOGRAMS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
int_buckets: *nanosecond_duration_buckets_one_day
meta_data:
max_release_stage: GA
expiration_date: "2021/08/11"
################################################################################
# stream_processor_events (deprecated)
#
# We log counts of various stream processor events. We use an EVENT_COUNT to
# allow accumulating event counts in-process before sending the count to cobalt.
#
# Expected frequency: Batch logging frequency capped at no more than once every
# 5 seconds. The max batch size of 64 will essentially always be large enough
# to avoid spilling into an additional batch. Batch sizes larger than 12 are
# expected to be rare, as 12 is the number of different events we'd expect to
# see if streams are being created and destroyed successfully, plus one type of
# generic error and one more specific error. It's rare that we'd see a storm of
# different error codes within 5 seconds.
################################################################################
- id: 8
no_replacement_metric: Not migrating because metric is deprecated
metric_name: stream_processor_events # deprecated
metric_type: EVENT_COUNT
metric_dimensions:
- dimension: implementation
event_codes:
0: AmlogicDecoderShared
1: AmlogicDecoderH264Multi
2: AmlogicDecoderH264Single
3: AmlogicDecoderVp9
4: AmlogicMpeg12
5: FfmpegDecoderH264
- dimension: event
event_codes:
# Often under a "shared" component since sometimes the hosting process
# will start before we know which specific stream processor.
0: HostProcessStart
1: StreamCreated
2: StreamDeleted
3: StreamFlushed
4: StreamEndOfStreamInput
5: StreamEndOfStreamOutput
# In addition to separate reasons listed below.
6: StreamFailureAnyReason
7: CoreCreated
8: CoreDeleted
9: CoreFlushed
10: CoreEndOfStreamInput
11: CoreEndOfStreamOuput
# In addition to separate reasons listed below.
12: CoreFailureAnyReason
13: InputBufferAllocationStarted
14: InputBufferAllocationSuccess
15: InputBufferAllocationFailure
16: OutputBufferAllocationStarted
17: OutputBufferAllocationSuccess
18: OutputBufferAllocationFailure
reports:
- report_name: stream_processor_events_device_histogram
id: 1
report_type: PER_DEVICE_HISTOGRAM
int_buckets:
exponential:
floor: 0
num_buckets: 24
initial_step: 1
step_multiplier: 2
window_size: [1]
aggregation_type: SUM
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_device_stats
id: 2
report_type: PER_DEVICE_NUMERIC_STATS
window_size: [1]
aggregation_type: SUM
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_fleet_histogram
id: 3
report_type: INT_RANGE_HISTOGRAM
int_buckets:
exponential:
floor: 0
num_buckets: 48
initial_step: 1
step_multiplier: 2
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_fleet_stats
id: 4
report_type: NUMERIC_AGGREGATION
percentiles: [0, 1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 96, 97, 98, 99, 100]
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_component_occurrence_count
id: 5
report_type: EVENT_COMPONENT_OCCURRENCE_COUNT
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/08/18"
################################################################################
# audio_objects_created
#
# Count of audio renderers created, broken down by type and format.
################################################################################
- id: 10
replacement_metric_id: 110
metric_name: audio_objects_created
metric_type: EVENT_COUNT
metric_dimensions: &aoc_dimensions
- dimension: object_type
event_codes:
0: OutputDevice
1: InputDevice
2: Renderer
3: Capturer
- dimension: sample_format
event_codes:
0: Other
1: Uint8
2: Int16
3: Int24
4: Float32
- dimension: channels
event_codes:
0: Other
1: Chan1
2: Chan2
3: Chan4
- dimension: frame_rate
event_codes:
0: Other
1: Rate16000
2: Rate44100
3: Rate48000
4: Rate96000
reports:
- report_name: audio_objects_created_stats
id: 1
report_type: NUMERIC_AGGREGATION
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/10/11"
- id: 110
metric_name: audio_objects_created_migrated
metric_type: OCCURRENCE
metric_semantics: [USAGE_COUNTING]
metric_dimensions: *aoc_dimensions
reports:
- report_name: audio_objects_created_stats
id: 1
report_type: HOURLY_VALUE_NUMERIC_STATS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/10/11"
################################################################################
# stream_processor_events_2
#
# We log counts of various stream processor events. We use an EVENT_COUNT to
# allow accumulating event counts in-process before sending the count to cobalt.
#
# Expected frequency: Batch logging frequency capped at no more than once every
# 5 seconds. The max batch size of 64 will essentially always be large enough
# to avoid spilling into an additional batch. Batch sizes larger than 12 are
# expected to be rare, as 12 is the number of different events we'd expect to
# see if streams are being created and destroyed successfully, plus one type of
# generic error and one more specific error. It's rare that we'd see a storm of
# different error codes within 5 seconds.
################################################################################
- id: 9
replacement_metric_id: 109
metric_name: stream_processor_events_2
metric_type: EVENT_COUNT
metric_dimensions: &spe_dimensions
- dimension: implementation
event_codes:
# Unspecified is used in a few places where we don't actually need
# metrics, to avoid going over 1023 potential combinations in Cobalt v1.
#
# In Cobalt v2, the need for this usage of Unspecified will go away
# becuase only combinations which actually occur on a given device in
# 24h will count toward the limit.
0: Unspecified
1: AmlogicDecoderShared
2: AmlogicDecoderH264
3: AmlogicDecoderVp9
- dimension: event
event_codes:
# Often under a "shared" component since sometimes the hosting process
# will start before we know which specific stream processor.
0: HostProcessStart
# In addition to separate reasons listed below.
1: StreamProcessorFailureAnyReason
# In addition to separate reasons listed below.
2: StreamFailureAnyReason
3: StreamCreated
4: StreamDeleted
5: StreamFlushed
6: StreamEndOfStreamInput
7: StreamEndOfStreamOutput
# In addition to separate reasons listed below.
8: CoreFailureAnyReason
9: CoreCreated
10: CoreDeleted
11: CoreFlushed
12: CoreEndOfStreamInput
13: CoreEndOfStreamOuput
14: InputBufferAllocationStarted
# WaitForBuffersAllocated() done (with success or failure)
15: InputBufferAllocationCompleted
# WaitForBuffersAllocated() succeeded and codec_impl config succeeded.
16: InputBufferAllocationSuccess
# WaitForBuffersAllocated() allocation_status is not ZX_OK.
17: InputBufferAllocationFailure
18: OutputBufferAllocationStarted
# WaitForBuffersAllocated() done (with success or failure)
19: OutputBufferAllocationCompleted
# WaitForBuffersAllocated() succeeded and codec_impl config succeeded.
20: OutputBufferAllocationSuccess
# WaitForBuffersAllocated() allocation_status is not ZX_OK.
21: OutputBufferAllocationFailure
22: InitializationError
23: AllocationError
24: FirmwareSizeError
25: StuckError
26: FlushError
27: InterlacedUnsupportedError
28: ChromaFormatUnsupportedError
29: MissingPictureError
30: ZeroMbWidthError
31: DimensionTooLargeError
32: CropInfoError
33: LevelZeroError
34: LevelTooLargeError
35: MaxDpbMbsError
36: RedundantPicCntUnsupportedError
37: SliceExtensionUnsupportedError
38: MmcoSrcCmdCountUnsupportedError
39: MmcoCommandError
40: ReorderCommandError
41: MmcoDstCmdCountUnsupportedError
42: FirstMbInSliceError
43: BrokenPictureBodyError
44: GenericDecodeError
45: MissingOutputSurfaceError
46: UnreachableError
47: DecodeResultInvalidError
48: SwHwSyncError
49: AspectRatioIdcTooLargeError
50: NumSliceGroupsUnsupportedError
51: NumRefIdxDefaultActiveError
52: PicInitQpRangeError
53: ReorderListTooLargeError
54: FrameNumError
55: PicOrderCntError
56: TimeoutWaitingForHwError
57: MotionVectorContextError
58: HwTimeoutError
59: StaleInterruptSeen
60: DrmConfigError
61: NumRefFramesInPocCycleError
62: SeqParameterSetIdTooLargeError
63: InputBufferFullError
64: InputHwTimeout
65: StreamReset
66: MaxFrameNumTooLargeError
67: InputHwError
68: InputProcessingError
69: WatchdogFired
70: FirmwareLoadError
71: SlowFrameSkip
72: DimensionsInvalidError
73: DimensionsUnsupportedError
74: EndOfStreamTimeoutError
75: ClientProtocolError
76: FidlError
77: SysmemChannelClosed
78: ClientConstraintsFailure
79: MaxInFlightStreamsExceededError
80: ClientProtocolFailure
reports:
- report_name: stream_processor_events_device_histogram
id: 1
report_type: PER_DEVICE_HISTOGRAM
int_buckets: &spedh_buckets
exponential:
floor: 0
num_buckets: 24
initial_step: 1
step_multiplier: 2
window_size: [1]
aggregation_type: SUM
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_device_stats
id: 2
report_type: PER_DEVICE_NUMERIC_STATS
window_size: [1]
aggregation_type: SUM
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_fleet_histogram
id: 3
report_type: INT_RANGE_HISTOGRAM
int_buckets: &spefh_buckets
exponential:
floor: 0
num_buckets: 48
initial_step: 1
step_multiplier: 2
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_fleet_stats
id: 4
report_type: NUMERIC_AGGREGATION
percentiles: [0, 1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 96, 97, 98, 99, 100]
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_component_occurrence_count
id: 5
report_type: EVENT_COMPONENT_OCCURRENCE_COUNT
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/08/18"
- id: 109
metric_name: stream_processor_events_2_migrated
metric_type: OCCURRENCE
metric_semantics: [USAGE_COUNTING]
metric_dimensions: *spe_dimensions
reports:
- report_name: stream_processor_events_device_histogram
id: 1
report_type: UNIQUE_DEVICE_HISTOGRAMS
int_buckets: *spedh_buckets
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_device_stats
id: 2
report_type: UNIQUE_DEVICE_NUMERIC_STATS
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_fleet_histogram
id: 3
report_type: HOURLY_VALUE_HISTOGRAMS
int_buckets: *spefh_buckets
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
- report_name: stream_processor_events_fleet_stats
id: 4
report_type: HOURLY_VALUE_NUMERIC_STATS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
# This report is not supported in Cobalt 1.1, as it uses component strings
# - report_name: stream_processor_events_component_occurrence_count
# id: 5
# report_type: EVENT_COMPONENT_OCCURRENCE_COUNT
# privacy_level: NO_ADDED_PRIVACY
# system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/08/18"
################################################################################
# audio_thermal_state_duration
#
# Total amount of time (ns) spent in each 'thermal_state' since boot. The
# 'thermal_state' dimension is used to select and identify which state the
# device is in, with "normal" representing the baseline state, and consecutive
# states representing the various thermal configuration states available.
################################################################################
- id: 11
replacement_metric_id: 111
metric_name: audio_thermal_state_duration
metric_type: ELAPSED_TIME
metric_dimensions: &atsd_dimensions
- dimension: thermal_state
event_codes: &thermal_state_event_codes
0: normal
1: state_1
2: state_2
reports:
- report_name: audio_thermal_state_duration_stats
id: 1
report_type: NUMERIC_AGGREGATION
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/12/08"
- id: 111
metric_name: audio_thermal_state_duration_migrated
metric_type: INTEGER
metric_semantics: [LATENCY]
metric_units_other: "nanoseconds"
metric_dimensions: *atsd_dimensions
reports:
- report_name: audio_thermal_state_duration_stats
id: 1
report_type: FLEETWIDE_MEANS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/12/08"
################################################################################
# audio_thermal_state_transitions
#
# We log the number of thermal state transitions per device. The histogram
# groups devices into buckets, with each bucket corresponding to the count of
# 'state_transitions' to a 'thermal_state'.
################################################################################
- id: 12
replacement_metric_id: 112
metric_name: audio_thermal_state_transitions
metric_type: INT_HISTOGRAM
metric_dimensions: &atst_dimensions
- dimension: state_transition
event_codes: *thermal_state_event_codes
int_buckets: &atst_buckets
linear:
floor: 0
num_buckets: 50
step_size: 1
reports:
- report_name: audio_thermal_state_transitions_histograms
id: 1
report_type: INT_RANGE_HISTOGRAM
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/12/08"
- id: 112
metric_name: audio_thermal_state_transitions_migrated
metric_type: INTEGER_HISTOGRAM
metric_semantics: [USAGE_COUNTING]
metric_units_other: "state transitions"
metric_dimensions: *atst_dimensions
int_buckets: *atst_buckets
reports:
- report_name: audio_thermal_state_transitions_histograms
id: 1
report_type: FLEETWIDE_HISTOGRAMS
privacy_level: NO_ADDED_PRIVACY
system_profile_field: [ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
meta_data:
max_release_stage: GA
expiration_date: "2021/12/08"