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

#####################################################################
# reboot
#
# Count of times the system rebooted.
# Currently we only track crashes and OOMs (Out Of Memory).
# There is a plan to add additional types.
# We send the event upon reboot.
#####################################################################
- id: 1
  metric_name: reboot
  metric_type: EVENT_OCCURRED
  metric_dimensions:
    - dimension: reason
      event_codes:
        0: KernelPanic
        1: OOM
      max_event_code: 1
  reports:
      #####################################################################
      # reboot_event_counts
      #
      # Count of each of the types of reboot occurances.
      #####################################################################
    - report_name: reboot_event_counts
      id: 3671940974 # legacy long report_id
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
  meta_data:
    max_release_stage: GA
    expiration_date: "2020/08/27"

#####################################################################
# crash
#
# Count of times the crash reporter handles crash reports in various
# states.
# We send the event when performing actions on a crash report.
#####################################################################
- id: 2
  metric_name: crash
  metric_type: EVENT_OCCURRED
  metric_dimensions:
    - dimension: state
      event_codes:
        0: Unknown
        1: Filed
        2: Uploaded
        3: Archived
        4: GarbageCollected
        5: Dropped
      max_event_code: 32
  reports:
      #####################################################################
      # crash_state_event_counts
      #
      # Count of each of the crash states.
      #####################################################################
    - report_name: crash_state_event_counts
      id: 469278908 # legacy long report_id
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
  meta_data:
    max_release_stage: GA
    expiration_date: "2020/08/27"

#####################################################################
# crash_upload_attempts
#
# We log the current upload attempt number when:
# * we attempt to upload a crash report
# * we successfully upload a crash report
# * we archive a crash report we have attempted to upload at least once
# * we garbage collect a crash report that we attempted to upload at
#   least once
#
# Every time, we log the attempt number.
#####################################################################
- id: 3
  metric_name: crash_upload_attempts
  metric_type: EVENT_COUNT
  metric_dimensions:
    - dimension: state
      event_codes:
        0: Unknown
        1: UploadAttempt
        2: Uploaded
        3: Archived
        4: GarbageCollected
      max_event_code: 16
  reports:
      #####################################################################
      # histogram
      #
      # Determine the distribution of upload attempts.
      #####################################################################
    - report_name: histogram
      id: 1
      report_type: INT_RANGE_HISTOGRAM
      int_buckets:
        linear:
          floor: 1
          num_buckets: 64
          step_size: 1
      local_privacy_noise_level: NONE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
  meta_data:
    max_release_stage: GA
    expiration_date: 2020/08/27

#####################################################################
# crashpad_errors
#
# Record the number of times each Crashpad database function fails.
# We send the event each time a Crashpad database function returns
# an error.
#####################################################################
- id: 4
  metric_name: crashpad_errors
  metric_type: EVENT_OCCURRED
  metric_dimensions:
    - dimension: function
      event_codes:
        0: Unknown
        1: InitializeDatabase
        2: PrepareNewCrashReport
        3: FinishedWritingCrashReport
        4: GetReportForUploading
        5: RecordUploadComplete
        6: SkipReportUpload
        7: LookUpCrashReport
      max_event_code: 32
  reports:
      #####################################################################
      # counts
      #
      # Count the number of times each function fails.
      #####################################################################
    - report_name: counts
      id: 1
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
      system_profile_field: [BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL]
  meta_data:
    max_release_stage: GA
    expiration_date: "2020/08/27"
