Copyright | (c) 2013-2023 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Synopsis
- data AssertionRule = AssertionRule' {
- status :: Status
- controlPanelArn :: Text
- safetyRuleArn :: Text
- assertedControls :: [Text]
- ruleConfig :: RuleConfig
- waitPeriodMs :: Int
- name :: Text
- newAssertionRule :: Status -> Text -> Text -> RuleConfig -> Int -> Text -> AssertionRule
- assertionRule_status :: Lens' AssertionRule Status
- assertionRule_controlPanelArn :: Lens' AssertionRule Text
- assertionRule_safetyRuleArn :: Lens' AssertionRule Text
- assertionRule_assertedControls :: Lens' AssertionRule [Text]
- assertionRule_ruleConfig :: Lens' AssertionRule RuleConfig
- assertionRule_waitPeriodMs :: Lens' AssertionRule Int
- assertionRule_name :: Lens' AssertionRule Text
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.
AssertionRule' | |
|
Instances
:: Status | |
-> Text | |
-> Text | |
-> RuleConfig | |
-> Int | |
-> Text | |
-> AssertionRule |
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.