blob: 77dd36b92c3610aa6fd0befbe4b9439015ea138f [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: connectivity_wlan
################################################################################
metric_definitions:
- id: 321
metric_name: scan_results_received_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: saved_networks_count
event_codes:
0: Zero
1: One
2: TwoToFour
3: FiveToTwenty
4: TwentyOneToForty
5: FortyOneOrMore
max_event_code: 5
reports:
############################################################################
# We report the number of unique devices on which each "count of saved
# network in scan results" was observed during rolling windows of 1 and 7
# days.
############################################################################
- report_name: saved_networks_in_scan_results_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: &default_system_profile_field [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
- report_name: saved_networks_in_scan_results_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 322
metric_name: saved_network_in_scan_result_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: bss_count
event_codes:
0: Zero
1: One
2: TwoToFour
3: FiveToTen
4: ElevenToTwenty
5: TwentyOneOrMore
max_event_code: 5
reports:
############################################################################
# We report the number of unique devices on which each "count of bss per
# saved network in scan results" was observed during rolling windows of 1 and
# 7 days.
############################################################################
- report_name: bss_per_saved_network_in_scan_result_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: bss_per_saved_network_in_scan_result_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 323
metric_name: saved_networks_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: saved_networks
event_codes:
0: Zero
1: One
2: TwoToFour
3: FiveToForty
4: FortyToFiveHundred
5: FiveHundredAndOneOrMore
max_event_code: 5
reports:
############################################################################
# We report the number of unique devices on which each "count of saved
# networks" was observed during rolling windows of 1 and 7 days.
############################################################################
- report_name: saved_networks_on_device_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: saved_networks_on_device_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 324
metric_name: saved_configurations_for_saved_network_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: saved_configurations
event_codes:
0: Zero
1: One
2: TwoToFour
3: FiveToForty
4: FortyToFiveHundred
5: FiveHundredAndOneOrMore
max_event_code: 5
reports:
############################################################################
# We report the number of unique devices on which each "count of
# configurations per saved network" was observed during rolling windows of
# 1 and 7 days.
############################################################################
- report_name: saved_configurations_per_saved_network_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: saved_configurations_per_saved_network_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 325
metric_name: last_scan_age_when_scan_requested_migrated
metric_type: INTEGER
metric_units: MICROSECONDS
metric_semantics: [NETWORK_COMMUNICATION, LATENCY]
reports:
- report_name: last_scan_age_when_scan_requested_histogram
id: 1
report_type: FLEETWIDE_HISTOGRAMS
int_buckets:
linear:
floor: 0
num_buckets: 60 # combined with the step size, 5 minutes of buckets
step_size: 5000000 # 5 seconds in microsends
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 326
metric_name: active_scan_requested_for_network_selection_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: active_scan_ssids_requested
event_codes:
0: Zero
1: One
2: TwoToFour
3: FiveToTen
4: ElevenToTwenty
5: TwentyOneToFifty
6: FiftyOneToOneHundred
7: OneHundredAndOneOrMore
max_event_code: 7
reports:
############################################################################
# We report the number of unique devices on which attempted an active scan
# to find a saved network during rolling windows of 1 and 7 days.
############################################################################
- report_name: bss_per_saved_network_in_active_scan_result_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: bss_per_saved_network_in_active_scan_result_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
############################################################################
# We report the total number of active scan attempts to find a saved network.
############################################################################
- report_name: active_scan_requested_for_network_selection_ssid_count
id: 3
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 327
metric_name: saved_network_in_scan_result_with_active_scan_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: active_scan_ssids_observed
event_codes:
0: Zero
1: One
2: TwoToFour
3: FiveToTen
4: ElevenToTwenty
5: TwentyOneToFifty
6: FiftyOneToOneHundred
7: OneHundredAndOneOrMore
max_event_code: 7
reports:
############################################################################
# We report the number of unique devices on which used an active scan to
# find a saved network during rolling windows of 1 and 7 days.
############################################################################
- report_name: bss_per_saved_network_in_active_scan_result_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: bss_per_saved_network_in_active_scan_result_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
############################################################################
# We report the total number of active scan successes in finding a saved
# network.
############################################################################
- report_name: active_scan_results_for_network_selection_ssid_count
id: 3
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 329
metric_name: policy_connection_attempt_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: reason
event_codes:
0: RetryAfterDisconnectDetected
1: RetryAfterFailedConnectAttempt
2: FidlConnectRequest
3: ProactiveNetworkSwitch
4: RegulatoryChangeReconnect
5: IdleInterfaceAutoconnect
6: NewSavedNetworkAutoconnect
max_event_code: 6
reports:
############################################################################
# We report the number of unique devices which had each connection reason
############################################################################
- report_name: policy_connection_reasons_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: policy_connection_reasons_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
############################################################################
# We report the total number of connection reasons
############################################################################
- report_name: policy_connection_reasons_count
id: 3
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
############################################################################
# Unique device histogram of connect reasons per day
############################################################################
- report_name: device_daily_occurrence_histogram
id: 4
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
int_buckets:
exponential:
floor: 0
initial_step: 1
step_multiplier: 2
num_buckets: 10
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 330
metric_name: policy_disconnection_migrated
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: reason
event_codes:
0: Unknown
1: FailedToConnect
2: FidlConnectRequest
3: FidlStopClientConnectionsRequest
4: ProactiveNetworkSwitch
5: DisconnectDetectedFromSme
6: RegulatoryRegionChange
7: Startup
8: NetworkUnsaved
9: NetworkConfigUpdated
max_event_code: 9
reports:
############################################################################
# We report the number of unique devices which had each disconnection reason
############################################################################
- report_name: policy_disconnection_reasons_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: policy_disconnection_reasons_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
############################################################################
# We report the total number of disconnection reasons
############################################################################
- report_name: policy_disconnection_reasons_count
id: 3
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 331
metric_name: client_connections_enabled_duration_migrated
metric_type: INTEGER
metric_units: MICROSECONDS
metric_semantics: [NETWORK_COMMUNICATION, LATENCY]
reports:
- report_name: client_connections_enabled_duration_1_day
id: 1
report_type: UNIQUE_DEVICE_NUMERIC_STATS
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: MEAN
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: client_connections_enabled_duration_7_days
id: 2
report_type: UNIQUE_DEVICE_NUMERIC_STATS
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: MEAN
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 332
metric_name: access_point_enabled_duration_migrated
metric_type: INTEGER
metric_units: MICROSECONDS
metric_semantics: [NETWORK_COMMUNICATION, LATENCY]
reports:
- report_name: access_point_enabled_duration_1_day
id: 1
report_type: UNIQUE_DEVICE_NUMERIC_STATS
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: MEAN
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: access_point_enabled_duration_7_days
id: 2
report_type: UNIQUE_DEVICE_NUMERIC_STATS
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: MEAN
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
################################################################################
# Firmware recovery occurrence in brcmfmac driver..
#
# When an instance of brcmfmac firmware recovery happened in any device,
# increase the counter by 1.
################################################################################
- id: 340
metric_name: brcmfmac_firmware_recovery_occurrence
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION]
reports:
- report_name: brcmfmac_firmware_recovery_total_count
id: 1
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
# Use a single anchor so every metric shares the same expiration date
# When updating the expiration date, perform a review of all the metrics (formal
# or informal). Consult go/tq-wlan-metrics-maintenance for a list of all the
# metric categories to faciliate this review.
<<: &ga_release_metadata
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
- id: 341
metric_name: active_scan_requested_for_policy_api
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
metric_dimensions:
- dimension: active_scan_ssids_requested
event_codes:
0: Zero
1: One
2: TwoToFour
3: FiveToTen
4: ElevenToTwenty
5: TwentyOneToFifty
6: FiftyOneToOneHundred
7: OneHundredAndOneOrMore
max_event_code: 7
reports:
############################################################################
# We report the number of unique devices which attempted an active scan
# to find a saved network during rolling windows of 1 and 7 days.
############################################################################
- report_name: active_scan_ssids_requested_for_policy_api_unique_devices_1_day
id: 1
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: active_scan_ssids_requested_for_policy_api_unique_devices_7_days
id: 2
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
############################################################################
# We report the total number of active scan attempts to find a saved network.
############################################################################
- report_name: active_scan_ssids_requested_for_policy_api_counts
id: 3
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
meta_data:
max_release_stage: GA
expiration_date: "2024/08/04"
##############################
### 9XX - Template definitions
##############################
# Setup for metrics that simply sum up the duration of all sessions, such as
# total device uptime or total WLAN-connected time. We mainly use this metric
# for the sum and count columns (to compute avg), which are highly aggregatable,
# hence we only generated one default report that has all the system profiles
# we need.
- id: 900
metric_name: fleetwide_total_time_quality_metric_template
<<: &fleetwide_total_time_quality_metric_template
<<: &fleetwide_total_time_quality_metric_template__metric_portion
metric_type: INTEGER
metric_units: MICROSECONDS
metric_semantics: [NETWORK_COMMUNICATION]
<<: *ga_release_metadata
reports:
- &fleetwide_total_time_quality_metric_template__default_report_1
report_name: fleetwide_hourly_local_sum
id: 1
report_type: HOURLY_VALUE_NUMERIC_STATS
local_aggregation_procedure: SUM_PROCEDURE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
# Example of how to use above metric's smaller anchors together.
# This is also a placeholder where additional compatible reports can be defined
# and reused.
- id: 901
metric_name: fleetwide_total_time_quality_metric_template__custom
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- id: 101
report_name: fleetwide_hourly_local_sum__exp
experiment_id: [12345678, 87654321]
<<: &fleetwide_total_time_quality_metric_template__report_1_with_exp
report_type: HOURLY_VALUE_NUMERIC_STATS
local_aggregation_procedure: SUM_PROCEDURE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: &default_system_profile_field_with_exp [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION, EXPERIMENT_IDS]
- id: 102
report_name: device_daily_total_histogram
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1_000_000
<<: &fleetwide_total_time_quality_metric_template__report_device_daily_total_histogram
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: SUM_PROCEDURE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
# Setup for metrics where a device computes a ratio per day and log that
# ratio before the end of the day. Only daily reports can be generated
# (no weekly or monthly reports) because those ratios are only computed
# for the days.
- id: 904
metric_name: device_local_ratio_monitoring_metric_template
<<: &device_log_local_ratio_once_daily_monitoring_metric_template
<<: &device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
metric_type: INTEGER
metric_units_other: "TenThousandth"
metric_semantics: [NETWORK_COMMUNICATION]
<<: *ga_release_metadata
deleted_report_ids: [1]
reports:
- &device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
report_name: device_daily_local_avg_stats_system_ver
id: 2
report_type: UNIQUE_DEVICE_NUMERIC_STATS
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: MEAN
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
# Example of how to use above metric's smaller anchors together.
# This is also a placeholder where additional compatible reports can be defined
# and reused.
- id: 905
metric_name: device_local_ratio_monitoring_metric_template__custom
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- id: 100
report_name: device_daily_max_histograms
int_buckets:
linear:
floor: 0
num_buckets: 150
step_size: 1000
<<: &device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: MAX_PROCEDURE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- id: 102
report_name: device_daily_local_avg_stats_system_ver__exp
experiment_id: [12345678, 87654321]
<<: &device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
report_type: UNIQUE_DEVICE_NUMERIC_STATS
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: MEAN
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field_with_exp
# Setup for metrics that count the number of devices where an event has
# occurred or a feature has been used at least once, or the device itself
# belongs to some category.
#
# Daily and weekly reports are generated.
- id: 906
metric_name: device_counts_metric_template
<<: &device_counts_metric_template
<<: &device_counts_metric_template__metric_portion
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
<<: *ga_release_metadata
deleted_report_ids: [1, 3]
reports:
- &device_counts_metric_template__default_report_2
id: 2
report_name: device_daily_counts_at_least_once_system_ver
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- &device_counts_metric_template__default_report_4
id: 4
report_name: device_weekly_counts_at_least_once_system_ver
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
# Example of how to use above metric's smaller anchors together.
# This is also a placeholder where additional compatible reports can be defined
# and reused.
- id: 907
metric_name: device_counts_metric_template__custom
<<: *device_counts_metric_template__metric_portion
deleted_report_ids: [1]
reports:
- id: 102
report_name: device_daily_counts_at_least_once_system_ver__exp
experiment_id: [12345678, 87654321]
<<: &device_counts_metric_template__report_2_with_exp
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field_with_exp
- id: 104
report_name: device_weekly_counts_at_least_once_system_ver__exp
experiment_id: [12345678, 87654321]
<<: &device_counts_metric_template__report_4_with_exp
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field_with_exp
# Setup for metrics where a device computes a ratio per day and log an
# occurrence with that ratio as the dimension. Only daily reports can
# be generated (no weekly or monthly reports) because those ratios are
# only computed for the day.
#
# This template may be used with metric dimensions.
- id: 908
metric_name: device_one_daily_occurrence_metric_template
<<: &device_one_daily_occurrence_metric_template
<<: &device_one_daily_occurrence_metric_template__metric_portion
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION]
<<: *ga_release_metadata
deleted_report_ids: [1]
reports:
- &device_one_daily_occurrence_metric_template__default_report_2
report_name: device_daily_occurrence_system_ver
id: 2
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
# Example of how to use above metric's smaller anchors together.
# This is also a placeholder where additional compatible reports can be defined
# and reused.
- id: 909
metric_name: device_one_daily_occurrence_metric_template__custom
<<: *device_one_daily_occurrence_metric_template__metric_portion
deleted_report_ids: [1]
reports:
- *device_one_daily_occurrence_metric_template__default_report_2
# Setup for occurrence metrics with one or more dimensions, that produce not
# just FLEETWISE_OCCURRENCE_COUNTS report but also various device counts
# reports. Device counts reports are generated with the permutation of:
# - aggregration period: daily and weekly
# - local aggregration procedure: AT_LEAST_ONCE and SELECT_MOST_COMMON
#
# This template may be used with metric dimensions.
- id: 910
metric_name: detailed_occurrence_metric_template
<<: &detailed_occurrence_metric_template
<<: &detailed_occurrence_metric_template__metric_portion
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
<<: *ga_release_metadata
deleted_report_ids: [10, 12, 20, 22]
reports:
- &detailed_occurrence_metric_template__default_report_1
id: 1
report_name: fleetwide_occurrence_counts
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- &detailed_occurrence_metric_template__default_report_11
id: 11
report_name: device_daily_counts_at_least_once_system_ver
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- &detailed_occurrence_metric_template__default_report_13
id: 13
report_name: device_daily_counts_most_common_system_ver
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: SELECT_MOST_COMMON
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- &detailed_occurrence_metric_template__default_report_21
id: 21
report_name: device_weekly_counts_at_least_once_system_ver
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: AT_LEAST_ONCE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- &detailed_occurrence_metric_template__default_report_23
id: 23
report_name: device_weekly_counts_most_common_system_ver
report_type: UNIQUE_DEVICE_COUNTS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
local_aggregation_procedure: SELECT_MOST_COMMON
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
# Example of how to use above metric's smaller anchors together.
# This is also a placeholder where additional compatible reports can be defined
# and reused.
- id: 911
metric_name: detailed_occurrence_metric_template__custom
<<: *detailed_occurrence_metric_template__metric_portion
reports:
- *detailed_occurrence_metric_template__default_report_1
# Setup for string metrics that simply sum up how often each string happens.
# This metric is highly aggregatable, hence only one report that has all
# the system profiles is needed.
- id: 912
metric_name: fleetwide_string_counts_metric_template
string_candidate_file: fuchsia/connectivity_wlan/ouis.txt
<<: &fleetwide_string_counts_metric_template
<<: &fleetwide_string_counts_metric_template__metric_portion
metric_type: STRING
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
<<: *ga_release_metadata
reports:
- &fleetwide_string_counts_metric_template__default_report_1
report_name: string_counts
id: 1
report_type: STRING_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
string_buffer_max: 20
system_profile_field: *default_system_profile_field
# Example of how to use above metric's smaller anchors together.
# This is also a placeholder where additional compatible reports can be defined
# and reused.
- id: 913
metric_name: fleetwide_string_counts_metric_template__custom
string_candidate_file: fuchsia/connectivity_wlan/ouis.txt
<<: *fleetwide_string_counts_metric_template__metric_portion
reports:
- *fleetwide_string_counts_metric_template__default_report_1
# Setup for string metrics that uses UNIQUE_DEVICE_STRING_COUNTS to count
# strings only once per device per day.
- id: 916
metric_name: device_string_counts_metric_template
string_candidate_file: fuchsia/connectivity_wlan/ouis.txt
<<: &device_string_counts_metric_template
<<: &device_string_counts_metric_template__metric_portion
metric_type: STRING
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
<<: *ga_release_metadata
deleted_report_ids: [1]
reports:
- &device_string_counts_metric_template__default_report_2
report_name: device_daily_string_counts_system_ver
id: 2
report_type: UNIQUE_DEVICE_STRING_COUNTS
system_profile_selection: SELECT_LAST
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
string_buffer_max: 20
local_aggregation_period: WINDOW_1_DAY
system_profile_field: *default_system_profile_field
# Example of how to use above metric's smaller anchors together.
# This is also a placeholder where additional compatible reports can be defined
# and reused.
- id: 917
metric_name: device_string_counts_metric_template__custom
string_candidate_file: fuchsia/connectivity_wlan/ouis.txt
<<: *device_string_counts_metric_template__metric_portion
deleted_report_ids: [1]
reports:
- *device_string_counts_metric_template__default_report_2
###############################################################################
# occurrence_metric_template
#
# Setup for metrics that count occurrences, as well as the anchors for
# compatible reports. No default report is included.
###############################################################################
- id: 918
metric_name: occurrence_metric_template
<<: &occurrence_metric_template__metric_portion
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
<<: *ga_release_metadata
reports:
- report_name: fleetwide_occurrence_counts
id: 100
<<: &occurrence_metric_template__report_fleetwide_occurrence_counts
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: device_daily_occurrence_histograms
id: 101
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
<<: &occurrence_metric_template__report_device_daily_occurrence_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: fleetwide_occurrence_counts__ps_exp
id: 102
experiment_id: [12345678, 87654321]
<<: &occurrence_metric_template__report_fleetwide_occurrence_counts_with_exp
report_type: FLEETWIDE_OCCURRENCE_COUNTS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: device_weekly_occurrence_histograms
id: 103
int_buckets:
linear:
floor: 0
num_buckets: 100
step_size: 1
<<: &occurrence_metric_template__report_device_weekly_occurrence_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_7_DAYS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
###############################################################################
# integer_metric_template
#
# Setup for metrics that count occurrences, as well as the anchors for
# compatible reports. No default report is included.
###############################################################################
- id: 919
metric_name: integer_metric_template
metric_units: METRIC_UNITS_OTHER
metric_units_other: "example_units"
<<: &integer_metric_template__metric_portion
metric_type: INTEGER
metric_semantics: [NETWORK_COMMUNICATION]
<<: *ga_release_metadata
reports:
- report_name: fleetwide_histogram
id: 100
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
<<: &integer_metric_template__report_fleetwide_histograms
report_type: FLEETWIDE_HISTOGRAMS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: device_daily_median_histogram
id: 101
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
<<: &integer_metric_template__report_device_daily_median_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_procedure: MEDIAN
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: device_daily_mean_histogram
id: 102
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
<<: &integer_metric_template__report_device_daily_mean_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_procedure: MEAN
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: device_daily_max_histogram
id: 103
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
<<: &integer_metric_template__report_device_daily_max_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_procedure: MAX_PROCEDURE
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
- report_name: device_daily_min_histogram
id: 104
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
<<: &integer_metric_template__report_device_daily_min_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_procedure: MIN_PROCEDURE
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
##########################
### 1XXX - Quality metrics
##########################
################################################################################
# Total WLAN uptime near saved network
#
# Periodically, log the amount of time that WLAN has been connected or is
# attempting to reconnect while a saved network is nearby.
#
# NOTE: This metric is used as the denominator for the percentage of connected
# uptime, so make sure it has the same columns as the connected uptime
# metric.
################################################################################
- id: 1000
metric_name: total_wlan_uptime_near_saved_network
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- <<: *fleetwide_total_time_quality_metric_template__report_1_with_exp
id: 101
report_name: fleetwide_hourly_local_sum__ps_exp
experiment_id: &ps_exp_ids [49331091, 49331092, 49331142, 49331143, 49331144]
################################################################################
# Total amount of time that the client is connected
#
# Periodically, log the amount of time that the client has been connected to
# an AP.
#
# NOTE: This is used as the denominator for many other metrics (for example,
# disconnects per day connected), so make sure it has the same columns
# as the metrics that use this as the denominator.
################################################################################
- id: 1001
metric_name: total_connected_uptime
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- <<: *fleetwide_total_time_quality_metric_template__report_1_with_exp
id: 101
report_name: fleetwide_hourly_local_sum__ps_exp
experiment_id: *ps_exp_ids
- <<: *fleetwide_total_time_quality_metric_template__report_device_daily_total_histogram
id: 102
report_name: device_daily_total_histogram
# The connected uptime reports will be a linear histogram with a step size
# of ten minutes.
int_buckets:
linear:
floor: 0
num_buckets: 144
step_size: 600_000_000
################################################################################
# Total number of disconnects
#
# Whenever a client has disconnected from an AP, log the occurrence.
################################################################################
- id: 1002
metric_name: total_disconnect_count
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: fleetwide_occurrence_counts
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 101
report_name: fleetwide_occurrence_counts__ps_exp
experiment_id: *ps_exp_ids
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts_with_exp
################################################################################
# Time with high RX packet drop
#
# Periodically while a client is connected, log the amount of time when the
# client has had high RX packet drop.
################################################################################
- id: 1003
metric_name: total_time_with_high_rx_packet_drop
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- <<: *fleetwide_total_time_quality_metric_template__report_1_with_exp
id: 101
report_name: fleetwide_hourly_local_sum__ps_exp
experiment_id: *ps_exp_ids
################################################################################
# Time with high TX packet drop
#
# Periodically while a client is connected, log the amount of time when the
# client has had high TX packet drop.
################################################################################
- id: 1004
metric_name: total_time_with_high_tx_packet_drop
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- <<: *fleetwide_total_time_quality_metric_template__report_1_with_exp
id: 101
report_name: fleetwide_hourly_local_sum__ps_exp
experiment_id: *ps_exp_ids
################################################################################
# Time with no RX
#
# Periodically while a client is connected, log the amount of time when the
# client has had no RX.
################################################################################
- id: 1005
metric_name: total_time_with_no_rx
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- <<: *fleetwide_total_time_quality_metric_template__report_1_with_exp
id: 101
report_name: fleetwide_hourly_local_sum__ps_exp
experiment_id: *ps_exp_ids
################################################################################
# Time with very high RX packet drop
#
# Periodically while a client is connected, log the amount of time when the
# client has had very high RX packet drop.
################################################################################
- id: 1006
metric_name: total_time_with_very_high_rx_packet_drop
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- <<: *fleetwide_total_time_quality_metric_template__report_1_with_exp
id: 101
report_name: fleetwide_hourly_local_sum__ps_exp
experiment_id: *ps_exp_ids
################################################################################
# Time with very high TX packet drop
#
# Periodically while a client is connected, log the amount of time when the
# client has had very high TX packet drop.
################################################################################
- id: 1007
metric_name: total_time_with_very_high_tx_packet_drop
<<: *fleetwide_total_time_quality_metric_template__metric_portion
reports:
- *fleetwide_total_time_quality_metric_template__default_report_1
- <<: *fleetwide_total_time_quality_metric_template__report_1_with_exp
id: 101
report_name: fleetwide_hourly_local_sum__ps_exp
experiment_id: *ps_exp_ids
################################################################################
# Total number of roaming disconnects
#
# Whenever a client has disconnected from an AP to roam, log the occurrence.
################################################################################
- id: 1008
metric_name: total_roaming_disconnect_count
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: fleetwide_occurrence_counts
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 101
report_name: fleetwide_occurrence_counts__ps_exp
experiment_id: *ps_exp_ids
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts_with_exp
################################################################################
# Total number of non-roaming disconnects
#
# Whenever a client has disconnected from an AP because of a lost connection,
# log the occurrence. These are the disconnects that don't happen for roaming
# and exclude manual user interactions.
################################################################################
- id: 1009
metric_name: total_non_roaming_disconnect_count
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: fleetwide_occurrence_counts
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 101
report_name: fleetwide_occurrence_counts__ps_exp
experiment_id: *ps_exp_ids
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts_with_exp
#############################
### 2XXX - Monitoring metrics
#############################
################################################################################
# Connected uptime ratio
#
# Every day, before the end of the day UTC time, log the connected uptime ratio
# for that day (time connected / WLAN uptime near saved network).
################################################################################
- id: 2000
metric_name: connected_uptime_ratio
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- id: 103
report_name: device_daily_max_histograms__part_1
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [0%, 80%)
linear:
floor: 0
num_buckets: 4
step_size: 2000 # Each bucket is 20%
- id: 104
report_name: device_daily_max_histograms__part_2
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [80%, 95%)
linear:
floor: 8000
num_buckets: 3
step_size: 500 # Each bucket is 5%
- id: 105
report_name: device_daily_max_histograms__part_3
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [95%, 99%)
linear:
floor: 9500
num_buckets: 4
step_size: 100 # Each bucket is 1%
- id: 106
report_name: device_daily_max_histograms__part_4
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets:
linear: # [99%, 100.2%)
floor: 9900
num_buckets: 6
step_size: 20 # Each bucket is 0.2%
################################################################################
# Disconnect per day connected
#
# Every day, before the end of the day UTC time, log the disconnect per day
# connected ratio for that day (# of disconnects / time connected in day).
################################################################################
- id: 2001
metric_name: disconnect_per_day_connected
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
# TODO(https://fxbug.dev/42078362): Remove this report once replaced by the newer histogram reports
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 100
report_name: device_daily_max_histograms
int_buckets:
linear:
floor: 0
num_buckets: 150
step_size: 1000 # Each bucket is 0.1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 103
report_name: device_daily_max_histograms__part_1
int_buckets: # [0, 10)
linear:
floor: 0
num_buckets: 10
step_size: 10000 # Each bucket is 1:1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 104
report_name: device_daily_max_histograms__part_2
int_buckets: # [10, 30)
linear:
floor: 100000
num_buckets: 4
step_size: 50000 # Each bucket is 5:1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 105
report_name: device_daily_max_histograms__part_3
int_buckets: # [30, 100)
linear:
floor: 300000
num_buckets: 7
step_size: 100000 # Each bucket is 10:1 ratio
################################################################################
# Time ratio with high RX packet drop
#
# Every day, before the end of the day UTC time, log the time ratio with high
# RX packet drop for that day (time with high packet drop / time connected)
################################################################################
- id: 2002
metric_name: time_ratio_with_high_rx_packet_drop
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- id: 103
report_name: device_daily_max_histograms__part_1
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [0%, 10%)
linear:
floor: 0
num_buckets: 10
step_size: 100 # Each bucket is 1%
- id: 104
report_name: device_daily_max_histograms__part_2
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [10%, 20%)
linear:
floor: 1000
num_buckets: 5
step_size: 200 # Each bucket is 2%
- id: 105
report_name: device_daily_max_histograms__part_3
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [20%, 40%)
linear:
floor: 2000
num_buckets: 5
step_size: 400 # Each bucket is 4%
- id: 106
report_name: device_daily_max_histograms__part_4
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [40%, 110%)
linear:
floor: 4000
num_buckets: 7
step_size: 1000 # Each bucket is 10%
################################################################################
# Time ratio with high TX packet drop
#
# Every day, before the end of the day UTC time, log the time ratio with high
# TX packet drop for that day (time with high packet drop / time connected)
################################################################################
- id: 2003
metric_name: time_ratio_with_high_tx_packet_drop
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- id: 103
report_name: device_daily_max_histograms__part_1
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [0%, 10%)
linear:
floor: 0
num_buckets: 10
step_size: 100 # Each bucket is 1%
- id: 104
report_name: device_daily_max_histograms__part_2
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [10%, 20%)
linear:
floor: 1000
num_buckets: 5
step_size: 200 # Each bucket is 2%
- id: 105
report_name: device_daily_max_histograms__part_3
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [20%, 40%)
linear:
floor: 2000
num_buckets: 5
step_size: 400 # Each bucket is 4%
- id: 106
report_name: device_daily_max_histograms__part_4
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [40%, 110%)
linear:
floor: 4000
num_buckets: 7
step_size: 1000 # Each bucket is 10%
################################################################################
# Time ratio with no RX
#
# Every day, before the end of the day UTC time, log the time ratio with no RX
# for that day (time with high packet loss / time connected)
################################################################################
- id: 2004
metric_name: time_ratio_with_no_rx
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- id: 100
report_name: device_daily_max_histograms
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets:
exponential:
floor: 0
initial_step: 1 # 0.01%
step_multiplier: 2
num_buckets: 15 # Last bucket: [2^13*0.01%, 2^14*0.01%) = [81.92%, 163.84%)
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
################################################################################
# Connection success rate
#
# Every day, log connection success rate of the device on that day
################################################################################
- id: 2005
metric_name: connection_success_rate
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 100
report_name: device_daily_max_histograms
int_buckets:
linear:
floor: 0
num_buckets: 101
step_size: 100 # Each bucket is 1%
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
################################################################################
# Time ratio with very high RX packet drop
#
# Every day, before the end of the day UTC time, log the time ratio with very
# high RX packet drop for that day
# (time with very high packet drop / time connected)
################################################################################
- id: 2006
metric_name: time_ratio_with_very_high_rx_packet_drop
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- id: 103
report_name: device_daily_max_histograms__part_1
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [0%, 10%)
linear:
floor: 0
num_buckets: 10
step_size: 100 # Each bucket is 1%
- id: 104
report_name: device_daily_max_histograms__part_2
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [10%, 20%)
linear:
floor: 1000
num_buckets: 5
step_size: 200 # Each bucket is 2%
- id: 105
report_name: device_daily_max_histograms__part_3
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [20%, 40%)
linear:
floor: 2000
num_buckets: 5
step_size: 400 # Each bucket is 4%
- id: 106
report_name: device_daily_max_histograms__part_4
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [40%, 110%)
linear:
floor: 4000
num_buckets: 7
step_size: 1000 # Each bucket is 10%
################################################################################
# Time ratio with very high TX packet drop
#
# Every day, before the end of the day UTC time, log the time ratio with very
# high TX packet drop for that day
# (time with very high packet drop / time connected)
################################################################################
- id: 2007
metric_name: time_ratio_with_very_high_tx_packet_drop
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- id: 103
report_name: device_daily_max_histograms__part_1
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [0%, 10%)
linear:
floor: 0
num_buckets: 10
step_size: 100 # Each bucket is 1%
- id: 104
report_name: device_daily_max_histograms__part_2
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [10%, 20%)
linear:
floor: 1000
num_buckets: 5
step_size: 200 # Each bucket is 2%
- id: 105
report_name: device_daily_max_histograms__part_3
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [20%, 40%)
linear:
floor: 2000
num_buckets: 5
step_size: 400 # Each bucket is 4%
- id: 106
report_name: device_daily_max_histograms__part_4
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets: # [40%, 110%)
linear:
floor: 4000
num_buckets: 7
step_size: 1000 # Each bucket is 10%
################################################################################
# Roaming disconnect per day connected
#
# Every day, before the end of the day UTC time, log the roaming disconnect per
# day connected ratio for that day (# of roaming disconnects / time connected
# in day). Roaming disconnects happen when the device decides to proactively
# leave to join another network.
################################################################################
- id: 2008
metric_name: roaming_disconnect_per_day_connected
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 103
report_name: device_daily_max_histograms__part_1
int_buckets: # [0, 10)
linear:
floor: 0
num_buckets: 10
step_size: 10000 # Each bucket is 1:1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 104
report_name: device_daily_max_histograms__part_2
int_buckets: # [10, 30)
linear:
floor: 100000
num_buckets: 4
step_size: 50000 # Each bucket is 5:1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 105
report_name: device_daily_max_histograms__part_3
int_buckets: # [30, 100)
linear:
floor: 300000
num_buckets: 7
step_size: 100000 # Each bucket is 10:1 ratio
################################################################################
# Non roaming disconnect per day connected
#
# Every day, before the end of the day UTC time, log the non-roaming disconnect
# per day connected ratio for that day (# of non-roaming disconnects / time
# connected in day). Non roaming disconnects do not include disconnects from
# manual user actions, since they are not useful for comparing to the number of
# roaming disconnects.
################################################################################
- id: 2009
metric_name: non_roaming_disconnect_per_day_connected
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 103
report_name: device_daily_max_histograms__part_1
int_buckets: # [0, 10)
linear:
floor: 0
num_buckets: 10
step_size: 10000 # Each bucket is 1:1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 104
report_name: device_daily_max_histograms__part_2
int_buckets: # [10, 30)
linear:
floor: 100000
num_buckets: 4
step_size: 50000 # Each bucket is 5:1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 105
report_name: device_daily_max_histograms__part_3
int_buckets: # [30, 100)
linear:
floor: 300000
num_buckets: 7
step_size: 100000 # Each bucket is 10:1 ratio
################################################################################
# Disconnect per day connected
#
# Every day, before the end of the day UTC time, log the disconnect per day
# connected ratio for that day (# of disconnects / time connected in day).
################################################################################
- id: 2010
metric_name: disconnect_per_day_connected_7d
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1, 101]
reports:
- *device_log_local_ratio_once_daily_monitoring_metric_template__default_report_2
# TODO(https://fxbug.dev/42078362): Remove this report once replaced by the newer histogram reports
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 100
report_name: device_daily_max_histograms
int_buckets:
linear:
floor: 0
num_buckets: 150
step_size: 1000 # Each bucket is 0.1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_2_with_exp
id: 102
report_name: device_daily_local_avg_stats_system_ver__ps_exp
experiment_id: *ps_exp_ids
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 103
report_name: device_daily_max_histograms__part_1
int_buckets: # [0, 1)
linear:
floor: 0
num_buckets: 5
step_size: 2000 # Each bucket is 0.2 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 104
report_name: device_daily_max_histograms__part_2
int_buckets: # [1, 5)
linear:
floor: 10000
num_buckets: 8
step_size: 5000 # Each bucket is 0.5 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 105
report_name: device_daily_max_histograms__part_3
int_buckets: # [5, 15)
linear:
floor: 50000
num_buckets: 10
step_size: 10000 # Each bucket is 1:1 ratio
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
id: 106
report_name: device_daily_max_histograms__part_4
int_buckets: # [15, 45)
linear:
floor: 150000
num_buckets: 6
step_size: 50000 # Each bucket is 5:1 ratio
#############################################
### 3XXX - Monitoring metrics (device counts)
###
### This category is no longer used.
#############################################
#############################################
### 4XXX - Statistics metrics (WLAN area)
#############################################
################################################################################
# Disconnect breakdown by device uptime
#
# When a client has disconnected from an AP, log an occurrence along with a
# dimension based on how long the device has been up.
################################################################################
- id: 4003
metric_name: disconnect_breakdown_by_device_uptime
metric_dimensions:
- dimension: DeviceUptime
event_codes:
1: LessThan1Hour
2: LessThan3Hours
3: LessThan12Hours
4: LessThan1Day
5: LessThan2Days
6: AtLeast2Days
<<: *detailed_occurrence_metric_template
################################################################################
# Disconnect breakdown by connected duration
#
# When a client has disconnected from an AP, log an occurrence along with a
# dimension based on how long the connected session has been.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4004
metric_name: disconnect_breakdown_by_connected_duration
metric_dimensions:
- dimension: connected_duration
event_codes:
1: LessThan30Seconds
2: LessThan5Minutes
3: LessThan1Hour
4: LessThan6Hours
5: LessThan24Hours
6: AtLeast24Hours
################################################################################
# Disconnect breakdown by reason code
#
# Whenever client sees a disconnect, log the reason code and its source.
#
# Replacement for metric 400, but logged in Policy instead of wlanstack.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4005
metric_name: disconnect_breakdown_by_reason_code
metric_dimensions:
- &disconnect_reasons_dim
# Note: the meaning of reason_code depends on which `disconnect_source`
# it comes from.
dimension: reason_code
max_event_code: 1000
- &disconnect_sources_dim
dimension: disconnect_source
event_codes:
0: user
1: mlme
2: ap
################################################################################
# Disconnect breakdown by primary channel
#
# Whenever client sees a disconnect, log the primary channel.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4006
metric_name: disconnect_breakdown_by_primary_channel
metric_dimensions:
- &primary_channel_dim
dimension: primary_channel
max_event_code: 196
################################################################################
# Downtime breakdown by disconnect reason
#
# When a client reconnects, compute the downtime since the previous
# disconnection. Log the downtime with the dimension based on the previous
# disconnect reason code.
################################################################################
- id: 4007
metric_name: downtime_breakdown_by_disconnect_reason
metric_type: INTEGER
metric_units: MICROSECONDS
metric_semantics: [NETWORK_COMMUNICATION, LATENCY]
metric_dimensions:
- *disconnect_reasons_dim
- *disconnect_sources_dim
reports:
- report_name: fleetwide_means
id: 1
report_type: FLEETWIDE_MEANS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
<<: *ga_release_metadata
################################################################################
# Connect attempt breakdown by status code
#
# When a client makes a connection attempt, log the status code.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4008
metric_name: connect_attempt_breakdown_by_status_code
metric_dimensions:
- &status_code_dim
dimension: status_code
max_event_code: 1000
################################################################################
# Connect attempt on normal device breakdown by status code
#
# Once each day, check if the device has normal connection success rate. If it
# does, log all the status code of all the connection attempts it has made
# that day.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4009
metric_name: connect_attempt_on_normal_device_breakdown_by_status_code
metric_dimensions:
- *status_code_dim
################################################################################
# Connect attempt on bad device breakdown by status code
#
# Once each day, check if the device has low connection success rate. If it
# does, log all the status code of all the connection attempts it has made
# that day.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4010
metric_name: connect_attempt_on_bad_device_breakdown_by_status_code
metric_dimensions:
- *status_code_dim
################################################################################
# Successful connect breakdown by user wait time
#
# On connect success, log the duration the user has waited, including the
# time of network selection and all the retries.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4011
metric_name: successful_connect_breakdown_by_user_wait_time
metric_dimensions:
- dimension: wait_time
event_codes:
1: LessThan1Second
2: LessThan3Seconds
3: LessThan5Seconds
4: LessThan8Seconds
5: LessThan15Seconds
6: AtLeast15Seconds
################################################################################
# Successful connect breakdown by is_multi_bss
#
# On connect success, log whether there are multiple BSS in the ESS.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4012
metric_name: successful_connect_breakdown_by_is_multi_bss
metric_dimensions:
- &is_multi_bss_dim
dimension: is_multi_bss
event_codes:
1: "Yes"
2: "No"
################################################################################
# Successful connect breakdown by BSS security type
#
# On connect success, log the security type of the BSS.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4013
metric_name: successful_connect_breakdown_by_security_type
metric_dimensions:
- &security_type_dim
dimension: security_type
event_codes:
0: Unknown
1: Open
2: Wep
3: Wpa1
4: Wpa1Wpa2Personal
5: Wpa2Personal
6: Wpa2Wpa3Personal
7: Wpa3Personal
8: Wpa2Enterprise
9: Wpa3Enterprise
# 10 removed by http://fxrev.dev/470379
11: Wpa1Wpa2PersonalTkipOnly
12: Wpa2PersonalTkipOnly
################################################################################
# Successful connect breakdown by WLAN primary channel
#
# On connect success, log the WLAN primary channel.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4014
metric_name: successful_connect_breakdown_by_primary_channel
metric_dimensions:
- *primary_channel_dim
################################################################################
# Successful connect breakdown by WLAN channel band
#
# On connect success, log the WLAN channel band.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4015
metric_name: successful_connect_breakdown_by_channel_band
metric_dimensions:
- &channel_band_dim
dimension: channel_band
event_codes:
1: Band2Dot4Ghz
2: Band5Ghz
################################################################################
# Connect success rate per day breakdown by is_multi_bss
#
# Every day, separately compute the device's daily connect success rate on
# networks that have multiple BSS and networks that have single BSS. Log a
# number for each dimension
################################################################################
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template
id: 4018
metric_name: daily_connect_success_rate_breakdown_by_is_multi_bss
metric_dimensions:
- *is_multi_bss_dim
################################################################################
# Connect success rate per day breakdown by security type
#
# Every day, separately compute the device's daily connect success rate for
# each security type of encountered networks. Log a number for each dimension
################################################################################
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template
id: 4019
metric_name: daily_connect_success_rate_breakdown_by_security_type
metric_dimensions:
- *security_type_dim
################################################################################
# Connect success rate per day breakdown by primary channel
#
# Every day, separately compute the device's daily connect success rate for
# each primary channel of encountered networks. Log a number for each dimension
################################################################################
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template
id: 4020
metric_name: daily_connect_success_rate_breakdown_by_primary_channel
metric_dimensions:
- *primary_channel_dim
################################################################################
# Connect success rate per day breakdown by channel band
#
# Every day, separately compute the device's daily connect success rate for
# each channel band of encountered networks. Log a number for each dimension
################################################################################
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template
id: 4021
metric_name: daily_connect_success_rate_breakdown_by_channel_band
metric_dimensions:
- *channel_band_dim
################################################################################
# Connect success rate per day breakdown by rssi bucket
#
# Every day, separately compute the device's daily connect success rate for
# each rssi bucket of encountered networks. Log a number for each dimension
################################################################################
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template
id: 4022
metric_name: daily_connect_success_rate_breakdown_by_rssi_bucket
metric_dimensions:
- dimension: rssi_bucket
event_codes:
1: From128To90
2: From89To86
3: From85To83
4: From82To80
5: From79To77
6: From76To74
7: From73To71
8: From70To66
9: From65To61
10: From60To51
11: From50To35
# RSSI greater than -35dBm is considered too strong, which degrades
# throughput performance:
# https://helpcenter.engeniustech.com/hc/en-us/articles/360015304031-Outdoor-RSSI-and-Acceptable-Signal-Strength
12: From34To28
13: From27To1
14: "0"
################################################################################
# Connect success rate per day breakdown by snr bucket
#
# Every day, separately compute the device's daily connect success rate for
# each snr bucket of encountered networks. Log a number for each dimension
################################################################################
- <<: *device_log_local_ratio_once_daily_monitoring_metric_template
id: 4023
metric_name: daily_connect_success_rate_breakdown_by_snr_bucket
metric_dimensions:
- dimension: snr_bucket
event_codes:
1: "0"
2: From1To10
3: From11To15
4: From16To25
5: From26To40
6: MoreThan40
################################################################################
# Successful connect per OUI
#
# On connect success, log the OUI.
################################################################################
- id: 4024
metric_name: successful_connect_per_oui
string_candidate_file: fuchsia/connectivity_wlan/ouis.txt
<<: *fleetwide_string_counts_metric_template
################################################################################
# Reconnect breakdown by duration
#
# On reconnect, log an occurrence, with breakdown on how long the reconnect
# takes.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4025
metric_name: reconnect_breakdown_by_duration
metric_dimensions:
- dimension: reconnect_duration
event_codes:
1: LessThan100Milliseconds
2: LessThan1Second
3: LessThan5Seconds
4: LessThan30Seconds
5: AtLeast30Seconds
################################################################################
# Roaming scans per day
#
# Log when policy decides to perform a scan to look for networks to roam to.
# Report how many of these scans devices do each day.
################################################################################
- id: 4026
metric_name: policy_proactive_roaming_scan_counts
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
reports:
- id: 1
# Use this name if there is only one such report for the metric.
<<: &default_device_daily_occurrence_histograms_report_name
report_name: device_daily_occurrence_histograms
<<: &device_daily_histograms_report
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
int_buckets:
linear:
floor: 0
num_buckets: 150
step_size: 1
<<: *ga_release_metadata
################################################################################
# Roaming proactive network switches per day
#
# Log when a device decides to leave the current AP and attempt to connect to
# another one. Report how many times each device does this each day.
################################################################################
- id: 4027
metric_name: network_roaming_disconnect_counts
<<: &disconnect_counts_metric
metric_type: OCCURRENCE
metric_semantics: [NETWORK_COMMUNICATION, USAGE_COUNTING]
reports:
- id: 1
<<: *default_device_daily_occurrence_histograms_report_name
<<: *device_daily_histograms_report
int_buckets:
linear:
floor: 0
num_buckets: 24
step_size: 1
<<: *ga_release_metadata
################################################################################
# Non-roaming disconnects per day
#
# Log when a device disconnects, but not because of roaming. This does not
# include disconnects from a user forgetting a network or manually connecting
# to a new one.
################################################################################
- id: 4028
metric_name: network_non_roaming_disconnect_counts
<<: *disconnect_counts_metric
################################################################################
# All disconnects per day
#
# Log when a device disconnects for any reason. The histogram buckets match
# roaming disconnect counts so that the numbers can be compared.
################################################################################
- id: 4029
metric_name: network_disconnect_counts
<<: *disconnect_counts_metric
################################################################################
# Connection uptime before roam
#
# When a decision to roam happens, log how long the current connection has been
# up. The unit for the metric is in minutes. The range of recorded time is
# 0 - 6 hours.
################################################################################
- id: 4030
metric_name: connected_duration_before_roaming_disconnect
<<: &connected_duration_before_disconnect_metric
metric_type: INTEGER
metric_units: MINUTES
metric_semantics: [NETWORK_COMMUNICATION]
reports:
- id: 1
<<: &default_fleetwide_histograms_report_name
report_name: fleetwide_histograms
<<: &fleetwide_histograms_report
report_type: FLEETWIDE_HISTOGRAMS
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
int_buckets:
linear:
floor: 0
num_buckets: 360
step_size: 1
<<: *ga_release_metadata
################################################################################
# Connection uptime before non-roam disconnect
#
# When a disconnect happens, log how long the current connection has been up.
# The unit for the metric is in minutes. The recorded duration buckets match
# the ones used for roam connected durations in order to compare the two.
################################################################################
- id: 4031
metric_name: connected_duration_before_non_roaming_disconnect
<<: *connected_duration_before_disconnect_metric
################################################################################
# Connection uptime before disconnect
#
# When any disconnect happens, log how long the current connection has been up.
################################################################################
- id: 4032
metric_name: connected_duration_before_disconnect
<<: *connected_duration_before_disconnect_metric
################################################################################
# Connection RSSI values
#
# The RSSI values of the AP that the device is connected to. This RSSI value is
# collected every second and all collected values are aggregated as a histogram
# and periodically sent to cobalt. The values are reported for the entire fleet
# in order to get an idea of the signal strength of the fleet's connections and
# see whether changes cause general improvements or worsening of signal
# strength of the networks chosen by devices.
################################################################################
- id: 4033
metric_name: connection_rssi
metric_type: INTEGER_HISTOGRAM
metric_units_other: "dBm"
metric_semantics: [NETWORK_COMMUNICATION]
int_buckets:
linear:
floor: -128
num_buckets: 129
step_size: 1
reports:
- id: 1
<<: *default_fleetwide_histograms_report_name
<<: *fleetwide_histograms_report
<<: *ga_release_metadata
################################################################################
# RSSI velocity
#
# RSSI velocity, or change in RSSI per second, is estimated for the current
# connection based on regular RSSI readings. The unit of RSSI velocity is dBm/s
# and will be converted to dBm/s even if the interval used to calculate RSSI
# velocity isn't 1 second.
################################################################################
- id: 4034
metric_name: rssi_velocity
metric_type: INTEGER_HISTOGRAM
metric_units_other: "dBm/s"
metric_semantics: [NETWORK_COMMUNICATION]
int_buckets:
linear:
floor: -10
num_buckets: 21
step_size: 1
reports:
- id: 1
<<: *default_fleetwide_histograms_report_name
<<: *fleetwide_histograms_report
<<: *ga_release_metadata
################################################################################
# Roaming reconnect time
#
# Log how long it takes to reconnect to the new network after disconnecting
# from the previous network when roaming. The time is logged in microseconds,
# up to 60 seconds with .1 second histogram buckets.
################################################################################
- id: 4035
metric_name: roaming_reconnect_duration
metric_type: INTEGER
metric_units: MICROSECONDS
metric_semantics: [NETWORK_COMMUNICATION]
reports:
- id: 1
<<: *default_fleetwide_histograms_report_name
<<: *fleetwide_histograms_report
int_buckets:
linear:
floor: 0
num_buckets: 600
step_size: 100000
<<: *ga_release_metadata
################################################################################
# Non roaming reconnect time
#
# Log how long it takes to connect after a disconnect that didn't happen for
# roaming. This metric matches roaming reconnect time so that the two can
# be compared. Non roaming disconnects include loss of signal or the AP ending
# the connection. The time is logged in microseconds, up to 60 seconds with .1
# second histogram buckets.
################################################################################
- id: 4036
metric_name: non_roaming_reconnect_duration
metric_type: INTEGER
metric_units: MICROSECONDS
metric_semantics: [NETWORK_COMMUNICATION]
reports:
- id: 1
<<: *default_fleetwide_histograms_report_name
<<: *fleetwide_histograms_report
int_buckets:
linear:
floor: 0
num_buckets: 600
step_size: 100000
<<: *ga_release_metadata
################################################################################
# Disconnect breakdown by channel band
#
# Whenever client sees a disconnect, log the channel band.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4037
metric_name: disconnect_breakdown_by_channel_band
metric_dimensions:
- *channel_band_dim
################################################################################
# Disconnect breakdown by is_multi_bss
#
# Whenever client sees a disconnect, log whether the network had multiple BSS.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4038
metric_name: disconnect_breakdown_by_is_multi_bss
metric_dimensions:
- *is_multi_bss_dim
################################################################################
# Disconnect breakdown by security type
#
# Whenever client sees a disconnect, log the security type.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4039
metric_name: disconnect_breakdown_by_security_type
metric_dimensions:
- *security_type_dim
################################################################################
# WLAN user restart counts
#
# Whenever a user quickly stops and starts client connections, log an
# occurrence. Users often toggle WLAN when something is not working well, so
# this indicates something may be wrong.
################################################################################
- id: 4040
metric_name: client_connections_stop_and_start
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
################################################################################
# WLAN manual network change counts
#
# Whenever already has a client connection and a user manually connects to a
# different network, log an occurrence. Switching to another network manually
# may indicate that the user thought something was wrong with the previous
# network or new network is better and WLAN should have proactively switched to
# that network.
################################################################################
- id: 4041
metric_name: manual_network_change
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
################################################################################
# Percent good roams
#
# Once a day, if the device has roamed at all log what percent of roams that
# happen on the device result in a good network connection. A good connection
# is considered one that we wouldn't roam away from soon after connecting.
################################################################################
- id: 4042
metric_name: percent_good_roams
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1]
reports:
- id: 101
report_name: device_daily_max_histograms
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets:
linear:
floor: 0
num_buckets: 101
## The unit is TenThousandths, so each bucket is .01 to represent 1%.
step_size: 100
################################################################################
# Percent good roams out of 5+
#
# Once a day, if the device has roamed at least 5 times, log what percent of
# roams that happen on the device result in a good network connection.
################################################################################
- id: 4043
metric_name: percent_good_roams_at_least_five_roams
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__metric_portion
deleted_report_ids: [1]
reports:
- id: 101
report_name: device_daily_max_histograms
<<: *device_log_local_ratio_once_daily_monitoring_metric_template__report_device_daily_max_histograms
int_buckets:
linear:
floor: 0
num_buckets: 101
## The unit is TenThousandths, so each bucket is .01 to represent 1%.
step_size: 100
################################################################################
# Roam to insufficient network
#
# When a roam happens to a network that has an issue soon after connecting, log
# an occurrence. The issues correspond to reasons that WLAN would roam away
# from a network, such as bad or worsening signal or insufficient network speed,
# plus whether there was a non-user, non-roaming disconnect soon after
# connecting.
################################################################################
- id: 4044
metric_name: roam_to_insufficent_network_issue_counts
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- dimension: has_insufficient_signal
event_codes: &yes_no
0: "Yes"
1: "No"
- dimension: has_insufficient_data_rate
event_codes: *yes_no
- dimension: disconnect
event_codes: *yes_no
- dimension: imminent_disconnect
event_codes: *yes_no
reports:
- id: 1
report_name: fleetwide_occurrence_counts
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
# Counts per device can be used for a more detailed view when there is a
# change in the total count report for a combination of dimensions (ie for
# report 1). For example there could be a few devices heavily affected, or
# many devices slightly affected.
- id: 101
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 10
step_size: 1
################################################################################
# Device attempts to create an interface and fails
#
# Interfaces are created in the course of service the WLAN policy API in an
# attempt to service client requests (eg: connecting to a network or starting
# and access point). This metric represents a failure to create an interface.
#
# This metric will be used for setting thresholds beyond which the WLAN stack
# will attempt to reset and recover a PHY.
################################################################################
- id: 4045
metric_name: interface_creation_failure
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 51
step_size: 1
################################################################################
# Device attempts to destroy an interface and fails
#
# Interfaces are torn down when policy layer API clients request that client or
# AP functionality be disabled. This metric represents a failure to destroy a
# WLAN interface.
#
# This metric will be used for setting thresholds beyond which the WLAN stack
# will attempt to reset and recover a PHY.
################################################################################
- id: 4046
metric_name: interface_destruction_failure
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 51
step_size: 1
################################################################################
# Access point fails to start
#
# This metric represents a failure to bring up a soft AP
#
# This metric will be used for setting thresholds beyond which the WLAN stack
# will attempt to reset and recover a PHY.
################################################################################
- id: 4047
metric_name: ap_start_failure
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 51
step_size: 1
################################################################################
# Client scan failures
#
# Scans are initiated to fulfill a variety of client functions. This metric
# represents a failure to initiate a scan or a failure in the scanning process.
#
# One of the reasons for device connectivity issues that has been observed in
# the field is a repeated inability to scan. This metric will help to quantify
# the prevalence of this defect and judge whether or not eventual recovery
# measures are effective in reducing it.
################################################################################
- id: 4048
metric_name: client_scan_failure
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 501
step_size: 1
################################################################################
# Aborted client scan
#
# Scans are periodically cancelled due to competing API requests. This metric
# represents a scan that is internally cancelled to differentiate it from the
# scan failures.
################################################################################
- id: 4049
metric_name: aborted_scan
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 501
step_size: 1
################################################################################
# Empty scan results
#
# Scanning for WLAN networks is expected to yield some results. This metric
# represents the situations in which scan results are empty.
#
# One of the reasons that devices in the field are observed to have trouble
# reconnecting to an AP is because they repeatedly see empty scan results. This
# metric will help to quantify how often this occurs and whether or not recovery
# measures are effective in reducing it.
################################################################################
- id: 4050
metric_name: empty_scan_results
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 501
step_size: 1
################################################################################
# Connection failures
#
# This metric represents a failure of a WLAN client interface to connect to an
# access point.
#
# One of the symptoms that some devices in the field exhibit is a repeated
# inability to connect to an AP despite the fact that it is suspected that they
# have valid credentials. This metric will convey the frequency of this defect
# and allow the tracking of its prevalence once recovery is implemented.
################################################################################
- id: 4051
metric_name: connection_failures
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histograms
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 501
step_size: 1
################################################################################
# Multiple consecutive failures returned by GetCounterStats
#
# This is generally a symptom of a hangup in the underlying driver, which can
# cause this call to fail with a timeout.
################################################################################
- id: 4052
metric_name: consecutive_counter_stats_failures
metric_type: INTEGER
metric_units: METRIC_UNITS_OTHER
metric_units_other: "count"
metric_semantics: [USAGE_COUNTING]
<<: *ga_release_metadata
reports:
- id: 1
report_name: device_daily_max_histograms
report_type: UNIQUE_DEVICE_HISTOGRAMS
system_profile_selection: SELECT_LAST
local_aggregation_period: WINDOW_1_DAY
local_aggregation_procedure: MAX_PROCEDURE
privacy_level: NO_ADDED_PRIVACY
privacy_mechanism: DE_IDENTIFICATION
system_profile_field: *default_system_profile_field
int_buckets:
linear:
floor: 0
num_buckets: 101
step_size: 1
################################################################################
# Scan request fulfillment time (successful scans only)
#
# Some scan requests are more important than others, and we may fulfill them
# out of order to prioritize more important ones. Scans may also have different
# parameters that impact scan time.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4053
metric_name: successful_scan_request_fulfillment_time
metric_dimensions:
- dimension: scan_fulfillment_time
event_codes:
0: Unknown
1: LessThanOneSecond
2: LessThanTwoSeconds
3: LessThanThreeSeconds
4: LessThanFiveSeconds
5: LessThanEightSeconds
6: LessThanThirteenSeconds
7: LessThanTwentyOneSeconds
8: LessThanThirtyFourSeconds
9: LessThanFiftyFiveSeconds
10: MoreThanFiftyFiveSeconds
- dimension: scan_reason
event_codes:
0: Unknown
1: ClientRequest
2: NetworkSelection
3: BssSelection
4: BssSelectionAugmentation
5: ProactiveRoaming
################################################################################
# Scan queue statistics after a completed scan
#
# When a scan completes (either in success or failure), record how many requests
# were fulfilled by it, as well as the remaining count of requests in the queue.
################################################################################
- <<: *detailed_occurrence_metric_template
id: 4054
metric_name: scan_queue_statistics_after_completed_scan
metric_dimensions:
- dimension: scan_requests_fulfilled
event_codes:
0: Unknown
1: Zero
2: One
3: Two
4: Three
5: Four
6: FiveToNine
7: TenOrMore
- dimension: scan_requests_remaining
event_codes:
0: Unknown
1: Zero
2: One
3: Two
4: Three
5: Four
6: FiveToNine
7: TenToFourteen
8: FifteenOrMore
################################################################################
# Count of the number of times that a recovery intervention was taken.
#
# There are several reasons that a recovery action might be taken. This metric
# tallies the number of times recovery actions were taken across the fleet and
# breaks down the recovery events by cause.
#
# Additional reports provide insight into the frequency with which devices are
# initiating recovery and whether it is the same set of devices repeatedly
# recovering throughout the week, or a large population occasionally utilizing
# recovery.
################################################################################
- id: 4055
metric_name: recovery_occurrence
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- dimension: reason
event_codes:
1: InterfaceCreationFailure
2: InterfaceDestructionFailure
3: ClientConnectionFailure
4: ApStartFailure
5: ScanFailure
6: ScanCancellation
7: ScanResultsEmpty
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: &recovery_daily_occurrence_histograms
report_name: device_daily_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 101
step_size: 1
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
- id: 3
<<: &recovery_weekly_occurrence_histograms
report_name: device_weekly_occurrence_histograms
int_buckets:
linear:
floor: 0
num_buckets: 101
step_size: 1
<<: *occurrence_metric_template__report_device_weekly_occurrence_histograms
################################################################################
# Accounts for the outcomes of recovery interventions when interface creation is
# not working.
#
# When interface creation is not working, the system will attempt to get it
# working again. This metric logs the method used to try to get it working and
# whether or not the recovery intervention was successful.
################################################################################
- id: 4056
metric_name: interface_creation_recovery_outcome
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- &recovery_results
dimension: result
event_codes:
1: Success
2: Failure
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: *recovery_daily_occurrence_histograms
- id: 3
<<: *recovery_weekly_occurrence_histograms
################################################################################
# Accounts for the recovery outcomes when interface destruction is not working.
#
# When interface destruction is not working, the system will attempt to ensure
# that the WLAN PHY can destroy interfaces. This metric logs whether or not
# interface destruction works post-recovery along with the recovery mechanism
# that was used.
################################################################################
- id: 4057
metric_name: interface_destruction_recovery_outcome
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- *recovery_results
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: *recovery_daily_occurrence_histograms
- id: 3
<<: *recovery_weekly_occurrence_histograms
################################################################################
# Accounts for the outcomes of recovery on a device's ability to connect to
# networks.
#
# When a device is repeatedly unable to connect to a network for reasons other
# than a credential mismatch, the system will attempt to recover the stack to a
# state where it is able to connect. This metric will log the recovery
# mechanism employed and whether or not it worked.
################################################################################
- id: 4058
metric_name: connect_failure_recovery_outcome
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- *recovery_results
# The following is a superset of recovery mechanisms that may be applied to
# client interfaces. While disconnect will not be employed to assist in
# recovering an interface that is in a state where it cannot connect, it is
# provided in this list so that it can be used in the various scan recovery
# scenarios.
- &client_interface_recovery_mechanisms
dimension: client_recovery_mechanism
event_codes:
1: Disconnect
2: DestroyIface
3: PhyReset
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: *recovery_daily_occurrence_histograms
- id: 3
<<: *recovery_weekly_occurrence_histograms
################################################################################
# Accounts for the outcomes of recovery in situations where scanning fails.
#
# In situations where a device is repeatedly unable to scan, the system will
# employ various recovery mechanisms in an attempt to scan successfully. This
# metric logs the mechanism used and whether or not it worked.
################################################################################
- id: 4059
metric_name: scan_failure_recovery_outcome
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- *recovery_results
- *client_interface_recovery_mechanisms
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: *recovery_daily_occurrence_histograms
- id: 3
<<: *recovery_weekly_occurrence_histograms
################################################################################
# Accounts for the outcomes of recovery in situations where scans are cancelled.
#
# In situations where a device's scan requests are repeated cancelled, the
# system will employ various recovery mechanisms in an attempt to restore the
# ability to scan. This metric logs the mechanism used and whether or not it
# worked.
################################################################################
- id: 4060
metric_name: scan_cancellation_recovery_outcome
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- *recovery_results
- *client_interface_recovery_mechanisms
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: *recovery_daily_occurrence_histograms
- id: 3
<<: *recovery_weekly_occurrence_histograms
################################################################################
# Accounts for the outcomes of recovery when scan results are empty.
#
# The system will attempt to recover to a working state if it detects that it
# is able to scan, but the results are consistently empty. This metric logs
# the recovery mechanism employed and whether or not it was successful.
################################################################################
- id: 4061
metric_name: empty_scan_results_recovery_outcome
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- *recovery_results
- *client_interface_recovery_mechanisms
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: *recovery_daily_occurrence_histograms
- id: 3
<<: *recovery_weekly_occurrence_histograms
################################################################################
# Accounts for the outcomes of recovery on the ability to start an access point.
#
# If a device cannot start an access point interface, it will attemp some
# recovery measures to try to make the operation possible. This metric logs
# what recovery mechanism was used and whether or not it was successful.
################################################################################
- id: 4062
metric_name: start_access_point_recovery_outcome
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- *recovery_results
- dimension: ap_recovery_mechanism
event_codes:
1: StopAp
2: DestroyIface
3: ResetPhy
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 2
<<: *recovery_daily_occurrence_histograms
- id: 3
<<: *recovery_weekly_occurrence_histograms
##################################################
### 5XXX - Statistics metrics (Usage distribution)
##################################################
################################################################################
# Number of WiFi-connected devices
#
# When a client connects to an AP, log the occurrence. Every day, if the
# client is still connected, log at least one occurrence.
#
# The resulting report is the number of connected device.
################################################################################
- <<: *device_counts_metric_template
id: 5000
metric_name: number_of_connected_devices
################################################################################
# Device connected to AP with security type
#
# When a client connects to an AP, log the security type of that network.
# Every day, if the client is still connected, log at least one occurrence.
################################################################################
- <<: *device_counts_metric_template
id: 5001
metric_name: connected_network_security_type
metric_dimensions:
- *security_type_dim
################################################################################
# Device connected to an AP that supports APSD
################################################################################
- <<: *device_counts_metric_template
id: 5002
metric_name: device_connected_to_ap_that_supports_apsd
################################################################################
# Device connected to an AP that supports Link Measurement subfeature from
# 802.11k
################################################################################
- <<: *device_counts_metric_template
id: 5003
metric_name: device_connected_to_ap_that_supports_link_measurement
################################################################################
# Device connected to an AP that supports Neighbor Report subfeature from
# 802.11k
################################################################################
- <<: *device_counts_metric_template
id: 5004
metric_name: device_connected_to_ap_that_supports_neighbor_report
################################################################################
# Device connected to an AP that supports Fast Transition (802.11r)
################################################################################
- <<: *device_counts_metric_template
id: 5005
metric_name: device_connected_to_ap_that_supports_ft
################################################################################
# Device connected to an AP that supports BSS transition management subfeature
# from 802.11v
################################################################################
- <<: *device_counts_metric_template
id: 5006
metric_name: device_connected_to_ap_that_supports_bss_transition_management
################################################################################
# Device connected to AP breakdown by is_multi_bss
################################################################################
- <<: *device_counts_metric_template
id: 5007
metric_name: device_connected_to_ap_breakdown_by_is_multi_bss
metric_dimensions:
- *is_multi_bss_dim
################################################################################
# Device connected to AP breakdown by primary channel
#
# When a client connects to an AP, log primary channel it's on. On channel
# switch, log the new primary channel. Every day, if the client is still
# connected, log at least one occurrence.
################################################################################
- <<: *device_counts_metric_template
id: 5008
metric_name: device_connected_to_ap_breakdown_by_primary_channel
metric_dimensions:
- *primary_channel_dim
################################################################################
# Device connected to AP breakdown by channel band
#
# When a client connects to an AP, log channel band it's on. On channel
# switch, log the (potentially) new channel band. Every day, if the client
# is still connected, log at least one occurrence.
################################################################################
- <<: *device_counts_metric_template
id: 5009
metric_name: device_connected_to_ap_breakdown_by_channel_band
metric_dimensions:
- *channel_band_dim
################################################################################
# Device connected to AP with some OUI
#
# Once a day, log the OUIs of all the APs that the client has connected to
# or is connected to that day.
################################################################################
- id: 5011
metric_name: device_connected_to_ap_oui_2
string_candidate_file: fuchsia/connectivity_wlan/ouis.txt
<<: *device_string_counts_metric_template
################################################################################
# Device connected to network with very high (95%+) hidden probability.
#
# Logged at least once per day while connected to a likely hidden network, and
# when a connection to a likely hidden network is established.
################################################################################
- <<: *device_counts_metric_template
id: 5012
metric_name: connect_to_likely_hidden_network
##############################
### 6XXX - Connection Selection Metrics
##############################
################################################################################
# Unique device histogram of connect request count per day - dimensionless
#
# * Bucketed exponentially, starting at 0, then (1 + 2^n) from 0-10, up to 1025+
# * Logged when a non-retry connection attempt is made (i.e. manual FIDL
# request, new saved network, or idle interface auto-connect)
################################################################################
- id: 6000
metric_name: policy_connection_attempts
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histogram
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
&exponential_base2plus1_0_to_1025_int_buckets
exponential:
floor: 0
initial_step: 1
step_multiplier: 2
num_buckets: 10
################################################################################
# Unique device histogram of manual FIDL connect requests that occur shortly
# after establishing a different connection - breakdown by reason code for
# previous connection and dimensionless
#
# * Logged in client state machine connected_state when a new connect request is
# received with reason FidlConnectRequest when the duration of current connection
# is short
################################################################################
- id: 6001
metric_name: policy_fidl_connection_attempts_during_short_connection_detailed
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- &connect_reason_dim
dimension: connect_reason
event_codes:
0: RetryAfterDisconnectDetected
1: RetryAfterFailedConnectAttempt
2: FidlConnectRequest
3: ProactiveNetworkSwitch
4: RegulatoryChangeReconnect
5: IdleInterfaceAutoconnect
6: NewSavedNetworkAutoconnect
# This event code is obsolete after a bug fix, but cannot be removed. Do not use.
7: DoNotUseRemovedEventCode
max_event_code: 7
reports:
- id: 1
report_name: device_daily_occurrence_histogram
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
&fidl_connect_attempt_short_duration_int_buckets
linear:
floor: 0
num_buckets: 30
step_size: 1
- id: 6002
metric_name: policy_fidl_connection_attempts_during_short_connection
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histogram
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
*fidl_connect_attempt_short_duration_int_buckets
################################################################################
# Unique device histogram of network selection count per day - dimensionless
# and
# Fleetwide occurrence count of networks selections per day - dimensionless
#
# * Bucketed exponentially, starting at 0, then (1 + 2^n) from 0-10, up to 1025+
# * Logged when a network selection is queued
################################################################################
- id: 6100
metric_name: network_selection_count
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histogram
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
*exponential_base2plus1_0_to_1025_int_buckets
- id: 2
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
################################################################################
# Fleetwide histogram of number of networks selected - dimensionless
# and
# Unique device histogram for [median|mean] number of networks selected -
# dimensionless
#
# * Logged when a network selection result is returned
################################################################################
- id: 6101
metric_name: num_networks_selected
metric_units: METRIC_UNITS_OTHER
metric_units_other: "networks"
<<: *integer_metric_template__metric_portion
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
&networks_selected_int_buckets
linear:
floor: 0
num_buckets: 11
step_size: 1
- id: 2
report_name: device_daily_mean_histogram
<<: *integer_metric_template__report_device_daily_mean_histograms
int_buckets:
*networks_selected_int_buckets
- id: 3
report_name: device_daily_median_histogram
<<: *integer_metric_template__report_device_daily_median_histograms
int_buckets:
*networks_selected_int_buckets
################################################################################
# Unique device histogram of count of BSS selections per day - breakdown by reason
# code and dimensionless
# and
# Fleetwide occurrence count of BSS selections per day - breakdown by reason code
#
# * Bucketed exponentially, starting at 0, then (1 + 2^n) from 0-10, up to 1025+
# * Logged when a BSS selection is queued
################################################################################
- id: 6200
metric_name: bss_selection_count_detailed
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- *connect_reason_dim
reports:
- id: 1
report_name: device_daily_occurrence_histogram
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
*exponential_base2plus1_0_to_1025_int_buckets
- id: 2
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
- id: 6201
metric_name: bss_selection_count
<<: *occurrence_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_occurrence_histogram
<<: *occurrence_metric_template__report_device_daily_occurrence_histograms
int_buckets:
*exponential_base2plus1_0_to_1025_int_buckets
################################################################################
# Fleetwide histogram of number of BSSs considered in each BSS selection per day
# - breakdown by reason code
#
# * Logged during a BSS selection after candidates are collected
################################################################################
- id: 6202
metric_name: num_bss_considered_in_selection_detailed
metric_units: METRIC_UNITS_OTHER
metric_units_other: "BSSs"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- *connect_reason_dim
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
&bss_considered_int_buckets
linear:
floor: 0
num_buckets: 21
step_size: 1
################################################################################
# Unique device histogram of [median|mean|max] number of BSSs considered in BSS
# selection per day - dimensionless
#
# * Logged during a BSS selection after candidates are collected
################################################################################
- id: 6203
metric_name: num_bss_considered_in_selection
metric_units: METRIC_UNITS_OTHER
metric_units_other: "BSSs"
<<: *integer_metric_template__metric_portion
reports:
- id: 1
report_name: device_daily_mean_histogram
<<: *integer_metric_template__report_device_daily_mean_histograms
int_buckets:
*bss_considered_int_buckets
- id: 2
report_name: device_daily_median_histogram
<<: *integer_metric_template__report_device_daily_median_histograms
int_buckets:
*bss_considered_int_buckets
- id: 3
report_name: device_daily_max_histogram
<<: *integer_metric_template__report_device_daily_max_histograms
int_buckets:
*bss_considered_int_buckets
################################################################################
# Fleetwide occurrence count of which GHz bands are present for the BSSs being
# considered for selection.
#
# * Logged during BSS selection.
################################################################################
- id: 6204
metric_name: ghz_bands_available_in_bss_selection
<<: *occurrence_metric_template__metric_portion
metric_dimensions:
- dimension: bands
event_codes:
1: Band2Dot4GHz
2: Band5GHz
3: MultiBand
reports:
- id: 1
report_name: fleetwide_occurrence_count
<<: *occurrence_metric_template__report_fleetwide_occurrence_counts
################################################################################
# Fleetwide histogram of number of networks represented in BSS selection per day
# - breakdown by reason code
# and
# Unique device histogram of [mean|median|max] number of networks represented in
# BSS selection per day - breakdown by reason code
#
# * Logged at the start of BSS selection
################################################################################
- id: 6205
metric_name: num_networks_represented_in_bss_selection
metric_units: METRIC_UNITS_OTHER
metric_units_other: "networks"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- *connect_reason_dim
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
*networks_selected_int_buckets
- id: 2
report_name: device_daily_mean_histogram
<<: *integer_metric_template__report_device_daily_mean_histograms
int_buckets:
*networks_selected_int_buckets
- id: 3
report_name: device_daily_median_histogram
<<: *integer_metric_template__report_device_daily_median_histograms
int_buckets:
*networks_selected_int_buckets
- id: 4
report_name: device_daily_max_histogram
<<: *integer_metric_template__report_device_daily_max_histograms
int_buckets:
linear:
floor: 0
num_buckets: 30
step_size: 1
################################################################################
# Fleetwide histogram of average score for connection - breakdown by short/long
# duration
# and
# Unique device histogram of [mean|median] score for connection - breakdown by
# short/long duration
#
# * Logged at either disconnect time (with ShortDuration event code) or the long
# duration threshold time (with LongDuration event code), whichever comes first
################################################################################
- id: 6300
metric_name: connection_score_average
metric_units: METRIC_UNITS_OTHER
metric_units_other: "score"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- dimension: duration
event_codes:
1: ShortDuration
2: LongDuration
max_event_code: 2
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
&score_int_buckets
linear:
floor: -100
num_buckets: 101
step_size: 2
- id: 2
report_name: device_daily_mean_histogram
<<: *integer_metric_template__report_device_daily_mean_histograms
int_buckets:
*score_int_buckets
- id: 3
report_name: device_daily_median_histogram
<<: *integer_metric_template__report_device_daily_median_histograms
int_buckets:
*score_int_buckets
################################################################################
# Fleetwide histogram of score for all scored candidates - breakdown by reason
# code
# and
# Unique device histogram of [median|mean] score for all scored candidates -
# breakdown by reason code.
#
# * Logged at the end of BSS selection
################################################################################
- id: 6301
metric_name: bss_candidate_score
metric_units: METRIC_UNITS_OTHER
metric_units_other: "score"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- *connect_reason_dim
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
*score_int_buckets
- id: 2
report_name: device_daily_mean_histogram
<<: *integer_metric_template__report_device_daily_mean_histograms
int_buckets:
*score_int_buckets
- id: 3
report_name: device_daily_median_histogram
<<: *integer_metric_template__report_device_daily_median_histograms
int_buckets:
*score_int_buckets
################################################################################
# Fleetwide histogram of score for all selected candidates - breakdown by reason
# code
# and
# Unique device histogram of [median|mean] score for all selected candidates -
# breakdown by reason code.
#
# * Logged at the end of BSS selection
################################################################################
- id: 6302
metric_name: selected_bss_score
metric_units: METRIC_UNITS_OTHER
metric_units_other: "score"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- *connect_reason_dim
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
*score_int_buckets
- id: 2
report_name: device_daily_mean_histogram
<<: *integer_metric_template__report_device_daily_mean_histograms
int_buckets:
*score_int_buckets
- id: 3
report_name: device_daily_median_histogram
<<: *integer_metric_template__report_device_daily_median_histograms
int_buckets:
*score_int_buckets
################################################################################
# Fleetwide histogram of delta between selected candidate and next highest
# candidate - dimensionless
# and
# Unique device histogram of [median|mean] delta between selected candidate and
# next highest candidate - dimensionless
#
# * Logged at end of BSS selection, iff at least two candidates
################################################################################
- id: 6303
metric_name: runner_up_candidate_score_delta
metric_units: METRIC_UNITS_OTHER
metric_units_other: "score_delta"
<<: *integer_metric_template__metric_portion
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
*score_int_buckets
- id: 2
report_name: device_daily_mean_histogram
<<: *integer_metric_template__report_device_daily_mean_histograms
int_buckets:
*score_int_buckets
- id: 3
report_name: device_daily_median_histogram
<<: *integer_metric_template__report_device_daily_median_histograms
int_buckets:
*score_int_buckets
################################################################################
# Fleetwide histogram of delta between highest 5GHz and highest 2.4GHz
# candidate - breakdown by reason code
#
# * Logged at end of BSS selection, iff there is at least one 5GHz candidate and
# one 2.4GHz candidate
################################################################################
- id: 6304
metric_name: best_candidates_ghz_score_delta
metric_units: METRIC_UNITS_OTHER
metric_units_other: "score_delta"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- *connect_reason_dim
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
*score_int_buckets
################################################################################
# Fleetwide histogram of average score delta after connection - breakdown by
# initial score AND time
#
# * Logged at connect_time + 30 seconds, iff connection duration reaches 30s
################################################################################
- id: 6305
metric_name: average_score_delta_after_connection_by_initial_score
metric_units: METRIC_UNITS_OTHER
metric_units_other: "score_delta"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- dimension: initial_score
event_codes:
1: 0To20
2: 21To40
3: 41To60
4: 61To80
5: 81To100
max_event_code: 5
- dimension: time_since_connect
event_codes:
1: OneSecond
2: FiveSeconds
3: TenSeconds
4: ThirtySeconds
max_event_code: 4
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
*score_int_buckets
################################################################################
# Fleetwide histogram of average score delta before disconnect - breakdown by
# final score AND time
#
# * Logged at disconnect time, iff connection duration was at least 30s
################################################################################
- id: 6306
metric_name: average_score_delta_before_disconnect_by_final_score
metric_units: METRIC_UNITS_OTHER
metric_units_other: "score_delta"
<<: *integer_metric_template__metric_portion
metric_dimensions:
- dimension: final_score
event_codes:
1: 0To20
2: 21To40
3: 41To60
4: 61To80
5: 81To100
max_event_code: 5
- dimension: time_until_disconnect
event_codes:
1: OneSecond
2: FiveSeconds
3: TenSeconds
4: ThirtySeconds
max_event_code: 4
reports:
- id: 1
report_name: fleetwide_histogram
<<: *integer_metric_template__report_fleetwide_histograms
int_buckets:
*score_int_buckets
# Deleted metric IDs that must not be reused.
deleted_metric_ids: [2,3,4,5,6,7,8,9,10,11,12,13,14,15,
100,101,102,103,110,111,112,113,114,116,117,
120,121,130,131,132,134,140,141,142,143,144,
150,151,160,161,170,171,172,173,174,
200,201,202,203,204,205,206,207,208,209,
210,211,212,213,214,215,216,217,218,219,
220,221,222,223,230,231,232,233,
240,241,242,243,244,245,
250,251,260,261,262,263,
300,301,302,303,304,305,306,307,308,
310,311,312,313,314,315,316,317,318,319,320,
400,401,
902,903,914,915,
3000,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,
4000,4001,4002,4016,4017,5010]