aws-sdk-cloudwatchlogs 1.111.0

AWS SDK for Amazon CloudWatch Logs
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateScheduledQuery`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`name(impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_name):<br>required: **true**<br><p>A unique name for the scheduled query within the region for an AWS account. The name can contain letters, numbers, underscores, hyphens, forward slashes, periods, and hash symbols.</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_description):<br>required: **false**<br><p>An optional description for the scheduled query to help identify its purpose.</p><br>
    ///   - [`query_language(QueryLanguage)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::query_language) / [`set_query_language(Option<QueryLanguage>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_query_language):<br>required: **true**<br><p>The query language to use for the scheduled query. Valid values are LogsQL (CloudWatch Logs Insights query language), PPL (OpenSearch Service Piped Processing Language), and SQL (OpenSearch Service Structured Query Language).</p><br>
    ///   - [`query_string(impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::query_string) / [`set_query_string(Option<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_query_string):<br>required: **true**<br><p>The CloudWatch Logs Insights query string to execute. This is the actual query that will be run against your log data on the specified schedule.</p><br>
    ///   - [`log_group_identifiers(impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::log_group_identifiers) / [`set_log_group_identifiers(Option<Vec::<String>>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_log_group_identifiers):<br>required: **false**<br><p>The log group identifiers to query. You can specify log group names or log group ARNs. If querying log groups in a source account from a monitoring account, you must specify the ARN of the log group.</p><br>
    ///   - [`schedule_expression(impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::schedule_expression) / [`set_schedule_expression(Option<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_schedule_expression):<br>required: **true**<br><p>A cron expression that defines when the scheduled query runs. The format is cron(fields) where fields consist of six space-separated values: minutes, hours, day_of_month, month, day_of_week, year.</p><br>
    ///   - [`timezone(impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::timezone) / [`set_timezone(Option<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_timezone):<br>required: **false**<br><p>The timezone in which the schedule expression is evaluated. If not provided, defaults to UTC.</p><br>
    ///   - [`start_time_offset(i64)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::start_time_offset) / [`set_start_time_offset(Option<i64>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_start_time_offset):<br>required: **false**<br><p>Time offset in seconds from the execution time for the start of the query time range. This defines the lookback period for the query (for example, 3600 for the last hour).</p><br>
    ///   - [`destination_configuration(DestinationConfiguration)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::destination_configuration) / [`set_destination_configuration(Option<DestinationConfiguration>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_destination_configuration):<br>required: **false**<br><p>Configuration for destinations where the query results will be delivered after successful execution. You can configure delivery to S3 buckets or EventBridge event buses.</p><br>
    ///   - [`schedule_start_time(i64)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::schedule_start_time) / [`set_schedule_start_time(Option<i64>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_schedule_start_time):<br>required: **false**<br><p>The start time for the query schedule in Unix epoch time (seconds since January 1, 1970, 00:00:00 UTC). If not specified, the schedule starts immediately.</p><br>
    ///   - [`schedule_end_time(i64)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::schedule_end_time) / [`set_schedule_end_time(Option<i64>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_schedule_end_time):<br>required: **false**<br><p>The end time for the query schedule in Unix epoch time (seconds since January 1, 1970, 00:00:00 UTC). If not specified, the schedule runs indefinitely.</p><br>
    ///   - [`execution_role_arn(impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::execution_role_arn) / [`set_execution_role_arn(Option<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_execution_role_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the IAM role that CloudWatch Logs will assume to execute the scheduled query and deliver results to the specified destinations.</p><br>
    ///   - [`state(ScheduledQueryState)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::state) / [`set_state(Option<ScheduledQueryState>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_state):<br>required: **false**<br><p>The initial state of the scheduled query. Valid values are ENABLED (the query will run according to its schedule) and DISABLED (the query is paused and will not run). If not provided, defaults to ENABLED.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::set_tags):<br>required: **false**<br><p>An optional list of key-value pairs to associate with the resource.</p> <p>For more information about tagging, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services resources</a></p><br>
    /// - On success, responds with [`CreateScheduledQueryOutput`](crate::operation::create_scheduled_query::CreateScheduledQueryOutput) with field(s):
    ///   - [`scheduled_query_arn(Option<String>)`](crate::operation::create_scheduled_query::CreateScheduledQueryOutput::scheduled_query_arn): <p>The Amazon Resource Name (ARN) of the created scheduled query.</p>
    ///   - [`state(Option<ScheduledQueryState>)`](crate::operation::create_scheduled_query::CreateScheduledQueryOutput::state): <p>The current state of the scheduled query (ENABLED or DISABLED).</p>
    /// - On failure, responds with [`SdkError<CreateScheduledQueryError>`](crate::operation::create_scheduled_query::CreateScheduledQueryError)
    pub fn create_scheduled_query(&self) -> crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder {
        crate::operation::create_scheduled_query::builders::CreateScheduledQueryFluentBuilder::new(self.handle.clone())
    }
}