aws_sdk_internetmonitor/client/start_query.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`StartQuery`](crate::operation::start_query::builders::StartQueryFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`monitor_name(impl Into<String>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::monitor_name) / [`set_monitor_name(Option<String>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::set_monitor_name):<br>required: **true**<br><p>The name of the monitor to query.</p><br>
7 /// - [`start_time(DateTime)`](crate::operation::start_query::builders::StartQueryFluentBuilder::start_time) / [`set_start_time(Option<DateTime>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::set_start_time):<br>required: **true**<br><p>The timestamp that is the beginning of the period that you want to retrieve data for with your query.</p><br>
8 /// - [`end_time(DateTime)`](crate::operation::start_query::builders::StartQueryFluentBuilder::end_time) / [`set_end_time(Option<DateTime>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::set_end_time):<br>required: **true**<br><p>The timestamp that is the end of the period that you want to retrieve data for with your query.</p><br>
9 /// - [`query_type(QueryType)`](crate::operation::start_query::builders::StartQueryFluentBuilder::query_type) / [`set_query_type(Option<QueryType>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::set_query_type):<br>required: **true**<br><p>The type of query to run. The following are the three types of queries that you can run using the Internet Monitor query interface:</p> <ul> <li> <p><code>MEASUREMENTS</code>: Provides availability score, performance score, total traffic, and round-trip times, at 5 minute intervals.</p></li> <li> <p><code>TOP_LOCATIONS</code>: Provides availability score, performance score, total traffic, and time to first byte (TTFB) information, for the top location and ASN combinations that you're monitoring, by traffic volume.</p></li> <li> <p><code>TOP_LOCATION_DETAILS</code>: Provides TTFB for Amazon CloudFront, your current configuration, and the best performing EC2 configuration, at 1 hour intervals.</p></li> <li> <p><code>OVERALL_TRAFFIC_SUGGESTIONS</code>: Provides TTFB, using a 30-day weighted average, for all traffic in each Amazon Web Services location that is monitored.</p></li> <li> <p><code>OVERALL_TRAFFIC_SUGGESTIONS_DETAILS</code>: Provides TTFB, using a 30-day weighted average, for each top location, for a proposed Amazon Web Services location. Must provide an Amazon Web Services location to search.</p></li> <li> <p><code>ROUTING_SUGGESTIONS</code>: Provides the predicted average round-trip time (RTT) from an IP prefix toward an Amazon Web Services location for a DNS resolver. The RTT is calculated at one hour intervals, over a one hour period.</p></li> </ul> <p>For lists of the fields returned with each query type and more information about how each type of query is performed, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-view-cw-tools-cwim-query.html"> Using the Amazon CloudWatch Internet Monitor query interface</a> in the Amazon CloudWatch Internet Monitor User Guide.</p><br>
10 /// - [`filter_parameters(FilterParameter)`](crate::operation::start_query::builders::StartQueryFluentBuilder::filter_parameters) / [`set_filter_parameters(Option<Vec::<FilterParameter>>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::set_filter_parameters):<br>required: **false**<br><p>The <code>FilterParameters</code> field that you use with Amazon CloudWatch Internet Monitor queries is a string the defines how you want a query to be filtered. The filter parameters that you can specify depend on the query type, since each query type returns a different set of Internet Monitor data.</p> <p>For more information about specifying filter parameters, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-view-cw-tools-cwim-query.html">Using the Amazon CloudWatch Internet Monitor query interface</a> in the Amazon CloudWatch Internet Monitor User Guide.</p><br>
11 /// - [`linked_account_id(impl Into<String>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::linked_account_id) / [`set_linked_account_id(Option<String>)`](crate::operation::start_query::builders::StartQueryFluentBuilder::set_linked_account_id):<br>required: **false**<br><p>The account ID for an account that you've set up cross-account sharing for in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cwim-cross-account.html">Internet Monitor cross-account observability</a> in the Amazon CloudWatch Internet Monitor User Guide.</p><br>
12 /// - On success, responds with [`StartQueryOutput`](crate::operation::start_query::StartQueryOutput) with field(s):
13 /// - [`query_id(String)`](crate::operation::start_query::StartQueryOutput::query_id): <p>The internally-generated identifier of a specific query.</p>
14 /// - On failure, responds with [`SdkError<StartQueryError>`](crate::operation::start_query::StartQueryError)
15 pub fn start_query(&self) -> crate::operation::start_query::builders::StartQueryFluentBuilder {
16 crate::operation::start_query::builders::StartQueryFluentBuilder::new(self.handle.clone())
17 }
18}