collector output doesn't handle multiple transports correctly
If I correctly understand the code, the bridgestrap-stats
only shows there results of the latest test for each bridge.
This is incorrect if a bridge has multiple transports (or one transport on multiple IPs), and e.g. only one of them is working. I would expect that descriptor to output true
only if all known transports for a bridge are reachable.
It would be even better to output information about each transport separately, like in bridge-pool-assignments
. Maybe in a format like FINGERPRINT true transport=obfs4 ip=4 date=2025-09-25T03:27:52Z
? That probably wouldn't break existing tooling more than it's already broken (assuming extra fields and multiple lines per fingerprint are ignored - then it would just pick essentially a random test result, just as it does now).
My thinking here is that I would then show this data in metrics, since that'd be much nicer than manually poking the status endpoint. I could just use bridge-pool-assignments
, but I don't like the extra indirection because of stuff like rdsys#285 (closed).
Might be related to #44?