# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# Adding a new metric? We have docs for that!
# https://firefox-source-docs.mozilla.org/toolkit/components/glean/user/new_definitions_file.html

---
$schema: moz://mozilla.org/schemas/glean/metrics/2-0-0
$tags:
  - 'Core :: Networking: HTTP'


netwerk:
  early_hints:
    type: labeled_counter
    labels:
      - stylesheet
      - fonts
      - scripts
      - fetch
      - image
      - other
    description: >
      Counts the different type of resources that are sent for early hints.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1772124
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1772124
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1797695
    notification_emails:
      - necko@mozilla.com
      - vgosu@mozilla.com
    expires: never
  eh_link_type:
    type: labeled_counter
    labels:
      - dns-prefetch
      - icon
      - modulepreload
      - preconnect
      - prefetch
      - preload
      - prerender
      - stylesheet
      - other
    description: >
      Counts different type of link headers that are sent in early hint
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1797936
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1797936
    notification_emails:
      - necko@mozilla.com
      - manuel@mozilla.com
    expires: never

network:
  data_size_per_type:
    type: labeled_counter
    labels:
      - text_html
      - text_css
      - text_json
      - text_plain
      - text_javascript
      - text_other
      - audio
      - video
      - multipart
      - icon
      - image
      - ocsp
      - xpinstall
      - wasm
      - pdf
      - octet_stream
      - proxy
      - compressed
      - x509
      - application_other
    description: >
      Number of KB we transferred keyed by "contentType"
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1808695
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1808695
    notification_emails:
      - necko@mozilla.com
      - rtestard@mozilla.com
    expires: 130
    telemetry_mirror: NETWORKING_DATA_TRANSFERRED_PER_CONTENT_TYPE
    no_lint:
      - COMMON_PREFIX

  data_size_pb_per_type:
    type: labeled_counter
    labels:
      - text_html
      - text_css
      - text_json
      - text_plain
      - text_javascript
      - text_other
      - audio
      - video
      - multipart
      - icon
      - image
      - ocsp
      - xpinstall
      - wasm
      - pdf
      - octet_stream
      - proxy
      - compressed
      - x509
      - application_other
    description: >
      Number of KB we transferred keyed by "contentType"
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1808695
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1808695
    notification_emails:
      - necko@mozilla.com
      - rtestard@mozilla.com
    expires: 130
    telemetry_mirror: NETWORKING_DATA_TRANSFERRED_PB_PER_CONTENT_TYPE
    no_lint:
      - COMMON_PREFIX

  cors_authorization_header:
    type: labeled_counter
    labels:
      - allowed
      - disallowed
      - covered_by_wildcard
    description: >
      Count how many times we see `Authorization` header in
      `Access-Control-Request-Headers` header and the possible outcomes.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1687364
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1687364
    notification_emails:
      - necko@mozilla.com
      - kershaw@mozilla.com
    expires: 130

  cache_hit_time:
    type: timing_distribution
    time_unit: millisecond
    telemetry_mirror: NETWORK_CACHE_V2_HIT_TIME_MS
    description: >
      Time to open existing cache entry file.
      (Migrated from the geckoview metric of the same name).
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1489524
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077#c10
    notification_emails:
      - necko@mozilla.com
    expires: never

  font_download_end:
    type: timing_distribution
    time_unit: millisecond
    telemetry_mirror: WEBFONT_DOWNLOAD_TIME_AFTER_START
    description: >
      Time after navigationStart that all webfont downloads are completed.
      (Migrated from the geckoview metric of the same name).
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077#c10
    notification_emails:
      - perf-telemetry-alerts@mozilla.com
      - necko@mozilla.com
      - bdekoz@mozilla.com
    expires: never

  first_from_cache:
    type: timing_distribution
    time_unit: millisecond
    description: >
      In the HTTP page channel, time from connection open to cache read start.
      Corresponds to Legacy histogram HTTP_PAGE_OPEN_TO_FIRST_FROM_CACHE_V2 in
      Desktop.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077#c10
    notification_emails:
      - necko@mozilla.com
    expires: never

  tcp_connection:
    type: timing_distribution
    time_unit: millisecond
    description: >
      In the HTTP page channel, time from the TCP SYN packet is received to
      the connection is established and ready for HTTP.
      Corresponds to Legacy histogram HTTP_PAGE_TCP_CONNECTION_2 in Desktop
      (Migrated from the geckoview metric of the same name).
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=772589
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077#c10
    notification_emails:
      - necko@mozilla.com
      - vgosu@mozilla.com
    expires: never

  dns_start:
    type: timing_distribution
    time_unit: millisecond
    description: >
      In the HTTP page channel, time from connection open to the DNS request
      being issued.
      Corresponds to Legacy histogram HTTP_PAGE_DNS_ISSUE_TIME in Desktop.
      (Migrated from the geckoview metric of the same name).
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077#c10
    notification_emails:
      - necko@mozilla.com
      - vgosu@mozilla.com
    expires: never

  dns_end:
    type: timing_distribution
    time_unit: millisecond
    description: >
      In the HTTP page channel, time from the DNS request being issued to
      the response.
      Corresponds to Legacy histogram HTTP_PAGE_DNS_LOOKUP_TIME in Desktop.
      (Migrated from the geckoview metric of the same name).
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077#c10
    notification_emails:
      - necko@mozilla.com
      - vgosu@mozilla.com
    expires: never

  tls_handshake:
    type: timing_distribution
    time_unit: millisecond
    description: >
      In the HTTP page channel, time from after the TCP SYN packet is
      received to the secure connection is established and ready for HTTP.
      Corresponds to Legacy histogram HTTP_PAGE_TLS_HANDSHAKE in Desktop.
      (Migrated from the geckoview metric of the same name).
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=772589
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1877839
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1580077#c10
    notification_emails:
      - necko@mozilla.com
      - vgosu@mozilla.com
    expires: never
