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

metric_definitions:

#####################################################################
# fuchsia_up_ping
#
# Periodically, we log one or more of the following events:
# - Up, if the device is up at all
# - UpOneMinute, if the device has been up for at least one minute
# - UpTenMInutes, if the device has been up for at lest ten minutes
# - etc.
#
# Note that each event is logged repeatedly by our periodic process.
# It is not the case, for example, that UpOneMinute is only logged once
# when the device has been up for one minute. The intention is that this
# metric be used with local daily aggregation.
#####################################################################
- id: 1
  metric_name: fuchsia_up_ping
  metric_type: EVENT_OCCURRED
  replacement_metric_id: 101
  metric_dimensions: &fup_dimensions
    - dimension: uptime
      event_codes:
        0: Up
        1: UpOneMinute
        2: UpTenMinutes
        3: UpOneHour
        4: UpTwelveHours
        5: UpOneDay
        6: UpThreeDays
        7: UpSixDays
      max_event_code: 7
  reports:
      #####################################################################
      # fuchsia_unique_device_counts
      #
      # The number of 1-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the day
      # - up during the day and have been up for at least one minute
      # - up during the day and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_unique_device_up_counts
      id: 2228126248 # legacy long report_id
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 1
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      #####################################################################
      # fuchsia_up_ping
      #
      # We count the number of pings without the on-device aggregation.
      # Note that the actual values of the counts are not particularly
      # meaningful. We expect to use this report primarily as a sanity check of
      # the reporting system.
      #####################################################################
    - report_name: fuchsia_up_ping
      id: 1074068063 # legacy long report_id
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      #####################################################################
      # fuchsia_7_day_actives
      #
      # The number of 7-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the past 7 days
      # - up during the past 7 days and have been up for at least one minute
      # - up during the past 7 days and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_7_day_actives
      id: 1
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 7
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      #####################################################################
      # fuchsia_28_day_actives
      #
      # The number of 28-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the past 28 days
      # - up during the past 28 days and have been up for at least one minute
      # - up during the past 28 days and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_28_day_actives
      id: 2
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 28
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      #####################################################################
      # fuchsia_30_day_actives
      #
      # The number of 30-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the past 30 days
      # - up during the past 30 days and have been up for at least one minute
      # - up during the past 30 days and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_30_day_actives
      id: 3
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 30
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 101
  metric_name: fuchsia_up_ping_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *fup_dimensions
  reports:
      #####################################################################
      # fuchsia_unique_device_counts
      #
      # The number of 1-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the day
      # - up during the day and have been up for at least one minute
      # - up during the day and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_unique_device_up_counts
      id: 1
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_LAST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_1_DAY
      expedited_sending: true
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      privacy_level: NO_ADDED_PRIVACY
      #####################################################################
      # DEPRECATED: fuchsia_unique_device_counts_expedited
      #
      # Since fuchsia_unique_device_counts was made expedited, this report
      # is identical to it. It can be removed once there is no need for the
      # data in it any more.
      #####################################################################
    - report_name: fuchsia_unique_device_up_counts_expedited
      id: 6
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_FIRST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_1_DAY
      expedited_sending: true
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      privacy_level: NO_ADDED_PRIVACY
      #####################################################################
      # fuchsia_up_ping
      #
      # We count the number of pings without the on-device aggregation.
      # Note that the actual values of the counts are not particularly
      # meaningful. We expect to use this report primarily as a sanity check of
      # the reporting system.
      #####################################################################
    - report_name: fuchsia_up_ping
      id: 2
      report_type: FLEETWIDE_OCCURRENCE_COUNTS
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      privacy_level: NO_ADDED_PRIVACY
      #####################################################################
      # fuchsia_7_day_actives
      #
      # The number of 7-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the past 7 days
      # - up during the past 7 days and have been up for at least one minute
      # - up during the past 7 days and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_7_day_actives
      id: 3
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_LAST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_7_DAYS
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      privacy_level: NO_ADDED_PRIVACY
      #####################################################################
      # fuchsia_28_day_actives
      #
      # The number of 28-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the past 28 days
      # - up during the past 28 days and have been up for at least one minute
      # - up during the past 28 days and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_28_day_actives
      id: 4
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_LAST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_28_DAYS
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      privacy_level: NO_ADDED_PRIVACY
      #####################################################################
      # fuchsia_30_day_actives
      #
      # The number of 30-day actives.
      #
      # Every day we count the number of unique devices that are
      # - up at all during the past 30 days
      # - up during the past 30 days and have been up for at least one minute
      # - up during the past 30 days and have been up for at least 10 minutes
      # - etc.
      #####################################################################
    - report_name: fuchsia_30_day_actives
      id: 5
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_LAST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_30_DAYS
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"


