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

##########################################################################
#  This file contains MetricDefinitions used in Logger tests.
#  It is compiled into unique_actives_noise_free_test_registry.h, which is
#  included in testing_constants.h.
#
#  When editing this file, also update testing_constants.h with any
#  changes to report IDs or to local aggregation parameters.
##########################################################################

metric_definitions:

- id: 1
  metric_name: "DeviceBoots"
  metric_type: EVENT_OCCURRED
  metric_dimensions:
    - max_event_code: 1
  reports:
    # Report ID: 131134909
    - report_name: "DeviceBoots_UniqueDevices"
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 1

- id: 2
  metric_name: "FeaturesActive"
  metric_type: EVENT_OCCURRED
  metric_dimensions:
    - max_event_code: 4
  reports:
    # Report ID: 635837989
    - report_name: "FeaturesActive_UniqueDevices"
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 1
        - 7
        - 30

- id: 3
  metric_name: "EventsOccurred"
  metric_type: EVENT_OCCURRED
  metric_dimensions:
    - max_event_code: 4
  reports:
    # Report ID: 1534862846
    - report_name: "EventsOccurred_GlobalCount"
      report_type: SIMPLE_OCCURRENCE_COUNT
      local_privacy_noise_level: NONE
    # Report ID: 1444372300
    - report_name: "EventsOccurred_UniqueDevices"
      report_type: UNIQUE_N_DAY_ACTIVES
      local_privacy_noise_level: NONE
      window_size:
        - 1
        - 7
