CIAppQueryOptions

Struct CIAppQueryOptions 

Source
#[non_exhaustive]
pub struct CIAppQueryOptions { pub time_offset: Option<i64>, pub timezone: Option<String>, pub additional_properties: BTreeMap<String, Value>, /* private fields */ }
Expand description

Global query options that are used during the query. Only supply timezone or time offset, not both. Otherwise, the query fails.

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.
§time_offset: Option<i64>

The time offset (in seconds) to apply to the query.

§timezone: Option<String>

The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York).

§additional_properties: BTreeMap<String, Value>

Implementations§

Source§

impl CIAppQueryOptions

Source

pub fn new() -> CIAppQueryOptions

Examples found in repository?
examples/v2_ci-visibility-tests_SearchCIAppTestEvents.rs (line 20)
12async fn main() {
13    let body = CIAppTestEventsRequest::new()
14        .filter(
15            CIAppTestsQueryFilter::new()
16                .from("now-15m".to_string())
17                .query("@test.service:web-ui-tests AND @test.status:skip".to_string())
18                .to("now".to_string()),
19        )
20        .options(CIAppQueryOptions::new().timezone("GMT".to_string()))
21        .page(CIAppQueryPageOptions::new().limit(25))
22        .sort(CIAppSort::TIMESTAMP_ASCENDING);
23    let configuration = datadog::Configuration::new();
24    let api = CIVisibilityTestsAPI::with_config(configuration);
25    let resp = api
26        .search_ci_app_test_events(SearchCIAppTestEventsOptionalParams::default().body(body))
27        .await;
28    if let Ok(value) = resp {
29        println!("{:#?}", value);
30    } else {
31        println!("{:#?}", resp.unwrap_err());
32    }
33}
More examples
Hide additional examples
examples/v2_ci-visibility-pipelines_SearchCIAppPipelineEvents.rs (line 20)
12async fn main() {
13    let body = CIAppPipelineEventsRequest::new()
14        .filter(
15            CIAppPipelinesQueryFilter::new()
16                .from("now-15m".to_string())
17                .query("@ci.provider.name:github AND @ci.status:error".to_string())
18                .to("now".to_string()),
19        )
20        .options(CIAppQueryOptions::new().timezone("GMT".to_string()))
21        .page(CIAppQueryPageOptions::new().limit(5))
22        .sort(CIAppSort::TIMESTAMP_ASCENDING);
23    let configuration = datadog::Configuration::new();
24    let api = CIVisibilityPipelinesAPI::with_config(configuration);
25    let resp = api
26        .search_ci_app_pipeline_events(
27            SearchCIAppPipelineEventsOptionalParams::default().body(body),
28        )
29        .await;
30    if let Ok(value) = resp {
31        println!("{:#?}", value);
32    } else {
33        println!("{:#?}", resp.unwrap_err());
34    }
35}
examples/v2_ci-visibility-pipelines_SearchCIAppPipelineEvents_3246135003.rs (line 21)
14async fn main() {
15    let body = CIAppPipelineEventsRequest::new()
16        .filter(
17            CIAppPipelinesQueryFilter::new()
18                .from("now-30s".to_string())
19                .to("now".to_string()),
20        )
21        .options(CIAppQueryOptions::new().timezone("GMT".to_string()))
22        .page(CIAppQueryPageOptions::new().limit(2))
23        .sort(CIAppSort::TIMESTAMP_ASCENDING);
24    let configuration = datadog::Configuration::new();
25    let api = CIVisibilityPipelinesAPI::with_config(configuration);
26    let response = api.search_ci_app_pipeline_events_with_pagination(
27        SearchCIAppPipelineEventsOptionalParams::default().body(body),
28    );
29    pin_mut!(response);
30    while let Some(resp) = response.next().await {
31        if let Ok(value) = resp {
32            println!("{:#?}", value);
33        } else {
34            println!("{:#?}", resp.unwrap_err());
35        }
36    }
37}
examples/v2_ci-visibility-pipelines_AggregateCIAppPipelineEvents.rs (line 30)
14async fn main() {
15    let body = CIAppPipelinesAggregateRequest::new()
16        .compute(vec![CIAppCompute::new(
17            CIAppAggregationFunction::PERCENTILE_90,
18        )
19        .metric("@duration".to_string())
20        .type_(CIAppComputeType::TOTAL)])
21        .filter(
22            CIAppPipelinesQueryFilter::new()
23                .from("now-15m".to_string())
24                .query("@ci.provider.name:(gitlab OR github)".to_string())
25                .to("now".to_string()),
26        )
27        .group_by(vec![CIAppPipelinesGroupBy::new("@ci.status".to_string())
28            .limit(10)
29            .total(CIAppGroupByTotal::CIAppGroupByTotalBoolean(false))])
30        .options(CIAppQueryOptions::new().timezone("GMT".to_string()));
31    let configuration = datadog::Configuration::new();
32    let api = CIVisibilityPipelinesAPI::with_config(configuration);
33    let resp = api.aggregate_ci_app_pipeline_events(body).await;
34    if let Ok(value) = resp {
35        println!("{:#?}", value);
36    } else {
37        println!("{:#?}", resp.unwrap_err());
38    }
39}
examples/v2_ci-visibility-tests_AggregateCIAppTestEvents.rs (line 31)
16async fn main() {
17    let body = CIAppTestsAggregateRequest::new()
18        .compute(vec![CIAppCompute::new(CIAppAggregationFunction::COUNT)
19            .metric("@test.is_flaky".to_string())
20            .type_(CIAppComputeType::TOTAL)])
21        .filter(
22            CIAppTestsQueryFilter::new()
23                .from("now-15m".to_string())
24                .query("@language:(python OR go)".to_string())
25                .to("now".to_string()),
26        )
27        .group_by(vec![CIAppTestsGroupBy::new("@git.branch".to_string())
28            .limit(10)
29            .sort(CIAppAggregateSort::new().order(CIAppSortOrder::ASCENDING))
30            .total(CIAppGroupByTotal::CIAppGroupByTotalBoolean(false))])
31        .options(CIAppQueryOptions::new().timezone("GMT".to_string()));
32    let configuration = datadog::Configuration::new();
33    let api = CIVisibilityTestsAPI::with_config(configuration);
34    let resp = api.aggregate_ci_app_test_events(body).await;
35    if let Ok(value) = resp {
36        println!("{:#?}", value);
37    } else {
38        println!("{:#?}", resp.unwrap_err());
39    }
40}
Source