#####################################################################
# fuchsia_lifetime_events
#
# We log each time one of these events occur on a Fuchsia device.
#####################################################################
- id: 2
  metric_name: fuchsia_lifetime_events
  metric_type: EVENT_OCCURRED
  replacement_metric_id: 102
  metric_dimensions: &fle_dimensions
    - dimension: events
      event_codes:
        0: Boot
        1: Activation
      max_event_code: 7
  reports:
      #####################################################################
      # fuchsia_lifetime_event_counts
      #
      # Every day we count the number of times the following events occur across
      # the fleet:
      # - boots
      # - activation (first time or after factory reset)
      #####################################################################
    - report_name: fuchsia_lifetime_event_counts
      id: 14219118 # legacy long report_id
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]

      #####################################################################
      # fuchsia_unique_device_lifetime_event_counts
      #
      # Every day we count the number of unique devices for which each
      # of the following events occurred during the course of the day:
      # - boot
      # - activation (first time or after factory reset)
      #####################################################################
    - report_name: fuchsia_unique_device_lifetime_event_counts
      id: 560138269 # legacy long report_id
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 1
      system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 102
  metric_name: fuchsia_lifetime_events_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *fle_dimensions
  reports:
      #####################################################################
      # fuchsia_lifetime_event_counts
      #
      # Every day we count the number of times the following events occur across
      # the fleet:
      # - boots
      # - activation (first time or after factory reset)
      #####################################################################
    - report_name: fuchsia_lifetime_event_counts
      id: 1
      report_type: FLEETWIDE_OCCURRENCE_COUNTS
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      privacy_level: NO_ADDED_PRIVACY
      #####################################################################
      # fuchsia_unique_device_lifetime_event_counts
      #
      # Every day we count the number of unique devices for which each
      # of the following events occurred during the course of the day:
      # - boot
      # - activation (first time or after factory reset)
      #####################################################################
    - report_name: fuchsia_unique_device_lifetime_event_counts
      id: 2
      report_type: UNIQUE_DEVICE_COUNTS
      system_profile_selection: SELECT_LAST
      local_aggregation_procedure: AT_LEAST_ONCE
      local_aggregation_period: WINDOW_1_DAY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"


#####################################################################
# fuchsia_uptime
#
# Once per hour, we check the time since the system metrics daemon
# started, and send the uptime in hours (rounded down to the nearest
# hour from the true uptime).
#####################################################################
- id: 6
  metric_name: "fuchsia_uptime"
  metric_type: ELAPSED_TIME
  replacement_metric_id: 106
  metric_dimensions: &fu_dimensions
    - dimension: uptime_range
      event_codes:
        0: LessThanTwoWeeks
        1: TwoWeeksOrMore
  reports:
      #####################################################################
      # fuchsia_uptime_hourly_bucket_counts
      #
      # Each day, we report the total number of pings we received
      # for each 1-hour uptime bucket, up to a cap of 2 weeks. These
      # numbers will be used to compute statistics of the uptime per
      # boot session, under the assumption that most devices will reboot
      # for updates at least once every 2 weeks.
      #####################################################################
    - report_name: fuchsia_uptime_hourly_bucket_counts
      id: 3731123077 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &fuhbc_buckets
        linear:
          floor: 0
          num_buckets: 336
          step_size: 1
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      #####################################################################
      # fuchsia_uptime_daily_bucket_counts
      #
      # Each day, we report the total number of pings we received
      # for each 24-hour uptime bucket, up to a cap of 2 weeks. These numbers
      # will be used to visualize the uptime per boot session, under the
      # assumption that most devices will reboot for updates at least once
      # every 2 weeks.
      #####################################################################
    - report_name: fuchsia_uptime_daily_bucket_counts
      id: 3715674597 # legacy long report_id
      report_type: INT_RANGE_HISTOGRAM
      int_buckets: &fudbc_buckets
        linear:
          floor: 0
          num_buckets: 14
          step_size: 24
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      #####################################################################
      # fuchsia_uptime_per_device_max
      #
      # Each day, we report statistics of the maximum uptime reached by
      # devices on that day. (The uptime session may have started on a
      # previous day.) One piece of information provided by this report is
      # the number of unique devices which have been up for 2 weeks or
      # more on a given day.
      #####################################################################
    - report_name: fuchsia_uptime_per_device_max
      id: 3666699243 # legacy long report_id
      report_type: PER_DEVICE_NUMERIC_STATS
      aggregation_type: MAX
      window_size:
        - 1
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 106
  metric_name: fuchsia_uptime_migrated
  metric_type: INTEGER
  metric_units: MICROSECONDS
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *fu_dimensions
  reports:
      #####################################################################
      # fuchsia_uptime_hourly_bucket_counts
      #
      # Each day, we report the total number of pings we received
      # for each 1-hour uptime bucket, up to a cap of 2 weeks. These
      # numbers will be used to compute statistics of the uptime per
      # boot session, under the assumption that most devices will reboot
      # for updates at least once every 2 weeks.
      #####################################################################
    - report_name: fuchsia_uptime_hourly_bucket_counts
      id: 1
      report_type: HOURLY_VALUE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *fuhbc_buckets
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      privacy_level: NO_ADDED_PRIVACY
      local_aggregation_procedure: MAX_PROCEDURE
      #####################################################################
      # fuchsia_uptime_daily_bucket_counts
      #
      # Each day, we report the total number of pings we received
      # for each 24-hour uptime bucket, up to a cap of 2 weeks. These numbers
      # will be used to visualize the uptime per boot session, under the
      # assumption that most devices will reboot for updates at least once
      # every 2 weeks.
      #####################################################################
    - report_name: fuchsia_uptime_daily_bucket_counts
      id: 2
      report_type: HOURLY_VALUE_HISTOGRAMS
      system_profile_selection: SELECT_LAST
      int_buckets: *fudbc_buckets
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      privacy_level: NO_ADDED_PRIVACY
      local_aggregation_procedure: MAX_PROCEDURE
      #####################################################################
      # fuchsia_uptime_per_device_max
      #
      # Each day, we report statistics of the maximum uptime reached by
      # devices on that day. (The uptime session may have started on a
      # previous day.) One piece of information provided by this report is
      # the number of unique devices which have been up for 2 weeks or
      # more on a given day.
      #####################################################################
    - report_name: fuchsia_uptime_per_device_max
      id: 3
      report_type: UNIQUE_DEVICE_NUMERIC_STATS
      local_aggregation_procedure: MAX_PROCEDURE
      local_aggregation_period: WINDOW_1_DAY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, CHANNEL]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"

