Struct goose::metrics::TransactionMetricAggregate
source · pub struct TransactionMetricAggregate {
pub scenario_index: usize,
pub scenario_name: String,
pub transaction_index: usize,
pub transaction_name: String,
pub times: BTreeMap<usize, usize>,
pub min_time: usize,
pub max_time: usize,
pub total_time: usize,
pub counter: usize,
pub success_count: usize,
pub fail_count: usize,
}
Expand description
Aggregated per-transaction metrics updated each time a transaction is invoked.
TransactionMetric
s are sent by GooseUser
threads to the Goose parent process where they are aggregated together into this
structure, and stored in GooseMetrics::transactions
.
Fields§
§scenario_index: usize
An index into GooseAttack
.scenarios
,
indicating which scenario this is.
scenario_name: String
The scenario name.
transaction_index: usize
An index into Scenario
.transaction
,
indicating which transaction this is.
transaction_name: String
An optional name for the transaction.
times: BTreeMap<usize, usize>
Per-run-time counters, tracking how often transactions take a given time to complete.
min_time: usize
The shortest run-time for this transaction.
max_time: usize
The longest run-time for this transaction.
total_time: usize
Total combined run-times for this transaction.
counter: usize
Total number of times transaction has run.
success_count: usize
Total number of times transaction has run successfully.
fail_count: usize
Total number of times transaction has failed.
Trait Implementations§
source§impl Clone for TransactionMetricAggregate
impl Clone for TransactionMetricAggregate
source§fn clone(&self) -> TransactionMetricAggregate
fn clone(&self) -> TransactionMetricAggregate
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for TransactionMetricAggregate
impl Debug for TransactionMetricAggregate
source§impl<'de> Deserialize<'de> for TransactionMetricAggregate
impl<'de> Deserialize<'de> for TransactionMetricAggregate
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl PartialEq<TransactionMetricAggregate> for TransactionMetricAggregate
impl PartialEq<TransactionMetricAggregate> for TransactionMetricAggregate
source§fn eq(&self, other: &TransactionMetricAggregate) -> bool
fn eq(&self, other: &TransactionMetricAggregate) -> bool
impl Eq for TransactionMetricAggregate
impl StructuralEq for TransactionMetricAggregate
impl StructuralPartialEq for TransactionMetricAggregate
Auto Trait Implementations§
impl RefUnwindSafe for TransactionMetricAggregate
impl Send for TransactionMetricAggregate
impl Sync for TransactionMetricAggregate
impl Unpin for TransactionMetricAggregate
impl UnwindSafe for TransactionMetricAggregate
Blanket Implementations§
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read moresource§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read moresource§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read moresource§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read moresource§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.