#[non_exhaustive]
pub struct BehaviorCriteria { pub comparison_operator: Option<ComparisonOperator>, pub value: Option<MetricValue>, pub duration_seconds: Option<i32>, pub consecutive_datapoints_to_alarm: Option<i32>, pub consecutive_datapoints_to_clear: Option<i32>, pub statistical_threshold: Option<StatisticalThreshold>, pub ml_detection_config: Option<MachineLearningDetectionConfig>, }
Expand description

The criteria by which the behavior is determined to be normal.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§comparison_operator: Option<ComparisonOperator>

The operator that relates the thing measured (metric) to the criteria (containing a value or statisticalThreshold). Valid operators include:

  • string-list: in-set and not-in-set

  • number-list: in-set and not-in-set

  • ip-address-list: in-cidr-set and not-in-cidr-set

  • number: less-than, less-than-equals, greater-than, and greater-than-equals

§value: Option<MetricValue>

The value to be compared with the metric.

§duration_seconds: Option<i32>

Use this to specify the time duration over which the behavior is evaluated, for those criteria that have a time dimension (for example, NUM_MESSAGES_SENT). For a statisticalThreshhold metric comparison, measurements from all devices are accumulated over this time duration before being used to calculate percentiles, and later, measurements from an individual device are also accumulated over this time duration before being given a percentile rank. Cannot be used with list-based metric datatypes.

§consecutive_datapoints_to_alarm: Option<i32>

If a device is in violation of the behavior for the specified number of consecutive datapoints, an alarm occurs. If not specified, the default is 1.

§consecutive_datapoints_to_clear: Option<i32>

If an alarm has occurred and the offending device is no longer in violation of the behavior for the specified number of consecutive datapoints, the alarm is cleared. If not specified, the default is 1.

§statistical_threshold: Option<StatisticalThreshold>

A statistical ranking (percentile)that indicates a threshold value by which a behavior is determined to be in compliance or in violation of the behavior.

§ml_detection_config: Option<MachineLearningDetectionConfig>

The configuration of an ML Detect

Implementations§

source§

impl BehaviorCriteria

source

pub fn comparison_operator(&self) -> Option<&ComparisonOperator>

The operator that relates the thing measured (metric) to the criteria (containing a value or statisticalThreshold). Valid operators include:

  • string-list: in-set and not-in-set

  • number-list: in-set and not-in-set

  • ip-address-list: in-cidr-set and not-in-cidr-set

  • number: less-than, less-than-equals, greater-than, and greater-than-equals

source

pub fn value(&self) -> Option<&MetricValue>

The value to be compared with the metric.

source

pub fn duration_seconds(&self) -> Option<i32>

Use this to specify the time duration over which the behavior is evaluated, for those criteria that have a time dimension (for example, NUM_MESSAGES_SENT). For a statisticalThreshhold metric comparison, measurements from all devices are accumulated over this time duration before being used to calculate percentiles, and later, measurements from an individual device are also accumulated over this time duration before being given a percentile rank. Cannot be used with list-based metric datatypes.

source

pub fn consecutive_datapoints_to_alarm(&self) -> Option<i32>

If a device is in violation of the behavior for the specified number of consecutive datapoints, an alarm occurs. If not specified, the default is 1.

source

pub fn consecutive_datapoints_to_clear(&self) -> Option<i32>

If an alarm has occurred and the offending device is no longer in violation of the behavior for the specified number of consecutive datapoints, the alarm is cleared. If not specified, the default is 1.

source

pub fn statistical_threshold(&self) -> Option<&StatisticalThreshold>

A statistical ranking (percentile)that indicates a threshold value by which a behavior is determined to be in compliance or in violation of the behavior.

source

pub fn ml_detection_config(&self) -> Option<&MachineLearningDetectionConfig>

The configuration of an ML Detect

source§

impl BehaviorCriteria

source

pub fn builder() -> BehaviorCriteriaBuilder

Creates a new builder-style object to manufacture BehaviorCriteria.

Trait Implementations§

source§

impl Clone for BehaviorCriteria

source§

fn clone(&self) -> BehaviorCriteria

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BehaviorCriteria

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for BehaviorCriteria

source§

fn eq(&self, other: &BehaviorCriteria) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for BehaviorCriteria

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more