#####################################################################
# fuchsia CPU% * 100 averaged over all cores taken per sec
#
# For every second, a syscall is made to fetch the CPU idle time for
# each CPU core. With that,  we calculate the CPU% which is
# (busy time / 1 sec * 100) for each core. Assuming all cores are
# the same, we take the average CPU% over all cores.
# Note that Cobalt only take integer input, so we further multiply the
# average CPU% by 100 to get 2 decimal places.
# We aggregate 10 minutes of data before flushing them into Cobalt in
# one FIDL call.
# Estimated number of events per day is 3 * (24 * 60)/10 = 432.
#####################################################################
- id: 8
  metric_name: cpu_percentage
  metric_type: INT_HISTOGRAM
  replacement_metric_id: 108
  metric_dimensions: &cp_dimensions
    - dimension: device_state
      event_codes:
        0: Unknown
        1: Idle
        2: Active
  int_buckets: &cp_buckets
    linear:
      floor: 0
      num_buckets: 1000  # 0.00% - 100.00%.
      step_size: 10      # 0.10%
  reports:
      #####################################################################
      # fuchsia_cpu_usage
      #####################################################################
    - report_name: cpu_percentage_histogram
      id: 1
      report_type: INT_RANGE_HISTOGRAM
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, OS, CHANNEL]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 108
  metric_name: cpu_percentage_migrated
  metric_type: INTEGER_HISTOGRAM
  metric_semantics: [CPU]
  metric_dimensions: *cp_dimensions
  metric_units_other: "percentage"
  int_buckets: *cp_buckets
  reports:
      #####################################################################
      # fuchsia_cpu_usage
      #####################################################################
    - report_name: cpu_percentage_histogram
      id: 1
      report_type: FLEETWIDE_HISTOGRAMS
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, OS, CHANNEL]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"

