Skip to content

Bug 2043832 - happy-eyeballs glean metrics for https rr#3

Draft
mxinden-bot wants to merge 1 commit into
mainfrom
happy-https-rr-metrics
Draft

Bug 2043832 - happy-eyeballs glean metrics for https rr#3
mxinden-bot wants to merge 1 commit into
mainfrom
happy-https-rr-metrics

Conversation

@mxinden-bot

Copy link
Copy Markdown
Owner

Summary

Extends the Happy Eyeballs glean instrumentation (bug 2026606) with two labeled counters so we have field visibility into how Firefox discovers HTTP/3 and what the HTTPS DNS records we receive contain.

Supersedes #2 (closed when its branch claude/jolly-ride-y9jF8 was renamed to happy-https-rr-metrics). All review feedback from #2 is already incorporated here.

Metrics added (netwerk/protocol/http/metrics.yaml)

  • happy_eyeballs_h3_discovery (labeled_counter) — per run, crosses whether Alt-Svc advertised h3 with whether the HTTPS record advertised h3 in its ALPN set: none / altsvc_only / https_rr_only / both. The altsvc_only bucket measures how often an origin supports h3 but only advertises it via Alt-Svc, forcing the first connection to spend an extra round trip discovering h3 that a published HTTPS record would have avoided.
  • happy_eyeballs_https_rr_features (labeled_counter) — which bootstrapping features the HTTPS records carried (h3_alpn, ech, ipv4hint, ipv6hint), unioned across all HTTPS records received for the connection, against a total denominator. ECH and the address hints can only be delivered ahead of the first connection via the DNS record.

Drops the now-redundant happy_eyeballs_https_record_available, whose available/unavailable split is derivable from the two new metrics.

Wiring (happy_eyeballs_glue/src/{lib,metrics}.rs)

The glue passes the Alt-Svc list and the received HTTPS records to metrics.rs, where all accounting (including the Alt-Svc h3 determination) lives. Counters are emitted in Metrics::drop.

Notes

  • Probes need a data-review before landing.
  • Pending a local ./mach build binaries + ./mach lint pass.

🤖 Generated with Claude Code


Generated by Claude Code

Adds happy_eyeballs_h3_discovery (was h3 advertised via Alt-Svc, an HTTPS record, both, or neither) and happy_eyeballs_https_rr_features (which features received HTTPS records carry: h3 ALPN, ECH, IP hints, against a total denominator), and drops the now redundant happy_eyeballs_https_record_available.
@mxinden-bot mxinden-bot force-pushed the happy-https-rr-metrics branch from 100deb2 to ca9a9d4 Compare May 31, 2026 14:36
mxinden-bot pushed a commit that referenced this pull request Jun 2, 2026
Upstream commit: https://webrtc.googlesource.com/src/+/978360941fb89b8459a72a2da0a91b1d05d0ca1a
    [M149] In SctpDataChannel use plain bool as safety flag.

    Original change's description:
    > In SctpDataChannel use plain bool as safety flag.
    >
    > SctpDataChannel can be destroyed on various threads and thus safety flag
    > couldn't be properly invalidated in the destructor. Instead of relying
    > on it when posting async send, rely on reference counting of the full
    > object
    >
    > Bug: chromium:504716948
    > Change-Id: I1246fecac26d0761be006b069658d072183546bf
    > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/469980
    > Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
    > Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
    > Cr-Commit-Position: refs/heads/main@{#47635}

    (cherry picked from commit 9b4ffb3281c02327968ed07389082fcb2dd77baa)

    Bug: chromium:514928086,chromium:504716948
    Change-Id: I1246fecac26d0761be006b069658d072183546bf
    Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/474801
    Auto-Submit: Chrome Cherry Picker <chrome-cherry-picker@chops-service-accounts.iam.gserviceaccount.com>
    Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
    Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
    Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
    Cr-Commit-Position: refs/branch-heads/7827@{#3}
    Cr-Branched-From: d606bc991592fbf4dcbe85e9d05db5e501a5ad42-refs/heads/main@{#47595}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants