(logger slog.Logger)
| 24 | const LatencyMessageLength = 36 |
| 25 | |
| 26 | func NewLatencyMeasurer(logger slog.Logger) *LatencyMeasurer { |
| 27 | return &LatencyMeasurer{ |
| 28 | channel: uuid.New(), |
| 29 | logger: logger, |
| 30 | } |
| 31 | } |
| 32 | |
| 33 | // Measure takes a given Pubsub implementation, publishes a message & immediately receives it, and returns the observed latency. |
| 34 | func (lm *LatencyMeasurer) Measure(ctx context.Context, p Pubsub) (send, recv time.Duration, err error) { |