1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`EnableLogging`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`cluster_identifier(impl Into<String>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::cluster_identifier) / [`set_cluster_identifier(Option<String>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::set_cluster_identifier):<br>required: **true**<br><p>The identifier of the cluster on which logging is to be started.</p>  <p>Example: <code>examplecluster</code> </p><br>
    ///   - [`bucket_name(impl Into<String>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::bucket_name) / [`set_bucket_name(Option<String>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::set_bucket_name):<br>required: **false**<br><p>The name of an existing S3 bucket where the log files are to be stored.</p>  <p>Constraints:</p>  <ul>   <li> <p>Must be in the same region as the cluster</p> </li>   <li> <p>The cluster must have read bucket and put object permissions</p> </li>  </ul><br>
    ///   - [`s3_key_prefix(impl Into<String>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::s3_key_prefix) / [`set_s3_key_prefix(Option<String>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::set_s3_key_prefix):<br>required: **false**<br><p>The prefix applied to the log file names.</p>  <p>Constraints:</p>  <ul>   <li> <p>Cannot exceed 512 characters</p> </li>   <li> <p>Cannot contain spaces( ), double quotes ("), single quotes ('), a backslash (\), or control characters. The hexadecimal codes for invalid characters are: </p>    <ul>     <li> <p>x00 to x20</p> </li>     <li> <p>x22</p> </li>     <li> <p>x27</p> </li>     <li> <p>x5c</p> </li>     <li> <p>x7f or larger</p> </li>    </ul> </li>  </ul><br>
    ///   - [`log_destination_type(LogDestinationType)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::log_destination_type) / [`set_log_destination_type(Option<LogDestinationType>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::set_log_destination_type):<br>required: **false**<br><p>The log destination type. An enum with possible values of <code>s3</code> and <code>cloudwatch</code>.</p><br>
    ///   - [`log_exports(impl Into<String>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::log_exports) / [`set_log_exports(Option<Vec::<String>>)`](crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::set_log_exports):<br>required: **false**<br><p>The collection of exported log types. Possible values are <code>connectionlog</code>, <code>useractivitylog</code>, and <code>userlog</code>.</p><br>
    /// - On success, responds with [`EnableLoggingOutput`](crate::operation::enable_logging::EnableLoggingOutput) with field(s):
    ///   - [`logging_enabled(Option<bool>)`](crate::operation::enable_logging::EnableLoggingOutput::logging_enabled): <p> <code>true</code> if logging is on, <code>false</code> if logging is off.</p>
    ///   - [`bucket_name(Option<String>)`](crate::operation::enable_logging::EnableLoggingOutput::bucket_name): <p>The name of the S3 bucket where the log files are stored.</p>
    ///   - [`s3_key_prefix(Option<String>)`](crate::operation::enable_logging::EnableLoggingOutput::s3_key_prefix): <p>The prefix applied to the log file names.</p>
    ///   - [`last_successful_delivery_time(Option<DateTime>)`](crate::operation::enable_logging::EnableLoggingOutput::last_successful_delivery_time): <p>The last time that logs were delivered.</p>
    ///   - [`last_failure_time(Option<DateTime>)`](crate::operation::enable_logging::EnableLoggingOutput::last_failure_time): <p>The last time when logs failed to be delivered.</p>
    ///   - [`last_failure_message(Option<String>)`](crate::operation::enable_logging::EnableLoggingOutput::last_failure_message): <p>The message indicating that logs failed to be delivered.</p>
    ///   - [`log_destination_type(Option<LogDestinationType>)`](crate::operation::enable_logging::EnableLoggingOutput::log_destination_type): <p>The log destination type. An enum with possible values of <code>s3</code> and <code>cloudwatch</code>.</p>
    ///   - [`log_exports(Option<Vec::<String>>)`](crate::operation::enable_logging::EnableLoggingOutput::log_exports): <p>The collection of exported log types. Possible values are <code>connectionlog</code>, <code>useractivitylog</code>, and <code>userlog</code>.</p>
    /// - On failure, responds with [`SdkError<EnableLoggingError>`](crate::operation::enable_logging::EnableLoggingError)
    pub fn enable_logging(&self) -> crate::operation::enable_logging::builders::EnableLoggingFluentBuilder {
        crate::operation::enable_logging::builders::EnableLoggingFluentBuilder::new(self.handle.clone())
    }
}