proxmox-rrd: rename last_counter to last_value
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com> Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
bff7c027c9
commit
6728d0977b
@ -63,7 +63,7 @@ pub struct DataSource {
|
|||||||
pub last_update: f64,
|
pub last_update: f64,
|
||||||
/// Stores the last value, used to compute differential value for
|
/// Stores the last value, used to compute differential value for
|
||||||
/// derive/counters
|
/// derive/counters
|
||||||
pub counter_value: f64,
|
pub last_value: f64,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl DataSource {
|
impl DataSource {
|
||||||
@ -72,7 +72,7 @@ impl DataSource {
|
|||||||
Self {
|
Self {
|
||||||
dst,
|
dst,
|
||||||
last_update: 0.0,
|
last_update: 0.0,
|
||||||
counter_value: f64::NAN,
|
last_value: f64::NAN,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -94,21 +94,23 @@ impl DataSource {
|
|||||||
if is_counter || self.dst == DST::Derive {
|
if is_counter || self.dst == DST::Derive {
|
||||||
let time_diff = time - self.last_update;
|
let time_diff = time - self.last_update;
|
||||||
|
|
||||||
let diff = if self.counter_value.is_nan() {
|
let diff = if self.last_value.is_nan() {
|
||||||
0.0
|
0.0
|
||||||
} else if is_counter && value < 0.0 {
|
} else if is_counter && value < 0.0 {
|
||||||
bail!("got negative value for counter");
|
bail!("got negative value for counter");
|
||||||
} else if is_counter && value < self.counter_value {
|
} else if is_counter && value < self.last_value {
|
||||||
// Note: We do not try automatic overflow corrections, but
|
// Note: We do not try automatic overflow corrections, but
|
||||||
// we update counter_value anyways, so that we can compute the diff
|
// we update last_value anyways, so that we can compute the diff
|
||||||
// next time.
|
// next time.
|
||||||
self.counter_value = value;
|
self.last_value = value;
|
||||||
bail!("conter overflow/reset detected");
|
bail!("conter overflow/reset detected");
|
||||||
} else {
|
} else {
|
||||||
value - self.counter_value
|
value - self.last_value
|
||||||
};
|
};
|
||||||
self.counter_value = value;
|
self.last_value = value;
|
||||||
value = diff/time_diff;
|
value = diff/time_diff;
|
||||||
|
} else {
|
||||||
|
self.last_value = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(value)
|
Ok(value)
|
||||||
|
@ -285,7 +285,7 @@ impl RRDv1 {
|
|||||||
|
|
||||||
let source = DataSource {
|
let source = DataSource {
|
||||||
dst,
|
dst,
|
||||||
counter_value: f64::NAN,
|
last_value: f64::NAN,
|
||||||
last_update: self.hour_avg.last_update, // IMPORTANT!
|
last_update: self.hour_avg.last_update, // IMPORTANT!
|
||||||
};
|
};
|
||||||
Ok(RRD {
|
Ok(RRD {
|
||||||
|
Loading…
Reference in New Issue
Block a user