| # Copyright 2021 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: |
| |
| ################################################################################ |
| # Next Metric ID: 7 |
| ################################################################################ |
| |
| ##################################################################### |
| # Per-component CPU % each minute |
| # |
| # Once per minute, a syscall is made in appmgr (for v1 components) and |
| # component_manager (for v2 components) to fetch each component's CPU usage. |
| # This is multiplied by 100 and divided by number of cores to calculate |
| # a number 0-100. A ceiling function is used so that 0 means no CPU at all, |
| # 1 means (0..1]%, ... 100 means (99..100]%. |
| # |
| # The percentage number [0..100] increments the appropriate bucket of an |
| # Inspect occurence-count histogram for each component. |
| # |
| # Every 20 minutes, Sampler sends a delta of the component CPU % occurrence |
| # histograms to Cobalt for hourly summation and reporting. This data is |
| # currently being reported for most 1p components (after a privacy review). |
| # New components may be added in the future, after a privacy review. |
| # |
| # This metric does not distinguish between "big" and "little" cores. |
| ##################################################################### |
| - id: 1 |
| metric_name: per_component_cpu_percentage |
| metric_type: INTEGER_HISTOGRAM |
| metric_semantics: [CPU] |
| metric_dimensions: |
| - dimension: component |
| max_event_code: 100000 # Supports 100 config files, each with up to 1000 components |
| metric_units_other: "percentage" |
| int_buckets: |
| linear: |
| floor: 1 # 0 goes in the lower overflow bucket |
| num_buckets: 99 # 0% - 100% 100 goes in the upper overflow bucket |
| step_size: 1 # 1% |
| reports: |
| - id: 1 |
| report_name: fleetwide_histogram |
| report_type: FLEETWIDE_HISTOGRAMS |
| event_vector_buffer_max: 500 |
| privacy_level: NO_ADDED_PRIVACY |
| privacy_mechanism: DE_IDENTIFICATION |
| system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, OS, CHANNEL] |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2024/11/01" |
| |
| ##################################################################### |
| # Per-component crashes |
| # |
| # When a component crashes, the "exceptions" program records that the |
| # crash has happened. Each occurrence of a crash is reported. |
| # |
| # Every 20 minutes, Sampler sends a delta of the crash counts |
| # to Cobalt for components with non-zero crashes. This data will be |
| # reported only for components that opt into component_metrics collection. |
| ##################################################################### |
| - id: 2 |
| metric_name: per_component_crashes |
| metric_type: OCCURRENCE |
| metric_semantics: [USAGE_COUNTING] |
| metric_dimensions: |
| - dimension: component |
| max_event_code: 100000 # Supports 100 config files, each with up to 1000 components |
| reports: |
| - id: 1 |
| report_name: fleetwide_crashes |
| report_type: HOURLY_VALUE_NUMERIC_STATS |
| event_vector_buffer_max: 500 |
| privacy_level: NO_ADDED_PRIVACY |
| privacy_mechanism: DE_IDENTIFICATION |
| system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, OS, CHANNEL] |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2024/11/01" |
| |
| ##################################################################### |
| # Per-component started duration under escrow |
| # |
| # If a component voluntarily stops itself after sending an escrow request |
| # to component_manager, component_manager will compute the execution durations |
| # each time this component stops, and publish them as an exponential histogram. |
| # |
| # Every 20 minutes, Sampler sends a delta of this histogram to Cobalt |
| # for hourly summation and reporting. This data is currently being |
| # reported for most 1p components (after a privacy review). |
| # New components may be added in the future, after a privacy review. |
| ##################################################################### |
| - id: 5 |
| metric_name: per_component_escrow_started_durations |
| metric_type: INTEGER_HISTOGRAM |
| metric_semantics: [LATENCY] |
| metric_dimensions: |
| - dimension: component |
| max_event_code: 100000 # Supports 100 config files, each with up to 1000 components |
| metric_units: SECONDS |
| int_buckets: |
| exponential: |
| floor: 4 |
| num_buckets: 12 |
| initial_step: 3 |
| step_multiplier: 2 |
| reports: |
| - id: 1 |
| report_name: fleetwide_histogram |
| report_type: FLEETWIDE_HISTOGRAMS |
| event_vector_buffer_max: 500 |
| privacy_level: NO_ADDED_PRIVACY |
| privacy_mechanism: DE_IDENTIFICATION |
| system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, OS, CHANNEL] |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2024/11/01" |
| |
| ##################################################################### |
| # Per-component stopped duration under escrow |
| # |
| # If a component voluntarily stops itself after sending an escrow request |
| # to component_manager, component_manager will compute the durations that |
| # component remained stopped each time this component is started again, |
| # and publish them as a linear histogram. |
| # |
| # Every 20 minutes, Sampler sends a delta of this histogram to Cobalt |
| # for hourly summation and reporting. This data is currently being |
| # reported for most 1p components (after a privacy review). |
| # New components may be added in the future, after a privacy review. |
| ##################################################################### |
| - id: 6 |
| metric_name: per_component_escrow_stopped_durations |
| metric_type: INTEGER_HISTOGRAM |
| metric_semantics: [LATENCY] |
| metric_dimensions: |
| - dimension: component |
| max_event_code: 100000 # Supports 100 config files, each with up to 1000 components |
| metric_units: SECONDS |
| int_buckets: |
| linear: |
| floor: 10 |
| num_buckets: 24 |
| step_size: 10 |
| reports: |
| - id: 1 |
| report_name: fleetwide_histogram |
| report_type: FLEETWIDE_HISTOGRAMS |
| event_vector_buffer_max: 500 |
| privacy_level: NO_ADDED_PRIVACY |
| privacy_mechanism: DE_IDENTIFICATION |
| system_profile_field: [BOARD_NAME, PRODUCT_NAME, ARCH, SYSTEM_VERSION, OS, CHANNEL] |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2024/11/01" |
| |
| deleted_metric_ids: [3,4] |