// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::put_log_alarm::_put_log_alarm_input::PutLogAlarmInputBuilder;
pub use crate::operation::put_log_alarm::_put_log_alarm_output::PutLogAlarmOutputBuilder;
impl crate::operation::put_log_alarm::builders::PutLogAlarmInputBuilder {
/// Sends a request with this input using the given client.
pub async fn send_with(
self,
client: &crate::Client,
) -> ::std::result::Result<
crate::operation::put_log_alarm::PutLogAlarmOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::put_log_alarm::PutLogAlarmError,
::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
>,
> {
let mut fluent_builder = client.put_log_alarm();
fluent_builder.inner = self;
fluent_builder.send().await
}
}
/// Fluent builder constructing a request to `PutLogAlarm`.
///
/// <p>Creates or updates a log alarm. A log alarm evaluates the results of a CloudWatch Logs scheduled query against the configured threshold and comparison operator to determine its state.</p>
/// <p>When you create a log alarm, the operation creates a service-managed CloudWatch Logs scheduled query that runs the query string you provide on the schedule you configure. Each scheduled query execution returns one or more aggregated values determined by the <code>AggregationExpression</code>, and each aggregated value is compared against the alarm <code>Threshold</code> to determine the alarm state. The alarm uses M-out-of-N evaluation: if <code>QueryResultsToAlarm</code> out of the most recent <code>QueryResultsToEvaluate</code> query results breach the threshold, the alarm transitions to <code>ALARM</code>.</p>
/// <p>Log alarms support the alarm states (<code>OK</code>, <code>ALARM</code>, <code>INSUFFICIENT_DATA</code>). Configure transition actions using <code>OKActions</code>, <code>AlarmActions</code>, and <code>InsufficientDataActions</code>.</p>
/// <p>If you call this operation with the name of an existing log alarm, the operation replaces the previous configuration of that alarm.</p>
/// <p><b>Permissions</b></p>
/// <p>To create or update a log alarm, you must have the <code>cloudwatch:PutLogAlarm</code> permission. The IAM role specified in <code>ScheduledQueryRoleARN</code> must grant the CloudWatch Alarms service permission to execute scheduled queries on the specified log groups. If you set <code>ActionLogLineCount</code>, the role specified in <code>ActionLogLineRoleArn</code> must grant permission to retrieve log events for inclusion in alarm notifications.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct PutLogAlarmFluentBuilder {
handle: ::std::sync::Arc<crate::client::Handle>,
inner: crate::operation::put_log_alarm::builders::PutLogAlarmInputBuilder,
config_override: ::std::option::Option<crate::config::Builder>,
}
impl
crate::client::customize::internal::CustomizableSend<
crate::operation::put_log_alarm::PutLogAlarmOutput,
crate::operation::put_log_alarm::PutLogAlarmError,
> for PutLogAlarmFluentBuilder
{
fn send(
self,
config_override: crate::config::Builder,
) -> crate::client::customize::internal::BoxFuture<
crate::client::customize::internal::SendResult<
crate::operation::put_log_alarm::PutLogAlarmOutput,
crate::operation::put_log_alarm::PutLogAlarmError,
>,
> {
::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
}
}
impl PutLogAlarmFluentBuilder {
/// Creates a new `PutLogAlarmFluentBuilder`.
pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
Self {
handle,
inner: ::std::default::Default::default(),
config_override: ::std::option::Option::None,
}
}
/// Access the PutLogAlarm as a reference.
pub fn as_input(&self) -> &crate::operation::put_log_alarm::builders::PutLogAlarmInputBuilder {
&self.inner
}
/// Sends the request and returns the response.
///
/// If an error occurs, an `SdkError` will be returned with additional details that
/// can be matched against.
///
/// By default, any retryable failures will be retried twice. Retry behavior
/// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
/// set when configuring the client.
pub async fn send(
self,
) -> ::std::result::Result<
crate::operation::put_log_alarm::PutLogAlarmOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::put_log_alarm::PutLogAlarmError,
::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
>,
> {
let input = self
.inner
.build()
.map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
let runtime_plugins = crate::operation::put_log_alarm::PutLogAlarm::operation_runtime_plugins(
self.handle.runtime_plugins.clone(),
&self.handle.conf,
self.config_override,
);
crate::operation::put_log_alarm::PutLogAlarm::orchestrate(&runtime_plugins, input).await
}
/// Consumes this builder, creating a customizable operation that can be modified before being sent.
pub fn customize(
self,
) -> crate::client::customize::CustomizableOperation<
crate::operation::put_log_alarm::PutLogAlarmOutput,
crate::operation::put_log_alarm::PutLogAlarmError,
Self,
> {
crate::client::customize::CustomizableOperation::new(self)
}
pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
self.set_config_override(::std::option::Option::Some(config_override.into()));
self
}
pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
self.config_override = config_override;
self
}
/// <p>The name for the alarm. This name must be unique within the Amazon Web Services account and Region.</p>
pub fn alarm_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.alarm_name(input.into());
self
}
/// <p>The name for the alarm. This name must be unique within the Amazon Web Services account and Region.</p>
pub fn set_alarm_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_alarm_name(input);
self
}
/// <p>The name for the alarm. This name must be unique within the Amazon Web Services account and Region.</p>
pub fn get_alarm_name(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_alarm_name()
}
/// <p>The description for the alarm.</p>
pub fn alarm_description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.alarm_description(input.into());
self
}
/// <p>The description for the alarm.</p>
pub fn set_alarm_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_alarm_description(input);
self
}
/// <p>The description for the alarm.</p>
pub fn get_alarm_description(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_alarm_description()
}
/// <p>The configuration of the underlying CloudWatch Logs scheduled query that this alarm evaluates, including the query string, log groups, schedule, and aggregation expression.</p>
pub fn scheduled_query_configuration(mut self, input: crate::types::ScheduledQueryConfiguration) -> Self {
self.inner = self.inner.scheduled_query_configuration(input);
self
}
/// <p>The configuration of the underlying CloudWatch Logs scheduled query that this alarm evaluates, including the query string, log groups, schedule, and aggregation expression.</p>
pub fn set_scheduled_query_configuration(mut self, input: ::std::option::Option<crate::types::ScheduledQueryConfiguration>) -> Self {
self.inner = self.inner.set_scheduled_query_configuration(input);
self
}
/// <p>The configuration of the underlying CloudWatch Logs scheduled query that this alarm evaluates, including the query string, log groups, schedule, and aggregation expression.</p>
pub fn get_scheduled_query_configuration(&self) -> &::std::option::Option<crate::types::ScheduledQueryConfiguration> {
self.inner.get_scheduled_query_configuration()
}
/// <p>The number of log lines from the most recent scheduled query execution to include in alarm action notifications. Valid range is 0 through 50. The default is 0, which means no log lines are included.</p>
pub fn action_log_line_count(mut self, input: i32) -> Self {
self.inner = self.inner.action_log_line_count(input);
self
}
/// <p>The number of log lines from the most recent scheduled query execution to include in alarm action notifications. Valid range is 0 through 50. The default is 0, which means no log lines are included.</p>
pub fn set_action_log_line_count(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_action_log_line_count(input);
self
}
/// <p>The number of log lines from the most recent scheduled query execution to include in alarm action notifications. Valid range is 0 through 50. The default is 0, which means no log lines are included.</p>
pub fn get_action_log_line_count(&self) -> &::std::option::Option<i32> {
self.inner.get_action_log_line_count()
}
/// <p>The Amazon Resource Name (ARN) of an IAM role that CloudWatch assumes to retrieve log events for inclusion in alarm action notifications. Required when <code>ActionLogLineCount</code> is greater than 0.</p>
pub fn action_log_line_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.action_log_line_role_arn(input.into());
self
}
/// <p>The Amazon Resource Name (ARN) of an IAM role that CloudWatch assumes to retrieve log events for inclusion in alarm action notifications. Required when <code>ActionLogLineCount</code> is greater than 0.</p>
pub fn set_action_log_line_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_action_log_line_role_arn(input);
self
}
/// <p>The Amazon Resource Name (ARN) of an IAM role that CloudWatch assumes to retrieve log events for inclusion in alarm action notifications. Required when <code>ActionLogLineCount</code> is greater than 0.</p>
pub fn get_action_log_line_role_arn(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_action_log_line_role_arn()
}
/// <p>Indicates whether actions should be executed during any changes to the alarm state. The default is <code>true</code>.</p>
pub fn actions_enabled(mut self, input: bool) -> Self {
self.inner = self.inner.actions_enabled(input);
self
}
/// <p>Indicates whether actions should be executed during any changes to the alarm state. The default is <code>true</code>.</p>
pub fn set_actions_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
self.inner = self.inner.set_actions_enabled(input);
self
}
/// <p>Indicates whether actions should be executed during any changes to the alarm state. The default is <code>true</code>.</p>
pub fn get_actions_enabled(&self) -> &::std::option::Option<bool> {
self.inner.get_actions_enabled()
}
///
/// Appends an item to `OKActions`.
///
/// To override the contents of this collection use [`set_ok_actions`](Self::set_ok_actions).
///
/// <p>The actions to execute when this alarm transitions to the <code>OK</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
pub fn ok_actions(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.ok_actions(input.into());
self
}
/// <p>The actions to execute when this alarm transitions to the <code>OK</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
pub fn set_ok_actions(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.inner = self.inner.set_ok_actions(input);
self
}
/// <p>The actions to execute when this alarm transitions to the <code>OK</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
pub fn get_ok_actions(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
self.inner.get_ok_actions()
}
///
/// Appends an item to `AlarmActions`.
///
/// To override the contents of this collection use [`set_alarm_actions`](Self::set_alarm_actions).
///
/// <p>The actions to execute when this alarm transitions to the <code>ALARM</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
/// <p><b>Systems Manager actions:</b></p>
/// <p><code>arn:aws:ssm:<i>region</i>:<i>account-id</i>:opsitem:<i>severity</i> </code></p>
pub fn alarm_actions(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.alarm_actions(input.into());
self
}
/// <p>The actions to execute when this alarm transitions to the <code>ALARM</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
/// <p><b>Systems Manager actions:</b></p>
/// <p><code>arn:aws:ssm:<i>region</i>:<i>account-id</i>:opsitem:<i>severity</i> </code></p>
pub fn set_alarm_actions(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.inner = self.inner.set_alarm_actions(input);
self
}
/// <p>The actions to execute when this alarm transitions to the <code>ALARM</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
/// <p><b>Systems Manager actions:</b></p>
/// <p><code>arn:aws:ssm:<i>region</i>:<i>account-id</i>:opsitem:<i>severity</i> </code></p>
pub fn get_alarm_actions(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
self.inner.get_alarm_actions()
}
///
/// Appends an item to `InsufficientDataActions`.
///
/// To override the contents of this collection use [`set_insufficient_data_actions`](Self::set_insufficient_data_actions).
///
/// <p>The actions to execute when this alarm transitions to the <code>INSUFFICIENT_DATA</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
pub fn insufficient_data_actions(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.insufficient_data_actions(input.into());
self
}
/// <p>The actions to execute when this alarm transitions to the <code>INSUFFICIENT_DATA</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
pub fn set_insufficient_data_actions(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.inner = self.inner.set_insufficient_data_actions(input);
self
}
/// <p>The actions to execute when this alarm transitions to the <code>INSUFFICIENT_DATA</code> state from any other state. Each action is specified as an Amazon Resource Name (ARN).</p>
/// <p>Valid Values:</p>
/// <p><b>Amazon SNS actions:</b></p>
/// <p><code>arn:aws:sns:<i>region</i>:<i>account-id</i>:<i>sns-topic-name</i> </code></p>
/// <p><b>Lambda actions:</b></p>
/// <ul>
/// <li>
/// <p>Invoke the latest version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i> </code></p></li>
/// <li>
/// <p>Invoke a specific version of a Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>version-number</i> </code></p></li>
/// <li>
/// <p>Invoke a function by using an alias Lambda function: <code>arn:aws:lambda:<i>region</i>:<i>account-id</i>:function:<i>function-name</i>:<i>alias-name</i> </code></p></li>
/// </ul>
pub fn get_insufficient_data_actions(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
self.inner.get_insufficient_data_actions()
}
/// <p>The number of most recent scheduled query results to evaluate against the threshold (the N in M-of-N evaluation). Valid range is 1 through 100.</p>
pub fn query_results_to_evaluate(mut self, input: i32) -> Self {
self.inner = self.inner.query_results_to_evaluate(input);
self
}
/// <p>The number of most recent scheduled query results to evaluate against the threshold (the N in M-of-N evaluation). Valid range is 1 through 100.</p>
pub fn set_query_results_to_evaluate(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_query_results_to_evaluate(input);
self
}
/// <p>The number of most recent scheduled query results to evaluate against the threshold (the N in M-of-N evaluation). Valid range is 1 through 100.</p>
pub fn get_query_results_to_evaluate(&self) -> &::std::option::Option<i32> {
self.inner.get_query_results_to_evaluate()
}
/// <p>The number of query results, out of the most recent <code>QueryResultsToEvaluate</code> results, that must breach the threshold to trigger the alarm to transition to <code>ALARM</code> (the M in M-of-N evaluation). Must be less than or equal to <code>QueryResultsToEvaluate</code>.</p>
pub fn query_results_to_alarm(mut self, input: i32) -> Self {
self.inner = self.inner.query_results_to_alarm(input);
self
}
/// <p>The number of query results, out of the most recent <code>QueryResultsToEvaluate</code> results, that must breach the threshold to trigger the alarm to transition to <code>ALARM</code> (the M in M-of-N evaluation). Must be less than or equal to <code>QueryResultsToEvaluate</code>.</p>
pub fn set_query_results_to_alarm(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_query_results_to_alarm(input);
self
}
/// <p>The number of query results, out of the most recent <code>QueryResultsToEvaluate</code> results, that must breach the threshold to trigger the alarm to transition to <code>ALARM</code> (the M in M-of-N evaluation). Must be less than or equal to <code>QueryResultsToEvaluate</code>.</p>
pub fn get_query_results_to_alarm(&self) -> &::std::option::Option<i32> {
self.inner.get_query_results_to_alarm()
}
/// <p>The value to compare with the aggregated query result.</p>
pub fn threshold(mut self, input: f64) -> Self {
self.inner = self.inner.threshold(input);
self
}
/// <p>The value to compare with the aggregated query result.</p>
pub fn set_threshold(mut self, input: ::std::option::Option<f64>) -> Self {
self.inner = self.inner.set_threshold(input);
self
}
/// <p>The value to compare with the aggregated query result.</p>
pub fn get_threshold(&self) -> &::std::option::Option<f64> {
self.inner.get_threshold()
}
/// <p>The arithmetic operation to use when comparing the aggregated query result and the threshold. The aggregated query result is used as the first operand. Valid values are <code>GreaterThanThreshold</code>, <code>GreaterThanOrEqualToThreshold</code>, <code>LessThanThreshold</code>, and <code>LessThanOrEqualToThreshold</code>.</p>
pub fn comparison_operator(mut self, input: crate::types::ComparisonOperator) -> Self {
self.inner = self.inner.comparison_operator(input);
self
}
/// <p>The arithmetic operation to use when comparing the aggregated query result and the threshold. The aggregated query result is used as the first operand. Valid values are <code>GreaterThanThreshold</code>, <code>GreaterThanOrEqualToThreshold</code>, <code>LessThanThreshold</code>, and <code>LessThanOrEqualToThreshold</code>.</p>
pub fn set_comparison_operator(mut self, input: ::std::option::Option<crate::types::ComparisonOperator>) -> Self {
self.inner = self.inner.set_comparison_operator(input);
self
}
/// <p>The arithmetic operation to use when comparing the aggregated query result and the threshold. The aggregated query result is used as the first operand. Valid values are <code>GreaterThanThreshold</code>, <code>GreaterThanOrEqualToThreshold</code>, <code>LessThanThreshold</code>, and <code>LessThanOrEqualToThreshold</code>.</p>
pub fn get_comparison_operator(&self) -> &::std::option::Option<crate::types::ComparisonOperator> {
self.inner.get_comparison_operator()
}
/// <p>Sets how this alarm is to handle missing data points. Valid values are <code>breaching</code>, <code>notBreaching</code>, <code>ignore</code>, and <code>missing</code>. If this parameter is omitted, the default behavior of <code>missing</code> is used.</p>
pub fn treat_missing_data(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.treat_missing_data(input.into());
self
}
/// <p>Sets how this alarm is to handle missing data points. Valid values are <code>breaching</code>, <code>notBreaching</code>, <code>ignore</code>, and <code>missing</code>. If this parameter is omitted, the default behavior of <code>missing</code> is used.</p>
pub fn set_treat_missing_data(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_treat_missing_data(input);
self
}
/// <p>Sets how this alarm is to handle missing data points. Valid values are <code>breaching</code>, <code>notBreaching</code>, <code>ignore</code>, and <code>missing</code>. If this parameter is omitted, the default behavior of <code>missing</code> is used.</p>
pub fn get_treat_missing_data(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_treat_missing_data()
}
///
/// Appends an item to `Tags`.
///
/// To override the contents of this collection use [`set_tags`](Self::set_tags).
///
/// <p>A list of key-value pairs to associate with the alarm. You can use tags to categorize and manage your alarms.</p>
pub fn tags(mut self, input: crate::types::Tag) -> Self {
self.inner = self.inner.tags(input);
self
}
/// <p>A list of key-value pairs to associate with the alarm. You can use tags to categorize and manage your alarms.</p>
pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
self.inner = self.inner.set_tags(input);
self
}
/// <p>A list of key-value pairs to associate with the alarm. You can use tags to categorize and manage your alarms.</p>
pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
self.inner.get_tags()
}
}