sui_aws_orchestrator::protocol

Trait ProtocolMetrics

Source
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§

Source

const BENCHMARK_DURATION: &'static str

The name of the metric reporting the total duration of the benchmark (in seconds).

Source

const TOTAL_TRANSACTIONS: &'static str

The name of the metric reporting the total number of finalized transactions

Source

const LATENCY_BUCKETS: &'static str

The name of the metric reporting the latency buckets.

Source

const LATENCY_SUM: &'static str

The name of the metric reporting the sum of the end-to-end latency of all finalized transactions.

Source

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§

Source

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.

Source

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§

Source

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.

Source

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.

Implementors§

Source§

impl ProtocolMetrics for NarwhalProtocol

Source§

const BENCHMARK_DURATION: &'static str = "narwhal_benchmark_duration"

Source§

const TOTAL_TRANSACTIONS: &'static str = "worker_req_latency_by_route_count"

Source§

const LATENCY_BUCKETS: &'static str = "batch_execution_latency"

Source§

const LATENCY_SUM: &'static str = "batch_execution_latency_sum"

Source§

const LATENCY_SQUARED_SUM: &'static str = "narwhal_client_latency_squared_s"

Source§

impl ProtocolMetrics for SuiProtocol

Source§

const BENCHMARK_DURATION: &'static str = "benchmark_duration"

Source§

const TOTAL_TRANSACTIONS: &'static str = "latency_s_count"

Source§

const LATENCY_BUCKETS: &'static str = "latency_s"

Source§

const LATENCY_SUM: &'static str = "latency_s_sum"

Source§

const LATENCY_SQUARED_SUM: &'static str = "latency_squared_s"