Skip to content

Event Reporter with interface for multiple clients

e9ef353
Select commit
Loading
Failed to load commit list.
Open

reverse_tunnels: Add EventReporter for reverse tunnel connection reporting #44342

Event Reporter with interface for multiple clients
e9ef353
Select commit
Loading
Failed to load commit list.
CI (Envoy) / Mobile/iOS skipped Apr 9, 2026 in 0s

Check was skipped

This check was not triggered in this CI run

Details

Request (pr/44342/main@e9ef353)

aakugan @aakugan e9ef353 #44342 merge main@e19292d

reverse_tunnels: Add EventReporter for reverse tunnel connection reporting

BUILDS ON #44327, depends on the protos introduced there.
Incremental DIFFS

Commit Message

Add EventReporter for reverse tunnel connection reporting

Additional Description:

Adds the EventReporter contrib extension, which aggregates reverse tunnel connection/disconnection events and fans them out to pluggable clients.

Key components:

  • ReverseTunnelReporterWithState / ReverseTunnelReporterClient: interfaces allowing multiple transport clients to share connection state from a single reporter. Clients receive incremental diffs and can request a full state snapshot so they dont have to be "stateful" other than the protocol they manage.
  • EventReporter: A basic implementation which does refcounting of connections by the name and stores in a map for interfacing with the clients.

Risk Level: Low, opt in extension.

Testing

Unit tests.

Environment

Request variables

Key Value
ref 489ed2b
sha e9ef353
pr 44342
base-sha e19292d
actor aakugan @aakugan
message reverse_tunnels: Add EventReporter for reverse tunnel connection reporting...
started 1775719158.906214
target-branch main
trusted false
Build image

Container image/s (as used in this CI run)

Key Value
default docker.io/envoyproxy/envoy-build:86873047235e9b8232df989a5999b9bebf9db69c
mobile docker.io/envoyproxy/envoy-build:mobile-86873047235e9b8232df989a5999b9bebf9db69c
Version

Envoy version (as used in this CI run)

Key Value
major 1
minor 38
patch 0
dev true