# 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.

# NOTA BENE
# Despite not being numerically indexed, a metric's dimensions are
# sequentially ordered. When adding new dimensions to a metric, unreported
# fields are back-filled with null values, but new reports will report the
# dimension as having an empty value associated with its 0-index. When new
# dimensions are added to a metric, one cannot discern between valid events
# with a 0 value, and metrics reported from devices that did not know about
# the new dimension.
#
# This was realized after already having added additional dimensions to
# metrics in this file.
#
# To avoid invalidating absolutely all historical data, and because this is
# not an issue for initial metrics -- every metric must measure at least one
# dimension -- the first dimension may use its 0-indexed code to represent
# something meaningful to the dimension.
#
# For consistency throughout the rest of the file, and to support
# extensibility of metric dimensions in the future, all subsequent dimensions
# use "Unreported" as the code for the 0-index of that dimension.
#
# Reviewers and contributors: please maintain this practice when adding new
# metrics here.

metric_definitions:

#####################################################################
# update_check_response_time
#
# Elapsed microseconds from sending update check to getting a response
# from Omaha.
# Logged when we receive an update check response from Omaha.
#####################################################################
- id: 1
  metric_name: update_check_response_time
  metric_type: ELAPSED_TIME
  replacement_metric_id: 101
  metric_dimensions: &ucrt_dimensions
    - dimension: Result
      event_codes:
        0: Success
        1: Failed
  reports:
    #####################################################################
    # update_check_response_timing_histogram
    #
    # Exponential histogram starting from 1ms to 1048576ms (about 17min)
    #####################################################################
    - report_name: update_check_response_timing_histogram
      id: 1631481055 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &ucrth_buckets
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 1000
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 101
  metric_name: update_check_response_time_migrated
  metric_type: INTEGER
  metric_semantics: [LATENCY]
  metric_dimensions: *ucrt_dimensions
  metric_units: MILLISECONDS
  reports:
    #####################################################################
    # update_check_response_timing_histogram
    #
    # Exponential histogram starting from 1ms to 1048576ms (about 17min)
    #####################################################################
    - report_name: update_check_response_timing_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets:
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 1
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# update_check_interval
#
# Elapsed microseconds from the previous update check to the current
# update check.
# Logged when we start a new update check.
#####################################################################
- id: 2
  metric_name: update_check_interval
  metric_type: ELAPSED_TIME
  replacement_metric_id: 102
  metric_dimensions: &uci_dimensions
    - dimension: Result
      event_codes:
        0: Success
    - dimension: Clock
      event_codes:
        0: Unreported
        1: Wall
        2: Monotonic
    - dimension: Initiator
      event_codes:
        0: Unreported
        1: OnDemand
        2: ScheduledTask
  reports:
    #####################################################################
    # update_check_interval_histogram
    #
    # Exponential histogram starting from 1 seconds to 12.13 days.
    #####################################################################
    - report_name: update_check_interval_histogram
      id: 454244994 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets:
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 1000000
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # linear_histogram_1min_buckets
    #
    # linear histogram covering 2 hours
    #####################################################################
    - report_name: linear_histogram_1min_buckets
      id: 1
      report_type: INT_RANGE_HISTOGRAM
      int_buckets:
        linear:
          floor: 0
          num_buckets: 120
          step_size: 60000000
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # linear_histogram_5min_buckets
    #
    # linear histogram covering 24 hours in 10-minute-sized buckets
    #####################################################################
    - report_name: linear_histogram_10min_buckets
      id: 2
      report_type: INT_RANGE_HISTOGRAM
      int_buckets:
        linear:
          floor: 0
          num_buckets: 144
          step_size: 600000000
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 102
  metric_name: update_check_interval_migrated
  metric_type: INTEGER
  metric_units: SECONDS
  metric_semantics: [LATENCY]
  metric_dimensions: *uci_dimensions
  reports:
    #####################################################################
    # update_check_interval_histogram
    #
    # Exponential histogram starting from 1 seconds to 12.13 days.
    #####################################################################
    - report_name: update_check_interval_histogram
      id: 1
      int_buckets:
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 1
          step_multiplier: 2
      report_type: FLEETWIDE_HISTOGRAMS
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # linear_histogram_1min_buckets
    #
    # linear histogram covering 2 hours
    #####################################################################
    - report_name: linear_histogram_1min_buckets
      id: 2
      int_buckets:
        linear:
          floor: 0
          num_buckets: 120
          step_size: 60
      report_type: FLEETWIDE_HISTOGRAMS
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # linear_histogram_10min_buckets
    #
    # linear histogram covering 24 hours in 10-minute-sized buckets
    #####################################################################
    - report_name: linear_histogram_10min_buckets
      id: 3
      int_buckets:
        linear:
          floor: 0
          num_buckets: 144
          step_size: 600
      report_type: FLEETWIDE_HISTOGRAMS
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# update_duration
#
# Elapsed microseconds from starting an update to having successfully
# applied it or encountering a failure.
#
# Computed based on the elapsed time from when an update was initiated
# to when the application of the update has completed, excluding the
# reboot into the new version.
#
# Logged when an update is finished or when an update attempt fails.
#####################################################################
- id: 3
  replacement_metric_id: 103
  metric_name: update_duration
  metric_type: ELAPSED_TIME
  metric_dimensions: &ud_dimensions
    - dimension: Result
      event_codes:
        0: Success
        1: Failed
  reports:
    #####################################################################
    # update_duration_histogram
    #
    # Exponential histogram starting from 10 seconds to 170 minutes.
    #####################################################################
    - report_name: update_duration_histogram
      id: 4031733934 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &udh_buckets
        exponential:
          floor: 0
          num_buckets: 10
          initial_step: 10000000
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_duration_histogram_10sec_buckets
    #
    # Linear histogram of 10sec buckets over a 0-15 minute range
    #####################################################################
    - report_name: update_duration_histogram_10sec_buckets
      id: 1
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &udh10_buckets
        linear:
          floor: 0
          num_buckets: 90
          step_size: 10000000
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_duration_histogram_1min_buckets
    #
    # Linear histogram of 1 minute buckets over a 1-2 hour range
    #####################################################################
    - report_name: update_duration_histogram_1min_buckets
      id: 2
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &udh1_buckets
        linear:
          floor: 0
          num_buckets: 120
          step_size: 60000000
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 103
  metric_name: update_duration_migrated
  metric_type: INTEGER
  metric_units: SECONDS
  metric_semantics: [LATENCY]
  metric_dimensions: *ud_dimensions
  reports:
    #####################################################################
    # update_duration_histogram
    #
    # Exponential histogram starting from 10 seconds to 170 minutes.
    #####################################################################
    - report_name: update_duration_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets:
        exponential:
          floor: 0
          num_buckets: 10
          initial_step: 10
          step_multiplier: 2
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_duration_histogram_10sec_buckets
    #
    # Linear histogram of 10sec buckets over a 0-15 minute range
    #####################################################################
    - report_name: update_duration_histogram_10sec_buckets
      id: 2
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets:
        linear:
          floor: 0
          num_buckets: 90
          step_size: 10
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_duration_histogram_1min_buckets
    #
    # Linear histogram of 1 minute buckets over a 1-2 hour range
    #####################################################################
    - report_name: update_duration_histogram_1min_buckets
      id: 3
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets:
        linear:
          floor: 0
          num_buckets: 120
          step_size: 60
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# update_duration_from_first_seen
#
# Elapsed microseconds from first seeing an update to having
# successfully applied it.
#
# Computed based on the elapsed time from when an update was "first
# seen" by the client (when the version was first received in an
# "update" response from omaha) to when the application of the update
# has completed, including all retries and waits, excluding the time
# to reboot into the new version.
#
# Logged when an update has been successfully applied (staged for
# booting into).
#####################################################################
- id: 4
  replacement_metric_id: 104
  metric_name: update_duration_from_first_seen
  metric_type: ELAPSED_TIME
  metric_dimensions: &udffs_dimensions
    - dimension: Result
      event_codes:
        0: Success
    - dimension: Clock
      event_codes:
        0: Unreported
        1: Monotonic
        2: Wall
  reports:
    #####################################################################
    # update_duration_from_first_seen_histogram
    #
    # Exponential histogram starting from 10 seconds, extending to 121 days.
    #####################################################################
    - report_name: update_duration_from_first_seen_histogram
      id: 4083657128 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &udffs_buckets
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 10000000
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 104
  metric_name: update_duration_from_first_seen_migrated
  metric_type: INTEGER
  metric_units: SECONDS
  metric_semantics: [LATENCY]
  metric_dimensions: *udffs_dimensions
  reports:
    #####################################################################
    # update_duration_from_first_seen_histogram
    #
    # Exponential histogram starting from 10 seconds, extending to 121 days.
    #####################################################################
    - report_name: update_duration_from_first_seen_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets:
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 10
          step_multiplier: 2
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# update_check_failure
#
# Why an update check failed (network, omaha, proxy, etc).
# Logged when an update check is failed.
#####################################################################
- id: 5
  replacement_metric_id: 105
  metric_name: update_check_failure
  metric_type: EVENT_OCCURRED
  metric_dimensions: &ucf_dimensions
    - dimension: Reason
      event_codes:
        0: Omaha
        1: Network
        2: Proxy
        3: Configuration
        4: Internal
      max_event_code: 4
  reports:
    #####################################################################
    # update_check_failure_reason_count
    #
    # Occurrence count for each failure reason.
    #####################################################################
    - report_name: update_check_failure_reason_count
      id: 14257767 # legacy long report_id
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_check_failure_reason_device_count
    #
    # Count of number of devices that see a given error each day/
    #####################################################################
    - report_name: update_check_failure_reason_device_count
      id: 1
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
       - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 105
  metric_name: update_check_failure_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING] # TODO(http://fxbug.dev/69217): Replace this with a more appropriate semantic
  metric_dimensions: *ucf_dimensions
  reports:
    #####################################################################
    # update_check_failure_reason_count
    #
    # Occurrence count for each failure reason.
    #####################################################################
    - report_name: update_check_failure_reason_count
      id: 1
      report_type: FLEETWIDE_OCCURRENCE_COUNTS
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_check_failure_reason_device_count
    #
    # Count of number of devices that see a given error each day/
    #####################################################################
    - report_name: update_check_failure_reason_device_count
      id: 2
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_LAST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# requests_per_check
#
# Number of requests to omaha within a single update attempt to check
# for the availability of an update.
# Logged when an update check is performed.
#####################################################################
- id: 6
  replacement_metric_id: 106
  metric_name: requests_per_check
  metric_type: EVENT_COUNT
  metric_dimensions: &rpc_dimensions
    - dimension: Result
      event_codes:
        0: Success
        1: Failed
  reports:
    #####################################################################
    # requests_per_check_exponential_histogram
    #
    # Exponential histogram starting from 1 to 1024.
    #####################################################################
    - report_name: requests_per_check_exponential_histogram
      id: 3306701443 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &rpceh_dimensions
        exponential:
          floor: 0
          num_buckets: 10
          initial_step: 1
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

    #####################################################################
    # requests_per_check_linear_histogram
    #
    # Linear histogram starting from 1 to 8.
    #####################################################################
    - report_name: requests_per_check_linear_histogram
      id: 2
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &rpclh_dimensions
        linear:
          floor: 1
          num_buckets: 8
          step_size: 1
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

    #####################################################################
    # requests_per_check_per_device_min_histogram
    #
    # Linear histogram min aggregated starting from 1 to 8.
    #####################################################################
    - report_name: requests_per_check_per_device_min_histogram
      id: 3
      report_type: PER_DEVICE_HISTOGRAM
      aggregation_type: MIN
      int_buckets: &rpcpdmh_dimensions
        linear:
          floor: 1
          num_buckets: 8
          step_size: 1
      window_size:
        - 1 # 1 day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

    #####################################################################
    # requests_per_check_per_device_max_histogram
    #
    # Per device Linear histogram max aggregated starting from 1 to 8.
    #####################################################################
    - report_name: requests_per_check_per_device_max_histogram
      id: 4
      report_type: PER_DEVICE_HISTOGRAM
      aggregation_type: MAX
      int_buckets: &rpcpdmh_dimensions
        linear:
          floor: 1
          num_buckets: 8
          step_size: 1
      window_size:
        - 1 # 1 day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 106
  metric_name: requests_per_check_migrated
  metric_type: INTEGER
  metric_dimensions: *rpc_dimensions
  metric_units_other: "requests"
  metric_semantics: [USAGE_COUNTING]
  reports:
    #####################################################################
    # requests_per_check_exponential_histogram
    #
    # Exponential histogram starting from 1 to 1024.
    #####################################################################
    - report_name: requests_per_check_exponential_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets: *rpceh_dimensions
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

    #####################################################################
    # requests_per_check_linear_histogram
    #
    # Linear histogram starting from 1 to 8.
    #####################################################################
    - report_name: requests_per_check_linear_histogram
      id: 2
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets: *rpclh_dimensions
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

    #####################################################################
    # requests_per_check_per_device_min_histogram
    #
    # Linear histogram min aggregated starting from 1 to 8.
    #####################################################################
    - report_name: requests_per_check_per_device_min_histogram
      id: 3
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *rpcpdmh_dimensions
      local_aggregation_procedure: MIN_PROCEDURE
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

    #####################################################################
    # requests_per_check_per_device_max_histogram
    #
    # Per device Linear histogram max aggregated starting from 1 to 8.
    #####################################################################
    - report_name: requests_per_check_per_device_max_histogram
      id: 4
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *rpcpdmh_dimensions
      local_aggregation_procedure: MAX_PROCEDURE
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# attempts_to_successful_check
#
# Number of update check attempts to get a response from omaha.
# Logged when a response has been received.
#####################################################################
- id: 7
  replacement_metric_id: 107
  metric_name: attempts_to_successful_check
  metric_type: EVENT_COUNT
  metric_dimensions: &atsc_dimensions
    - dimension: Result
      event_codes:
        0: Success
  reports:
    #####################################################################
    # attempts_to_successful_check_histogram
    #
    # Exponential histogram starting from 1 to 1024.
    #####################################################################
    - report_name: attempts_to_successful_check_histogram
      id: 2840086323 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &atsch_buckets
        exponential:
          floor: 0
          num_buckets: 10
          initial_step: 1
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 107
  metric_name: attempts_to_successful_check_migrated
  metric_type: INTEGER
  metric_semantics: [USAGE_COUNTING]
  metric_units_other: "attempts"
  metric_dimensions: *atsc_dimensions
  reports:
    #####################################################################
    # attempts_to_successful_check_histogram
    #
    # Exponential histogram starting from 1 to 1024.
    #####################################################################
    - report_name: attempts_to_successful_check_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets: *atsch_buckets
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# waited_for_reboot_duration
#
# Elapsed microseconds from having finished applying the update to
# when finally running that software; this is sent after the reboot
# (and includes the rebooting time).
# Logged when we are running the new version after reboot.
#####################################################################
- id: 8
  replacement_metric_id: 108
  metric_name: waited_for_reboot_duration
  metric_type: ELAPSED_TIME
  metric_dimensions: &wfrd_dimensions
    - dimension: Result
      event_codes:
        0: Success
  reports:
    #####################################################################
    # waited_for_reboot_duration_histogram
    #
    # Exponential histogram starting from 1 seconds to 12.13 days.
    #####################################################################
    - report_name: waited_for_reboot_duration_histogram
      id: 97126065 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &wfrdh_buckets
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 1000000
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 108
  metric_name: waited_for_reboot_duration_migrated
  metric_type: INTEGER
  metric_semantics: [LATENCY]
  metric_units: SECONDS
  metric_dimensions: *wfrd_dimensions
  reports:
    #####################################################################
    # waited_for_reboot_duration_histogram
    #
    # Exponential histogram starting from 1 seconds to 12.13 days.
    #####################################################################
    - report_name: waited_for_reboot_duration_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets:
        exponential:
          floor: 0
          num_buckets: 20
          initial_step: 1
          step_multiplier: 2
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# failed_boot_attempts
#
# Number of time an update failed to boot into new version.
# Logged when we are running the new version after reboot or when
# we have reverted to the old version.
#####################################################################
- id: 9
  replacement_metric_id: 109
  metric_name: failed_boot_attempts
  metric_type: EVENT_COUNT
  metric_dimensions: &fba_dimensions
    - dimension: Result
      event_codes:
        0: Success
  reports:
    #####################################################################
    # failed_boot_attempts_histogram
    #
    # Exponential histogram starting from 1 to 1024.
    #####################################################################
    - report_name: failed_boot_attempts_histogram
      id: 3468066989 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &fbah_buckets
        exponential:
          floor: 0
          num_buckets: 10
          initial_step: 1
          step_multiplier: 2
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 109
  metric_name: failed_boot_attempts_migrated
  metric_type: INTEGER
  metric_semantics: [USAGE_COUNTING]
  metric_units_other: "attempts"
  metric_dimensions: *fba_dimensions
  reports:
    #####################################################################
    # failed_boot_attempts_histogram
    #
    # Exponential histogram starting from 1 to 1024.
    #####################################################################
    - report_name: failed_boot_attempts_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      int_buckets: *fbah_buckets
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# update_check_failure_count
#
# Why an update check failed (network, omaha, proxy, etc).
# Logged when an update check is failed.
#####################################################################
- id: 10
  replacement_metric_id: 110
  metric_name: update_check_failure_count
  metric_type: EVENT_COUNT
  metric_dimensions: &ucfc_dimensions
    - dimension: Reason
      event_codes:
        0: Omaha
        1: Network
        2: Proxy
        3: Configuration
        4: Internal
      max_event_code: 4
  reports:
    #####################################################################
    # per_device_exponential_histogram
    #
    # Exponential histogram of the number of devices that have seen the
    # bucketed number of failures each day.
    #####################################################################
    - report_name: per_device_exponential_histogram
      id: 1
      report_type: PER_DEVICE_HISTOGRAM
      int_buckets: &pdeh_buckets
        exponential:
          floor: 0
          num_buckets: 10
          initial_step: 1
          step_multiplier: 2
      window_size:
        - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # per_device_linear_histogram
    #
    # Linear histogram of the number of devices that have seen the
    # bucketed number of failures each day.
    #####################################################################
    - report_name: per_device_linear_histogram
      id: 2
      report_type: PER_DEVICE_HISTOGRAM
      int_buckets: &pdlh_buckets
        linear:
          floor: 0
          num_buckets: 64
          step_size: 1
      window_size:
        - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 110
  metric_name: update_check_failure_count_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *ucfc_dimensions
  reports:
    #####################################################################
    # per_device_exponential_histogram
    #
    # Exponential histogram of the number of devices that have seen the
    # bucketed number of failures each day.
    #####################################################################
    - report_name: per_device_exponential_histogram
      id: 1
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *pdeh_buckets
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # per_device_linear_histogram
    #
    # Linear histogram of the number of devices that have seen the
    # bucketed number of failures each day.
    #####################################################################
    - report_name: per_device_linear_histogram
      id: 2
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *pdlh_buckets
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# update_check_performed
#
# Records that an update check was performed and the disposition of
# that check.
# Logged when an update check is completed, regardless of
# disposition.
#####################################################################
- id: 11
  replacement_metric_id: 111
  metric_name: update_check_performed
  metric_type: EVENT_COUNT
  metric_dimensions: &ucp_dimensions
    - dimension: CheckResult
      event_codes:
        0: Success
        1: Failed
    - dimension: Initiator
      event_codes:
        0: Unreported
        1: ScheduledTask
        2: OnDemand
    - dimension: Availability
      event_codes:
        0: Unreported
        1: UpdateAvailable
        2: NoUpdateAvailable
    - dimension: UpdateResult
      event_codes:
        0: Unreported
        1: None
        2: Success
        3: Failed
  reports:
    #####################################################################
    # per_device_linear_histogram
    #
    # Linear histogram of the number of update checks performed per
    # device per day.
    #####################################################################
    - report_name: per_device_linear_histogram
      id: 1
      report_type: PER_DEVICE_HISTOGRAM
      aggregation_type: SUM
      int_buckets: &ucp_pdlh_buckets
        linear:
          floor: 0
          num_buckets: 64
          step_size: 1
      window_size:
        - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 111
  metric_name: update_check_performed_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *ucp_dimensions
  reports:
    #####################################################################
    # per_device_linear_histogram
    #
    # Linear histogram of the number of update checks performed per
    # device per day.
    #####################################################################
    - report_name: per_device_linear_histogram
      id: 1
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *ucp_pdlh_buckets
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# omaha_event_lost
#
# Records that an Omaha event report was interrupted and lost, and
# logged in this case.
#####################################################################
- id: 12
  replacement_metric_id: 112
  metric_name: omaha_event_lost
  metric_type: EVENT_COUNT
  metric_dimensions: &oel_dimensions
    - dimension: EventType
      event_codes:
        0: Unknown
        1: DownloadComplete
        2: InstallComplete
        3: UpdateComplete
        4: UpdateDownloadStarted
        5: UpdateDownloadFinished
        6: RebootedAfterUpdate
    - dimension: EventResult
      event_codes:
        0: Unreported
        1: Error
        2: Success
        3: SuccessAndRestartRequired
        4: SuccessAndAppRestartRequired
        5: Cancelled
        6: ErrorInSystemInstaller
        7: UpdateDeferred
  reports:
    #####################################################################
    # per_device_linear_histogram
    #
    # Linear histogram of the number of lost Omaha events per device
    # per day.
    #####################################################################
    - report_name: per_device_linear_histogram
      id: 1
      report_type: PER_DEVICE_HISTOGRAM
      aggregation_type: SUM
      int_buckets: &oel_pdlh_buckets
        linear:
          floor: 0
          num_buckets: 64
          step_size: 1
      window_size:
        - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 112
  metric_name: omaha_event_lost_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *oel_dimensions
  reports:
    #####################################################################
    # per_device_linear_histogram
    #
    # Linear histogram of the number of lost Omaha events per device
    # per day.
    #####################################################################
    - report_name: per_device_linear_histogram
      id: 1
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *oel_pdlh_buckets
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# attempts_per_device_day
#
# Records the number of times omaha-client attempts to install an
# update.
# Logged after update attempt, regardless of disposition.
#####################################################################
- id: 13
  replacement_metric_id: 113
  metric_name: attempts_per_device_day
  metric_type: EVENT_COUNT
  metric_dimensions: &apdd_dimensions
    - dimension: Result
      event_codes:
        0: Success
        1: Failed
  reports:
    #####################################################################
    # device_count_attempts_histogram
    #
    # Linear histogram of the number devices that have seen N consecutive
    # failures applying an update per day.
    #####################################################################
    - report_name: device_count_attempts_histogram
      id: 1
      report_type: PER_DEVICE_HISTOGRAM
      aggregation_type: SUM
      int_buckets: &dcah_buckets
        linear:
          floor: 1
          num_buckets: 32
          step_size: 1
      window_size:
        - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 113
  metric_name: attempts_per_device_day_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *apdd_dimensions
  reports:
    #####################################################################
    # device_count_attempts_histogram
    #
    # Linear histogram of the number devices that have seen N consecutive
    # failures applying an update per day.
    #####################################################################
    - report_name: device_count_attempts_histogram
      id: 1
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *dcah_buckets
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# attempts_to_reach_success
#
# Records the number of times omaha-client attempts to perform an
# installation before it succeeds.
# Logged after update attempt, regardless of disposition.
#####################################################################
- id: 14
  replacement_metric_id: 114
  metric_name: attempts_to_reach_success
  metric_type: EVENT_COUNT
  metric_dimensions: &atrs_dimensions
    - dimension: Result
      event_codes:
        0: Success
        1: Failed
  reports:
    #####################################################################
    # device_count_attempts_histogram
    #
    # Linear histogram of the number devices that have seen N consecutive
    # update attempts, rolling over each day.
    #####################################################################
    - report_name: device_count_attempts_histogram
      id: 1
      report_type: PER_DEVICE_HISTOGRAM
      aggregation_type: MAX
      int_buckets: &atrs_dcah_buckets
        linear:
          floor: 1
          num_buckets: 32
          step_size: 1
      window_size:
        - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 114
  metric_name: attempts_to_reach_success_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *atrs_dimensions
  reports:
    #####################################################################
    # device_count_attempts_histogram
    #
    # Linear histogram of the number devices that have seen N consecutive
    # update attempts, rolling over each day.
    #####################################################################
    - report_name: device_count_attempts_histogram
      id: 1
      report_type: UNIQUE_DEVICE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *atrs_dcah_buckets
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

