Expand description
Shared DogStatsD load-driver engine.
A producer thread samples lines into a bounded channel; a consumer thread fans each line out to every socket and tallies per-socket sends. Drivers differ only in how many sockets they target and which anchors they fire, so both the single-socket and differential drivers run on this one engine.
NOTE: this driver intentionally blocks on backpressure from the SUT. Retry and backoff timers are meant to endure transient errors.
Re-exports§
pub use crate::payload::dogstatsd::Batch;
Structs§
- Stats
- What a driver run shipped, for anchoring assertions.
Functions§
- connect_
with_ retry - Wait for the remote process to bind
path, intentionally naive. ReturnsNoneif the socket is still unavailable after 30 seconds. - run
- Drive
countsampledDogStatsDdatagrams to every socket, packing each to at mostlimit_bytesand blocking through transient backpressure so every datagram reaches every socket. Bothcountandlimit_bytescome from a load generator’scrate::config::DriverConfig, so a datagram never truncates on receive. - sample
- Sample a line composition: half clean, a quarter feral, a quarter mixed.