# Copyright 2020 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 EventLogger tests.
#  It is compiled into test_registry.h.
##########################################################################

metric_definitions:
  - id: 1
    metric_name: "SettingsChanged"
    metric_type: OCCURRENCE
    metric_dimensions:
      - event_codes:
          0: SettingA
          1: SettingB
          2: SettingC
    reports:
      - report_name: "SettingsChanged_UniqueDeviceHistograms"
        id: 1
        report_type: UNIQUE_DEVICE_HISTOGRAMS
      - report_name: "SettingsChanged_UniqueDeviceHistograms_Two"
        id: 2
        report_type: UNIQUE_DEVICE_HISTOGRAMS
    meta_data:
      expiration_date: "2021/01/01"
      max_release_stage: GA

  - id: 2
    metric_name: "StreamingTime"
    metric_type: INTEGER
    metric_semantics: [LATENCY]
    metric_units: SECONDS
    metric_dimensions:
      - event_codes:
          0: StreamTypeA
          1: StreamTypeB
          2: StreamTypeC
    reports:
      - report_name: "StreamingTime_Aggregation"
        id: 1
        report_type: FLEETWIDE_MEANS
        system_profile_selection: SELECT_LAST
      - report_name: "StreamingTime_Aggregation_Two"
        id: 2
        report_type: FLEETWIDE_MEANS
        system_profile_selection: SELECT_LAST
    meta_data:
      expiration_date: "2021/01/01"
      max_release_stage: GA

  - id: 3
    metric_name: "FileSystemWriteTimes"
    metric_type: INTEGER_HISTOGRAM
    metric_semantics: [USAGE_COUNTING]
    metric_dimensions:
      - event_codes:
          47: CODE
    int_buckets:
      linear:
        floor: 0
        num_buckets: 10
        step_size: 1
    reports:
      - report_name: "FileSystemWriteTimes_Histogram"
        id: 1
        report_type: FLEETWIDE_HISTOGRAMS
        system_profile_selection: SELECT_LAST
        int_buckets:
          linear:
            floor: 0
            num_buckets: 120
            step_size: 1000
      - report_name: "FileSystemWriteTimes_Histogram_Two"
        id: 2
        report_type: FLEETWIDE_HISTOGRAMS
        system_profile_selection: SELECT_LAST
        int_buckets:
          linear:
            floor: 0
            num_buckets: 120
            step_size: 1000
    meta_data:
      expiration_date: "2021/01/01"
      max_release_stage: GA

  - id: 4
    metric_name: "Component"
    metric_type: STRING
    metric_semantics: [USAGE_COUNTING]
    # No metric dimensions defined.
    string_candidate_file: application_names.txt
    reports:
      - report_name: "Component_Histogram"
        id: 1
        report_type: STRING_COUNTS
        string_buffer_max: 30
        system_profile_selection: SELECT_LAST
      - report_name: "Component_Histogram_Two"
        id: 2
        report_type: STRING_COUNTS
        string_buffer_max: 30
        system_profile_selection: SELECT_LAST
    meta_data:
      expiration_date: "2021/01/01"
      max_release_stage: GA

  - id: 5
    metric_name: "occurrence_other_tz"
    metric_type: OCCURRENCE
    metric_semantics: [NETWORK_COMMUNICATION]
    time_zone_policy: OTHER_TIME_ZONE
    other_time_zone: "Europe/London"
    metric_dimensions:
      - dimension: FirstDimension
        event_codes:
          42: Code42
    reports:
      - id: 1
        report_name: "fleetwide_occurrence_counts"
        report_type: FLEETWIDE_OCCURRENCE_COUNTS
        privacy_level: NO_ADDED_PRIVACY
        privacy_mechanism: DE_IDENTIFICATION
        event_vector_buffer_max: 100
        system_profile_field: [OS, SYSTEM_VERSION]
        system_profile_selection: SELECT_LAST
    meta_data:
      expiration_date: "2021/01/01"
      max_release_stage: GA
