pub struct CreatePracticeRunConfigurationFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to CreatePracticeRunConfiguration
.
A practice run configuration for zonal autoshift is required when you enable zonal autoshift. A practice run configuration includes specifications for blocked dates and blocked time windows, and for Amazon CloudWatch alarms that you create to use with practice runs. The alarms that you specify are an outcome alarm, to monitor application health during practice runs and, optionally, a blocking alarm, to block practice runs from starting.
When a resource has a practice run configuration, ARC starts zonal shifts for the resource weekly, to shift traffic for practice runs. Practice runs help you to ensure that shifting away traffic from an Availability Zone during an autoshift is safe for your application.
For more information, see Considerations when you configure zonal autoshift in the Amazon Application Recovery Controller Developer Guide.
Implementations§
Source§impl CreatePracticeRunConfigurationFluentBuilder
impl CreatePracticeRunConfigurationFluentBuilder
Sourcepub fn as_input(&self) -> &CreatePracticeRunConfigurationInputBuilder
pub fn as_input(&self) -> &CreatePracticeRunConfigurationInputBuilder
Access the CreatePracticeRunConfiguration as a reference.
Sourcepub async fn send(
self,
) -> Result<CreatePracticeRunConfigurationOutput, SdkError<CreatePracticeRunConfigurationError, HttpResponse>>
pub async fn send( self, ) -> Result<CreatePracticeRunConfigurationOutput, SdkError<CreatePracticeRunConfigurationError, HttpResponse>>
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, which can be set when configuring the client.
Sourcepub fn customize(
self,
) -> CustomizableOperation<CreatePracticeRunConfigurationOutput, CreatePracticeRunConfigurationError, Self>
pub fn customize( self, ) -> CustomizableOperation<CreatePracticeRunConfigurationOutput, CreatePracticeRunConfigurationError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
Sourcepub fn resource_identifier(self, input: impl Into<String>) -> Self
pub fn resource_identifier(self, input: impl Into<String>) -> Self
The identifier of the resource that Amazon Web Services shifts traffic for with a practice run zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.
Amazon Application Recovery Controller currently supports enabling the following resources for zonal shift and zonal autoshift:
Sourcepub fn set_resource_identifier(self, input: Option<String>) -> Self
pub fn set_resource_identifier(self, input: Option<String>) -> Self
The identifier of the resource that Amazon Web Services shifts traffic for with a practice run zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.
Amazon Application Recovery Controller currently supports enabling the following resources for zonal shift and zonal autoshift:
Sourcepub fn get_resource_identifier(&self) -> &Option<String>
pub fn get_resource_identifier(&self) -> &Option<String>
The identifier of the resource that Amazon Web Services shifts traffic for with a practice run zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.
Amazon Application Recovery Controller currently supports enabling the following resources for zonal shift and zonal autoshift:
Sourcepub fn blocked_windows(self, input: impl Into<String>) -> Self
pub fn blocked_windows(self, input: impl Into<String>) -> Self
Appends an item to blockedWindows
.
To override the contents of this collection use set_blocked_windows
.
Optionally, you can block ARC from starting practice runs for specific windows of days and times.
The format for blocked windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple blocked windows with spaces.
For example, say you run business report summaries three days a week. For this scenario, you could set the following recurring days and times as blocked windows, for example: Mon:00:00-Mon:10:00 Wed-20:30-Wed:21:30 Fri-20:30-Fri:21:30
.
The blockedWindows
have to start and end on the same day. Windows that span multiple days aren't supported.
Sourcepub fn set_blocked_windows(self, input: Option<Vec<String>>) -> Self
pub fn set_blocked_windows(self, input: Option<Vec<String>>) -> Self
Optionally, you can block ARC from starting practice runs for specific windows of days and times.
The format for blocked windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple blocked windows with spaces.
For example, say you run business report summaries three days a week. For this scenario, you could set the following recurring days and times as blocked windows, for example: Mon:00:00-Mon:10:00 Wed-20:30-Wed:21:30 Fri-20:30-Fri:21:30
.
The blockedWindows
have to start and end on the same day. Windows that span multiple days aren't supported.
Sourcepub fn get_blocked_windows(&self) -> &Option<Vec<String>>
pub fn get_blocked_windows(&self) -> &Option<Vec<String>>
Optionally, you can block ARC from starting practice runs for specific windows of days and times.
The format for blocked windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple blocked windows with spaces.
For example, say you run business report summaries three days a week. For this scenario, you could set the following recurring days and times as blocked windows, for example: Mon:00:00-Mon:10:00 Wed-20:30-Wed:21:30 Fri-20:30-Fri:21:30
.
The blockedWindows
have to start and end on the same day. Windows that span multiple days aren't supported.
Sourcepub fn blocked_dates(self, input: impl Into<String>) -> Self
pub fn blocked_dates(self, input: impl Into<String>) -> Self
Appends an item to blockedDates
.
To override the contents of this collection use set_blocked_dates
.
Optionally, you can block ARC from starting practice runs for a resource on specific calendar dates.
The format for blocked dates is: YYYY-MM-DD. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Separate multiple blocked dates with spaces.
For example, if you have an application update scheduled to launch on May 1, 2024, and you don't want practice runs to shift traffic away at that time, you could set a blocked date for 2024-05-01
.
Sourcepub fn set_blocked_dates(self, input: Option<Vec<String>>) -> Self
pub fn set_blocked_dates(self, input: Option<Vec<String>>) -> Self
Optionally, you can block ARC from starting practice runs for a resource on specific calendar dates.
The format for blocked dates is: YYYY-MM-DD. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Separate multiple blocked dates with spaces.
For example, if you have an application update scheduled to launch on May 1, 2024, and you don't want practice runs to shift traffic away at that time, you could set a blocked date for 2024-05-01
.
Sourcepub fn get_blocked_dates(&self) -> &Option<Vec<String>>
pub fn get_blocked_dates(&self) -> &Option<Vec<String>>
Optionally, you can block ARC from starting practice runs for a resource on specific calendar dates.
The format for blocked dates is: YYYY-MM-DD. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Separate multiple blocked dates with spaces.
For example, if you have an application update scheduled to launch on May 1, 2024, and you don't want practice runs to shift traffic away at that time, you could set a blocked date for 2024-05-01
.
Sourcepub fn blocking_alarms(self, input: ControlCondition) -> Self
pub fn blocking_alarms(self, input: ControlCondition) -> Self
Appends an item to blockingAlarms
.
To override the contents of this collection use set_blocking_alarms
.
Blocking alarms for practice runs are optional alarms that you can specify that block practice runs when one or more of the alarms is in an ALARM
state.
Sourcepub fn set_blocking_alarms(self, input: Option<Vec<ControlCondition>>) -> Self
pub fn set_blocking_alarms(self, input: Option<Vec<ControlCondition>>) -> Self
Blocking alarms for practice runs are optional alarms that you can specify that block practice runs when one or more of the alarms is in an ALARM
state.
Sourcepub fn get_blocking_alarms(&self) -> &Option<Vec<ControlCondition>>
pub fn get_blocking_alarms(&self) -> &Option<Vec<ControlCondition>>
Blocking alarms for practice runs are optional alarms that you can specify that block practice runs when one or more of the alarms is in an ALARM
state.
Sourcepub fn allowed_windows(self, input: impl Into<String>) -> Self
pub fn allowed_windows(self, input: impl Into<String>) -> Self
Appends an item to allowedWindows
.
To override the contents of this collection use set_allowed_windows
.
Optionally, you can allow ARC to start practice runs for specific windows of days and times.
The format for allowed windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple allowed windows with spaces.
For example, say you want to allow practice runs only on Wednesdays and Fridays from noon to 5 p.m. For this scenario, you could set the following recurring days and times as allowed windows, for example: Wed-12:00-Wed:17:00 Fri-12:00-Fri:17:00
.
The allowedWindows
have to start and end on the same day. Windows that span multiple days aren't supported.
Sourcepub fn set_allowed_windows(self, input: Option<Vec<String>>) -> Self
pub fn set_allowed_windows(self, input: Option<Vec<String>>) -> Self
Optionally, you can allow ARC to start practice runs for specific windows of days and times.
The format for allowed windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple allowed windows with spaces.
For example, say you want to allow practice runs only on Wednesdays and Fridays from noon to 5 p.m. For this scenario, you could set the following recurring days and times as allowed windows, for example: Wed-12:00-Wed:17:00 Fri-12:00-Fri:17:00
.
The allowedWindows
have to start and end on the same day. Windows that span multiple days aren't supported.
Sourcepub fn get_allowed_windows(&self) -> &Option<Vec<String>>
pub fn get_allowed_windows(&self) -> &Option<Vec<String>>
Optionally, you can allow ARC to start practice runs for specific windows of days and times.
The format for allowed windows is: DAY:HH:SS-DAY:HH:SS. Keep in mind, when you specify dates, that dates and times for practice runs are in UTC. Also, be aware of potential time adjustments that might be required for daylight saving time differences. Separate multiple allowed windows with spaces.
For example, say you want to allow practice runs only on Wednesdays and Fridays from noon to 5 p.m. For this scenario, you could set the following recurring days and times as allowed windows, for example: Wed-12:00-Wed:17:00 Fri-12:00-Fri:17:00
.
The allowedWindows
have to start and end on the same day. Windows that span multiple days aren't supported.
Sourcepub fn outcome_alarms(self, input: ControlCondition) -> Self
pub fn outcome_alarms(self, input: ControlCondition) -> Self
Appends an item to outcomeAlarms
.
To override the contents of this collection use set_outcome_alarms
.
Outcome alarms for practice runs are alarms that you specify that end a practice run when one or more of the alarms is in an ALARM
state.
Configure one or more of these alarms to monitor the health of your application when traffic is shifted away from an Availability Zone during each practice run. You should configure these alarms to go into an ALARM
state if you want to stop a zonal shift, to let traffic for the resource return to the original Availability Zone.
Sourcepub fn set_outcome_alarms(self, input: Option<Vec<ControlCondition>>) -> Self
pub fn set_outcome_alarms(self, input: Option<Vec<ControlCondition>>) -> Self
Outcome alarms for practice runs are alarms that you specify that end a practice run when one or more of the alarms is in an ALARM
state.
Configure one or more of these alarms to monitor the health of your application when traffic is shifted away from an Availability Zone during each practice run. You should configure these alarms to go into an ALARM
state if you want to stop a zonal shift, to let traffic for the resource return to the original Availability Zone.
Sourcepub fn get_outcome_alarms(&self) -> &Option<Vec<ControlCondition>>
pub fn get_outcome_alarms(&self) -> &Option<Vec<ControlCondition>>
Outcome alarms for practice runs are alarms that you specify that end a practice run when one or more of the alarms is in an ALARM
state.
Configure one or more of these alarms to monitor the health of your application when traffic is shifted away from an Availability Zone during each practice run. You should configure these alarms to go into an ALARM
state if you want to stop a zonal shift, to let traffic for the resource return to the original Availability Zone.
Trait Implementations§
Source§impl Clone for CreatePracticeRunConfigurationFluentBuilder
impl Clone for CreatePracticeRunConfigurationFluentBuilder
Source§fn clone(&self) -> CreatePracticeRunConfigurationFluentBuilder
fn clone(&self) -> CreatePracticeRunConfigurationFluentBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for CreatePracticeRunConfigurationFluentBuilder
impl !RefUnwindSafe for CreatePracticeRunConfigurationFluentBuilder
impl Send for CreatePracticeRunConfigurationFluentBuilder
impl Sync for CreatePracticeRunConfigurationFluentBuilder
impl Unpin for CreatePracticeRunConfigurationFluentBuilder
impl !UnwindSafe for CreatePracticeRunConfigurationFluentBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);