#####################################################################
# update_check_opt_out_preference
#
# The user's update opt-out preference used during an update check.
# Logged during an update check. Product's control the frequency of
# these checks, but it is typically once per day, in addition to any
# user-initiated update checks.
#####################################################################
- id: 15
  replacement_metric_id: 115
  metric_name: update_check_opt_out_preference
  metric_type: EVENT_OCCURRED
  metric_dimensions: &ucoop_dimensions
    - dimension: Preference
      event_codes:
        0: Unknown
        1: AllowAllUpdates
        2: AllowOnlySecurityUpdates
      max_event_code: 3
  reports:
    #####################################################################
    # update_check_opt_out_preference_count
    #
    # Occurrence count for each opt-out preference.
    #####################################################################
    - report_name: update_check_opt_out_preference_count
      id: 1
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_check_opt_out_preference_device_count
    #
    # Count of number of devices that specify a given preference each day
    #####################################################################
    - report_name: update_check_opt_out_preference_device_count
      id: 2
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
       - 1 # day
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

- id: 115
  metric_name: update_check_opt_out_preference_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *ucoop_dimensions
  reports:
    #####################################################################
    # update_check_opt_out_preference_count
    #
    # Occurrence count for each opt-out preference.
    #####################################################################
    - report_name: update_check_opt_out_preference_count
      id: 1
      report_type: FLEETWIDE_OCCURRENCE_COUNTS
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
    #####################################################################
    # update_check_opt_out_preference_device_count
    #
    # Count of number of devices that specify a given preference each day
    #####################################################################
    - report_name: update_check_opt_out_preference_device_count
      id: 2
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_LAST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_1_DAY
      privacy_level: NO_ADDED_PRIVACY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/06"

