pub trait ProtocolMetrics {
const BENCHMARK_DURATION: &'static str;
const TOTAL_TRANSACTIONS: &'static str;
const LATENCY_BUCKETS: &'static str;
const LATENCY_SUM: &'static str;
const LATENCY_SQUARED_SUM: &'static str;
// Required methods
fn nodes_metrics_path<I>(&self, instances: I) -> Vec<(Instance, String)>
where I: IntoIterator<Item = Instance>;
fn clients_metrics_path<I>(&self, instances: I) -> Vec<(Instance, String)>
where I: IntoIterator<Item = Instance>;
// Provided methods
fn nodes_metrics_command<I>(&self, instances: I) -> Vec<(Instance, String)>
where I: IntoIterator<Item = Instance> { ... }
fn clients_metrics_command<I>(
&self,
instances: I,
) -> Vec<(Instance, String)>
where I: IntoIterator<Item = Instance> { ... }
}
Expand description
The names of the minimum metrics exposed by the load generators that are required to compute performance.
Required Associated Constants§
Sourceconst BENCHMARK_DURATION: &'static str
const BENCHMARK_DURATION: &'static str
The name of the metric reporting the total duration of the benchmark (in seconds).
Sourceconst TOTAL_TRANSACTIONS: &'static str
const TOTAL_TRANSACTIONS: &'static str
The name of the metric reporting the total number of finalized transactions
Sourceconst LATENCY_BUCKETS: &'static str
const LATENCY_BUCKETS: &'static str
The name of the metric reporting the latency buckets.
Sourceconst LATENCY_SUM: &'static str
const LATENCY_SUM: &'static str
The name of the metric reporting the sum of the end-to-end latency of all finalized transactions.
Sourceconst LATENCY_SQUARED_SUM: &'static str
const LATENCY_SQUARED_SUM: &'static str
The name of the metric reporting the square of the sum of the end-to-end latency of all finalized transactions.
Required Methods§
Sourcefn nodes_metrics_path<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
fn nodes_metrics_path<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
The network path where the nodes expose prometheus metrics.
Sourcefn clients_metrics_path<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
fn clients_metrics_path<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
The network path where the clients expose prometheus metrics.
Provided Methods§
Sourcefn nodes_metrics_command<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
fn nodes_metrics_command<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
The command to retrieve the metrics from the nodes.
Sourcefn clients_metrics_command<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
fn clients_metrics_command<I>(&self, instances: I) -> Vec<(Instance, String)>where
I: IntoIterator<Item = Instance>,
The command to retrieve the metrics from the clients.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.