amazonka-route53-recovery-control-config-2.0: Amazon Route53 Recovery Control Config SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

Description

 
Synopsis

Documentation

data AssertionRule Source #

An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is On after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario.

See: newAssertionRule smart constructor.

Constructors

AssertionRule' 

Fields

  • status :: Status

    The deployment status of an assertion rule. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.

  • controlPanelArn :: Text

    The Amazon Resource Name (ARN) of the control panel.

  • safetyRuleArn :: Text

    The Amazon Resource Name (ARN) of the assertion rule.

  • assertedControls :: [Text]

    The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three Amazon Web Services Regions.

  • ruleConfig :: RuleConfig

    The criteria that you set for specific assertion routing controls (AssertedControls) that designate how many routing control states must be ON as the result of a transaction. For example, if you have three assertion routing controls, you might specify ATLEAST 2 for your rule configuration. This means that at least two assertion routing control states must be ON, so that at least two Amazon Web Services Regions have traffic flowing to them.

  • waitPeriodMs :: Int

    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.

  • name :: Text

    Name of the assertion rule. You can use any non-white space character in the name.

Instances

Instances details
FromJSON AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

Generic AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

Associated Types

type Rep AssertionRule :: Type -> Type #

Read AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

Show AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

NFData AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

Methods

rnf :: AssertionRule -> () #

Eq AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

Hashable AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

type Rep AssertionRule Source # 
Instance details

Defined in Amazonka.Route53RecoveryControlConfig.Types.AssertionRule

type Rep AssertionRule = D1 ('MetaData "AssertionRule" "Amazonka.Route53RecoveryControlConfig.Types.AssertionRule" "amazonka-route53-recovery-control-config-2.0-EdxrPdjlafWED9VxY6nLf4" 'False) (C1 ('MetaCons "AssertionRule'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "status") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Status) :*: (S1 ('MetaSel ('Just "controlPanelArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "safetyRuleArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))) :*: ((S1 ('MetaSel ('Just "assertedControls") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Text]) :*: S1 ('MetaSel ('Just "ruleConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 RuleConfig)) :*: (S1 ('MetaSel ('Just "waitPeriodMs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))))

newAssertionRule Source #

Create a value of AssertionRule with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:status:AssertionRule', assertionRule_status - The deployment status of an assertion rule. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.

$sel:controlPanelArn:AssertionRule', assertionRule_controlPanelArn - The Amazon Resource Name (ARN) of the control panel.

$sel:safetyRuleArn:AssertionRule', assertionRule_safetyRuleArn - The Amazon Resource Name (ARN) of the assertion rule.

$sel:assertedControls:AssertionRule', assertionRule_assertedControls - The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three Amazon Web Services Regions.

$sel:ruleConfig:AssertionRule', assertionRule_ruleConfig - The criteria that you set for specific assertion routing controls (AssertedControls) that designate how many routing control states must be ON as the result of a transaction. For example, if you have three assertion routing controls, you might specify ATLEAST 2 for your rule configuration. This means that at least two assertion routing control states must be ON, so that at least two Amazon Web Services Regions have traffic flowing to them.

$sel:waitPeriodMs:AssertionRule', assertionRule_waitPeriodMs - An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.

$sel:name:AssertionRule', assertionRule_name - Name of the assertion rule. You can use any non-white space character in the name.

assertionRule_status :: Lens' AssertionRule Status Source #

The deployment status of an assertion rule. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.

assertionRule_controlPanelArn :: Lens' AssertionRule Text Source #

The Amazon Resource Name (ARN) of the control panel.

assertionRule_safetyRuleArn :: Lens' AssertionRule Text Source #

The Amazon Resource Name (ARN) of the assertion rule.

assertionRule_assertedControls :: Lens' AssertionRule [Text] Source #

The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three Amazon Web Services Regions.

assertionRule_ruleConfig :: Lens' AssertionRule RuleConfig Source #

The criteria that you set for specific assertion routing controls (AssertedControls) that designate how many routing control states must be ON as the result of a transaction. For example, if you have three assertion routing controls, you might specify ATLEAST 2 for your rule configuration. This means that at least two assertion routing control states must be ON, so that at least two Amazon Web Services Regions have traffic flowing to them.

assertionRule_waitPeriodMs :: Lens' AssertionRule Int Source #

An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.

assertionRule_name :: Lens' AssertionRule Text Source #

Name of the assertion rule. You can use any non-white space character in the name.