| # 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. |
| |
| ################################################################################ |
| # Cobalt Project: camera |
| ################################################################################ |
| |
| metric_definitions: |
| |
| ################################################################################ |
| # Next Metric ID: 2 |
| ################################################################################ |
| |
| ################################################################################ |
| # camera_frame_drop_counts_per_stream |
| # |
| # Total number of dropped frames per stream type. Typically, the system decides |
| # to skip a delivered frame in following cases: |
| # 1. FrameAvailableInfo contains an erroneous status, |
| # 2. Delivered frame has a duplicated identifier, |
| # 3. Delivered frame does not have a timestamp, |
| # 4. Or, too many frames are currently in use. |
| ################################################################################ |
| - id: 1 |
| metric_name: camera_frame_drop_counts_per_stream |
| metric_type: OCCURRENCE |
| metric_semantics: [METRIC_SEMANTICS_UNSPECIFIED] |
| |
| metric_dimensions: |
| - dimension: stream_type |
| event_codes: &stream_types |
| 1: Stream 0 |
| 2: Stream 1 |
| 3: Stream 2 |
| 4: Stream 3 |
| 5: Stream 4 |
| 6: Stream 5 |
| 7: Stream 6 |
| 8: Stream 7 |
| 9: Stream 8 |
| # Set the maximal code value as 99 to accommodate any value larger than 9. |
| max_event_code: 99 |
| |
| - dimension: error_code |
| event_codes: &error_codes |
| 1: General |
| 2: InvalidFrame # Corresponding to FrameStatus::ERROR_FRAME |
| 3: NoMemory # Corresponding to FrameStatus::ERROR_BUFFER_FULL |
| 4: FrameIdInUse |
| 5: InvalidTimestamp |
| 6: TooManyFramesInFlight |
| 7: Muted |
| 8: NoClient |
| |
| reports: |
| - report_name: camera_stream_frame_drop_stat |
| id: 1 |
| report_type: FLEETWIDE_OCCURRENCE_COUNTS |
| privacy_level: NO_ADDED_PRIVACY |
| system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM] |
| |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2022/05/18" |
| |
| - id: 2 |
| metric_name: camera_open_latency_per_stream |
| metric_type: INTEGER |
| metric_units: MICROSECONDS |
| metric_semantics: [LATENCY] |
| |
| metric_dimensions: |
| - dimension: stream_type |
| event_codes: *stream_types |
| |
| reports: |
| - report_name: camera_stream_open_latency_histograms |
| id: 1 |
| report_type: FLEETWIDE_HISTOGRAMS |
| privacy_level: NO_ADDED_PRIVACY |
| int_buckets: &latency_histogram_buckets |
| linear: |
| floor: 0 |
| num_buckets: 50 # Up to 5 seconds |
| step_size: 100000 # 100ms |
| system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM] |
| |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2022/05/18" |
| |
| - id: 3 |
| metric_name: camera_duration_per_stream |
| metric_type: INTEGER |
| metric_units: MICROSECONDS |
| metric_semantics: [METRIC_SEMANTICS_UNSPECIFIED] |
| |
| metric_dimensions: |
| - dimension: stream_type |
| event_codes: *stream_types |
| |
| reports: |
| - report_name: camera_stream_duration_histograms |
| id: 1 |
| report_type: FLEETWIDE_HISTOGRAMS |
| privacy_level: NO_ADDED_PRIVACY |
| int_buckets: |
| linear: |
| floor: 0 |
| num_buckets: 20 # Up to 1 hour |
| step_size: 300000000 # 5 minutes |
| system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM] |
| |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2022/05/18" |
| |
| - id: 4 |
| metric_name: camera_stream_close_error |
| metric_type: OCCURRENCE |
| metric_semantics: [METRIC_SEMANTICS_UNSPECIFIED] |
| |
| metric_dimensions: |
| - dimension: stream_type |
| event_codes: *stream_types |
| |
| - dimension: error_code |
| event_codes: |
| # Internal failures |
| 1: INTERNAL |
| 2: NOT_SUPPORTED |
| 3: NO_RESOURCES |
| 4: NO_MEMORY |
| # Parameter errors |
| 10: INVALID_ARGS |
| 11: BAD_HANDLE |
| 14: OUT_OF_RANGE |
| 15: BUFFER_TOO_SMALL |
| # Precondition or state errors |
| 20: BAD_STATE |
| 21: TIMED_OUT |
| 24: PEER_CLOSED |
| 25: NOT_FOUND |
| 26: ALREADY_EXISTS |
| 28: UNAVAILABLE |
| # Permission check errors |
| 30: ACCESS_DENIED |
| # I/O errors |
| 40: IO |
| # Flow control |
| 60: STOP |
| |
| reports: |
| - report_name: camera_stream_close_error_stat |
| id: 1 |
| report_type: FLEETWIDE_OCCURRENCE_COUNTS |
| privacy_level: NO_ADDED_PRIVACY |
| system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM] |
| |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2022/05/18" |
| |
| - id: 5 |
| metric_name: camera_stream_memory_bandwidth_in_kbytes |
| metric_type: INTEGER |
| metric_units: KILOBYTES |
| metric_semantics: [MEMORY_USAGE] |
| |
| metric_dimensions: |
| - dimension: stream_type |
| event_codes: *stream_types |
| |
| - dimension: channels |
| event_codes: |
| 1: CPU |
| 2: ISP |
| 3: GPU |
| 4: GE2D |
| |
| reports: |
| - report_name: camera_stream_average_memory_bandwidth |
| id: 1 |
| report_type: FLEETWIDE_MEANS |
| privacy_level: NO_ADDED_PRIVACY |
| system_profile_field: [OS, ARCH, BOARD_NAME, PRODUCT_NAME, SYSTEM_VERSION, CHANNEL, REALM] |
| |
| meta_data: |
| max_release_stage: GA |
| expiration_date: "2022/05/18" |