################################################################################
# Active Minutes
#
# Every 15 minutes we log the number of minutes that the device was "active"
# during the previous 15 minutes period.
################################################################################
- id: 9
  metric_name: active_minutes
  metric_type: EVENT_COUNT
  replacement_metric_id: 109
  reports:
    - report_name: active_minutes_stats
      id: 1
      report_type: NUMERIC_AGGREGATION
      system_profile_field: [PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 109
  metric_name: active_minutes_migrated
  metric_type: INTEGER
  metric_semantics: [CPU, USAGE_COUNTING]
  metric_units: MINUTES
  reports:
    - report_name: active_minutes_means
      id: 1
      report_type: FLEETWIDE_MEANS
      system_profile_field: [PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"


################################################################################
# Error log count
#
# Every 15 minutes we log the number of error logs that were recorded during the
# last 15 minutes across all components.
################################################################################
- id: 10
  metric_name: error_log_count
  metric_type: EVENT_COUNT
  replacement_metric_id: 110
  reports:
    - report_name: error_log_stats
      id: 1
      report_type: NUMERIC_AGGREGATION
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
    - report_name: per_device_error_log_stats
      id: 2
      report_type: PER_DEVICE_NUMERIC_STATS
      aggregation_type: SUM
      window_size:
      - 1
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 110
  metric_name: error_log_count_migrated
  metric_type: INTEGER
  metric_semantics: [USAGE_COUNTING]
  metric_units_other: "errors"
  reports:
    - report_name: error_log_stats
      id: 1
      report_type: FLEETWIDE_MEANS
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
      privacy_level: NO_ADDED_PRIVACY
    - report_name: per_device_error_log_stats
      id: 2
      report_type: UNIQUE_DEVICE_NUMERIC_STATS
      local_aggregation_period: WINDOW_1_DAY
      local_aggregation_procedure: SUM_PROCEDURE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"

################################################################################
# Per-component error log count
#
# Similar to error_log_count, but reported separately for each component in an
# approve list. Metric is calculated and reported every 15 minutes.
################################################################################
- id: 11
  metric_name: per_component_error_log_count
  metric_type: EVENT_COUNT
  replacement_metric_id: 111
  metric_dimensions: &pcelc_dimensions
    - dimension: component
      event_codes:
        0: RootPresenter
        1: PkgResolver
        2: Appmgr
        3: Sysmgr
        4: CastAgent
        5: Cobalt
        6: Mdns
        7: A11yManager
        8: CastRunner
        9: Dhcpd
        10: Scenic
        11: SessionMgr
        12: AudioCore
        13: Hwinfo
        14: Netcfg
        15: DriverManager
        16: SystemUpdateChecker
        17: BrightnessManager
        18: ContextProvider
        19: Klog
        20: Wlancfg
        21: Weavestack
        22: Archivist
        1000: Other
      max_event_code: 1000
  reports:
    - report_name: per_component_error_log_stats
      id: 1
      report_type: NUMERIC_AGGREGATION
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
    - report_name: per_component_per_device_error_log_stats
      id: 2
      report_type: PER_DEVICE_NUMERIC_STATS
      aggregation_type: SUM
      window_size:
      - 1
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 111
  metric_name: per_component_error_log_count_migrated
  metric_type: INTEGER
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *pcelc_dimensions
  metric_units_other: "errors"
  reports:
    - report_name: per_component_error_log_stats
      id: 1
      report_type: FLEETWIDE_MEANS
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
      privacy_level: NO_ADDED_PRIVACY
    - report_name: per_component_per_device_error_log_stats
      id: 2
      report_type: UNIQUE_DEVICE_NUMERIC_STATS
      local_aggregation_procedure: SUM_PROCEDURE
      local_aggregation_period: WINDOW_1_DAY
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"

################################################################################
# Kernel log count
#
# Every 15 minutes we log the number of kernel logs that were recorded during
# that timeframe.
################################################################################
- id: 12
  metric_name: kernel_log_count
  metric_type: EVENT_COUNT
  replacement_metric_id: 112
  reports:
    - report_name: kernel_log_stats
      id: 1
      report_type: NUMERIC_AGGREGATION
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 112
  metric_name: kernel_log_count_migrated
  metric_type: OCCURRENCE
  metric_semantics: [USAGE_COUNTING]
  reports:
    - report_name: kernel_log_stats
      id: 1
      report_type: HOURLY_VALUE_NUMERIC_STATS
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
      privacy_level: NO_ADDED_PRIVACY
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"

################################################################################
# Granular error log count
#
# Every 15 minutes we report the file path and (line number - 1) mod 1023 for
# all error logs that were recorded in that timeframe.
################################################################################
- id: 13
  metric_name: granular_error_log_count
  metric_type: EVENT_COUNT
  replacement_metric_id: 113
  metric_dimensions: &gelc_dimensions
    - dimension: line_no
      max_event_code: 1022
  reports:
    - report_name: granular_error_log_stats
      id: 1
      report_type: EVENT_COMPONENT_OCCURRENCE_COUNT
      candidate_file: fuchsia/fuchsia_system_metrics/error_log_file_paths.txt
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
  meta_data:
    max_release_stage: GA
    expiration_date: "2022/01/07"

- id: 113
  metric_name: granular_error_log_count_migrated
  metric_type: STRING
  metric_semantics: [USAGE_COUNTING]
  metric_dimensions: *gelc_dimensions
  string_candidate_file: fuchsia/fuchsia_system_metrics/error_log_file_paths.txt
  reports:
    - report_name: granular_error_log_stats
      id: 1
      report_type: STRING_COUNTS
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, CHANNEL, SYSTEM_VERSION]
      privacy_level: NO_ADDED_PRIVACY
    # STRING_COUNT reports are uploaded hourly
    # This report is estimated to receive 100 errors/15 minutes (~400/hour)
      string_buffer_max: 500 # 400/hour + 100 buffer
  meta_data:
    max_release_stage: GA
    expiration_date: "2023/05/04"

# Deleted metric IDs that must not be reused.
deleted_metric_ids: [3,4,5,7]
