pub struct QueryBuilder { /* private fields */ }
Expand description
A builder for Flux queries
let query = QueryBuilder::from("telegraf/autogen")
.range_start(Duration::Minutes(-15))
.filter(
r#"r._measurement == "cpu" and
r._field == "usage_system" and
r.cpu == "cpu-total""#
)
.build();
assert_eq!(
query.as_ref(),
r#"from(bucket: "telegraf/autogen")
|> range(start: -15m)
|> filter(fn: (r) =>
r._measurement == "cpu" and
r._field == "usage_system" and
r.cpu == "cpu-total"
)
|> yield()"#,
);
Implementations§
Source§impl QueryBuilder
impl QueryBuilder
Sourcepub fn range_start<T>(self, start: T) -> Selfwhere
T: Into<InstantOrDuration>,
pub fn range_start<T>(self, start: T) -> Selfwhere
T: Into<InstantOrDuration>,
Restrict query results to a start time
Sourcepub fn range_stop<T>(self, stop: T) -> Selfwhere
T: Into<InstantOrDuration>,
pub fn range_stop<T>(self, stop: T) -> Selfwhere
T: Into<InstantOrDuration>,
Restrict query results to a stop time
Sourcepub fn range<T, S>(self, start: T, stop: S) -> Self
pub fn range<T, S>(self, start: T, stop: S) -> Self
Restrict query results to a between two instants
Sourcepub fn aggregate_window<T, S>(self, fn_: S, every: Duration) -> Self
pub fn aggregate_window<T, S>(self, fn_: S, every: Duration) -> Self
Aggregate results over a window
Auto Trait Implementations§
impl Freeze for QueryBuilder
impl RefUnwindSafe for QueryBuilder
impl Send for QueryBuilder
impl Sync for QueryBuilder
impl Unpin for QueryBuilder
impl UnwindSafe for QueryBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more