Enum gapi_grpc::google::monitoring::v3::aggregation::Aligner [−][src]
The Aligner
specifies the operation that will be applied to the data
points in each alignment period in a time series. Except for
ALIGN_NONE
, which specifies that no operation be applied, each alignment
operation replaces the set of data values in each alignment period with
a single value: the result of applying the operation to the data values.
An aligned time series has a single data value at the end of each
alignment_period
.
An alignment operation can change the data type of the values, too. For
example, if you apply a counting operation to boolean values, the data
value_type
in the original time series is BOOLEAN
, but the value_type
in the aligned result is INT64
.
Variants
No alignment. Raw data is returned. Not valid if cross-series reduction
is requested. The value_type
of the result is the same as the
value_type
of the input.
Align and convert to
[DELTA][google.api.MetricDescriptor.MetricKind.DELTA].
The output is delta = y1 - y0
.
This alignment is valid for
[CUMULATIVE][google.api.MetricDescriptor.MetricKind.CUMULATIVE] and
DELTA
metrics. If the selected alignment period results in periods
with no data, then the aligned value for such a period is created by
interpolation. The value_type
of the aligned result is the same as
the value_type
of the input.
Align and convert to a rate. The result is computed as
rate = (y1 - y0)/(t1 - t0)
, or “delta over time”.
Think of this aligner as providing the slope of the line that passes
through the value at the start and at the end of the alignment_period
.
This aligner is valid for CUMULATIVE
and DELTA
metrics with numeric values. If the selected alignment
period results in periods with no data, then the aligned value for
such a period is created by interpolation. The output is a GAUGE
metric with value_type
DOUBLE
.
If, by “rate”, you mean “percentage change”, see the
ALIGN_PERCENT_CHANGE
aligner instead.
Align by interpolating between adjacent points around the alignment
period boundary. This aligner is valid for GAUGE
metrics with
numeric values. The value_type
of the aligned result is the same as the
value_type
of the input.
Align by moving the most recent data point before the end of the
alignment period to the boundary at the end of the alignment
period. This aligner is valid for GAUGE
metrics. The value_type
of
the aligned result is the same as the value_type
of the input.
Align the time series by returning the minimum value in each alignment
period. This aligner is valid for GAUGE
and DELTA
metrics with
numeric values. The value_type
of the aligned result is the same as
the value_type
of the input.
Align the time series by returning the maximum value in each alignment
period. This aligner is valid for GAUGE
and DELTA
metrics with
numeric values. The value_type
of the aligned result is the same as
the value_type
of the input.
Align the time series by returning the mean value in each alignment
period. This aligner is valid for GAUGE
and DELTA
metrics with
numeric values. The value_type
of the aligned result is DOUBLE
.
Align the time series by returning the number of values in each alignment
period. This aligner is valid for GAUGE
and DELTA
metrics with
numeric or Boolean values. The value_type
of the aligned result is
INT64
.
Align the time series by returning the sum of the values in each
alignment period. This aligner is valid for GAUGE
and DELTA
metrics with numeric and distribution values. The value_type
of the
aligned result is the same as the value_type
of the input.
Align the time series by returning the standard deviation of the values
in each alignment period. This aligner is valid for GAUGE
and
DELTA
metrics with numeric values. The value_type
of the output is
DOUBLE
.
Align the time series by returning the number of True
values in
each alignment period. This aligner is valid for GAUGE
metrics with
Boolean values. The value_type
of the output is INT64
.
Align the time series by returning the number of False
values in
each alignment period. This aligner is valid for GAUGE
metrics with
Boolean values. The value_type
of the output is INT64
.
Align the time series by returning the ratio of the number of True
values to the total number of values in each alignment period. This
aligner is valid for GAUGE
metrics with Boolean values. The output
value is in the range [0.0, 1.0] and has value_type
DOUBLE
.
Align the time series by using percentile
aggregation. The resulting
data point in each alignment period is the 99th percentile of all data
points in the period. This aligner is valid for GAUGE
and DELTA
metrics with distribution values. The output is a GAUGE
metric with
value_type
DOUBLE
.
Align the time series by using percentile
aggregation. The resulting
data point in each alignment period is the 95th percentile of all data
points in the period. This aligner is valid for GAUGE
and DELTA
metrics with distribution values. The output is a GAUGE
metric with
value_type
DOUBLE
.
Align the time series by using percentile
aggregation. The resulting
data point in each alignment period is the 50th percentile of all data
points in the period. This aligner is valid for GAUGE
and DELTA
metrics with distribution values. The output is a GAUGE
metric with
value_type
DOUBLE
.
Align the time series by using percentile
aggregation. The resulting
data point in each alignment period is the 5th percentile of all data
points in the period. This aligner is valid for GAUGE
and DELTA
metrics with distribution values. The output is a GAUGE
metric with
value_type
DOUBLE
.
Align and convert to a percentage change. This aligner is valid for
GAUGE
and DELTA
metrics with numeric values. This alignment returns
((current - previous)/previous) * 100
, where the value of previous
is
determined based on the alignment_period
.
If the values of current
and previous
are both 0, then the returned
value is 0. If only previous
is 0, the returned value is infinity.
A 10-minute moving mean is computed at each point of the alignment period
prior to the above calculation to smooth the metric and prevent false
positives from very short-lived spikes. The moving mean is only
applicable for data whose values are >= 0
. Any values < 0
are
treated as a missing datapoint, and are ignored. While DELTA
metrics are accepted by this alignment, special care should be taken that
the values for the metric will always be positive. The output is a
GAUGE
metric with value_type
DOUBLE
.
Implementations
impl Aligner
[src]
pub fn is_valid(value: i32) -> bool
[src]
Returns true
if value
is a variant of Aligner
.
pub fn from_i32(value: i32) -> Option<Aligner>
[src]
Converts an i32
to a Aligner
, or None
if value
is not a valid variant.
Trait Implementations
impl Clone for Aligner
[src]
impl Copy for Aligner
[src]
impl Debug for Aligner
[src]
impl Default for Aligner
[src]
impl Eq for Aligner
[src]
impl From<Aligner> for i32
[src]
impl Hash for Aligner
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Ord for Aligner
[src]
fn cmp(&self, other: &Aligner) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl PartialEq<Aligner> for Aligner
[src]
fn eq(&self, other: &Aligner) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl PartialOrd<Aligner> for Aligner
[src]
fn partial_cmp(&self, other: &Aligner) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl StructuralEq for Aligner
[src]
impl StructuralPartialEq for Aligner
[src]
Auto Trait Implementations
impl RefUnwindSafe for Aligner
impl Send for Aligner
impl Sync for Aligner
impl Unpin for Aligner
impl UnwindSafe for Aligner
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
pub fn equivalent(&self, key: &K) -> bool
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> IntoRequest<T> for T
[src]
pub fn into_request(self) -> Request<T>
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,
impl<T> WithSubscriber for T
[src]
pub fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
[src]
S: Into<Dispatch>,