pub fn time_offset(self, value: i64) -> Self

Source

pub fn timezone(self, value: String) -> Self

Examples found in repository?
examples/v2_ci-visibility-tests_SearchCIAppTestEvents.rs (line 20)
12async fn main() {
13    let body = CIAppTestEventsRequest::new()
14        .filter(
15            CIAppTestsQueryFilter::new()
16                .from("now-15m".to_string())
17                .query("@test.service:web-ui-tests AND @test.status:skip".to_string())
18                .to("now".to_string()),
19        )
20        .options(CIAppQueryOptions::new().timezone("GMT".to_string()))
21        .page(CIAppQueryPageOptions::new().limit(25))
22        .sort(CIAppSort::TIMESTAMP_ASCENDING);
23    let configuration = datadog::Configuration::new();
24    let api = CIVisibilityTestsAPI::with_config(configuration);
25    let resp = api
26        .search_ci_app_test_events(SearchCIAppTestEventsOptionalParams::default().body(body))
27        .await;
28    if let Ok(value) = resp {
29        println!("{:#?}", value);
30    } else {
31        println!("{:#?}", resp.unwrap_err());
32    }
33}
More examples
Hide additional examples
examples/v2_ci-visibility-pipelines_SearchCIAppPipelineEvents.rs (line 20)
12async fn main() {
13    let body = CIAppPipelineEventsRequest::new()
14        .filter(
15            CIAppPipelinesQueryFilter::new()
16                .from("now-15m".to_string())
17                .query("@ci.provider.name:github AND @ci.status:error".to_string())
18                .to("now".to_string()),
19        )
20        .options(CIAppQueryOptions::new().timezone("GMT".to_string()))
21        .page(CIAppQueryPageOptions::new().limit(5))
22        .sort(CIAppSort::TIMESTAMP_ASCENDING);
23    let configuration = datadog::Configuration::new();
24    let api = CIVisibilityPipelinesAPI::with_config(configuration);
25    let resp = api
26        .search_ci_app_pipeline_events(
27            SearchCIAppPipelineEventsOptionalParams::default().body(body),
28        )
29        .await;
30    if let Ok(value) = resp {
31        println!("{:#?}", value);
32    } else {
33        println!("{:#?}", resp.unwrap_err());
34    }
35}
examples/v2_ci-visibility-pipelines_SearchCIAppPipelineEvents_3246135003.rs (line 21)
14async fn main() {
15    let body = CIAppPipelineEventsRequest::new()
16        .filter(
17            CIAppPipelinesQueryFilter::new()
18                .from("now-30s".to_string())
19                .to("now".to_string()),
20        )
21        .options(CIAppQueryOptions::new().timezone("GMT".to_string()))
22        .page(CIAppQueryPageOptions::new().limit(2))
23        .sort(CIAppSort::TIMESTAMP_ASCENDING);
24    let configuration = datadog::Configuration::new();
25    let api = CIVisibilityPipelinesAPI::with_config(configuration);
26    let response = api.search_ci_app_pipeline_events_with_pagination(
27        SearchCIAppPipelineEventsOptionalParams::default().body(body),
28    );
29    pin_mut!(response);
30    while let Some(resp) = response.next().await {
31        if let Ok(value) = resp {
32            println!("{:#?}", value);
33        } else {
34            println!("{:#?}", resp.unwrap_err());
35        }
36    }
37}
examples/v2_ci-visibility-pipelines_AggregateCIAppPipelineEvents.rs (line 30)
14async fn main() {
15    let body = CIAppPipelinesAggregateRequest::new()
16        .compute(vec![CIAppCompute::new(
17            CIAppAggregationFunction::PERCENTILE_90,
18        )
19        .metric("@duration".to_string())
20        .type_(CIAppComputeType::TOTAL)])
21        .filter(
22            CIAppPipelinesQueryFilter::new()
23                .from("now-15m".to_string())
24                .query("@ci.provider.name:(gitlab OR github)".to_string())
25                .to("now".to_string()),
26        )
27        .group_by(vec![CIAppPipelinesGroupBy::new("@ci.status".to_string())
28            .limit(10)
29            .total(CIAppGroupByTotal::CIAppGroupByTotalBoolean(false))])
30        .options(CIAppQueryOptions::new().timezone("GMT".to_string()));
31    let configuration = datadog::Configuration::new();
32    let api = CIVisibilityPipelinesAPI::with_config(configuration);
33    let resp = api.aggregate_ci_app_pipeline_events(body).await;
34    if let Ok(value) = resp {
35        println!("{:#?}", value);
36    } else {
37        println!("{:#?}", resp.unwrap_err());
38    }
39}
examples/v2_ci-visibility-tests_AggregateCIAppTestEvents.rs (line 31)
16async fn main() {
17    let body = CIAppTestsAggregateRequest::new()
18        .compute(vec![CIAppCompute::new(CIAppAggregationFunction::COUNT)
19            .metric("@test.is_flaky".to_string())
20            .type_(CIAppComputeType::TOTAL)])
21        .filter(
22            CIAppTestsQueryFilter::new()
23                .from("now-15m".to_string())
24                .query("@language:(python OR go)".to_string())
25                .to("now".to_string()),
26        )
27        .group_by(vec![CIAppTestsGroupBy::new("@git.branch".to_string())
28            .limit(10)
29            .sort(CIAppAggregateSort::new().order(CIAppSortOrder::ASCENDING))
30            .total(CIAppGroupByTotal::CIAppGroupByTotalBoolean(false))])
31        .options(CIAppQueryOptions::new().timezone("GMT".to_string()));
32    let configuration = datadog::Configuration::new();
33    let api = CIVisibilityTestsAPI::with_config(configuration);
34    let resp = api.aggregate_ci_app_test_events(body).await;
35    if let Ok(value) = resp {
36        println!("{:#?}", value);
37    } else {
38        println!("{:#?}", resp.unwrap_err());
39    }
40}
Source

pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self

Trait Implementations§

Source§

impl Clone for CIAppQueryOptions

Source§

fn clone(&self) -> CIAppQueryOptions

Returns a duplicate 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 CIAppQueryOptions

Source§

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

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

impl Default for CIAppQueryOptions

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for CIAppQueryOptions

Source§

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for CIAppQueryOptions

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for CIAppQueryOptions

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for CIAppQueryOptions

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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<T> ToOwned for T
where T: Clone,

Source§

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>,

Source§

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>,

Source§

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,