Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Synopsis
- defaultService :: Service
- _ValidationException :: AsError a => Getting (First ServiceError) a ServiceError
- _AccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError
- _ConflictException :: AsError a => Getting (First ServiceError) a ServiceError
- _ServiceQuotaExceededException :: AsError a => Getting (First ServiceError) a ServiceError
- _ThrottlingException :: AsError a => Getting (First ServiceError) a ServiceError
- _InternalServerException :: AsError a => Getting (First ServiceError) a ServiceError
- _ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
- newtype RuleType where
- RuleType' {
- fromRuleType :: Text
- pattern RuleType_AND :: RuleType
- pattern RuleType_ATLEAST :: RuleType
- pattern RuleType_OR :: RuleType
- RuleType' {
- newtype Status where
- Status' {
- fromStatus :: Text
- pattern Status_DEPLOYED :: Status
- pattern Status_PENDING :: Status
- pattern Status_PENDING_DELETION :: Status
- Status' {
- 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
- data AssertionRuleUpdate = AssertionRuleUpdate' {
- safetyRuleArn :: Text
- waitPeriodMs :: Int
- name :: Text
- newAssertionRuleUpdate :: Text -> Int -> Text -> AssertionRuleUpdate
- assertionRuleUpdate_safetyRuleArn :: Lens' AssertionRuleUpdate Text
- assertionRuleUpdate_waitPeriodMs :: Lens' AssertionRuleUpdate Int
- assertionRuleUpdate_name :: Lens' AssertionRuleUpdate Text
- data Cluster = Cluster' {
- status :: Maybe Status
- clusterArn :: Maybe Text
- name :: Maybe Text
- clusterEndpoints :: Maybe [ClusterEndpoint]
- newCluster :: Cluster
- cluster_status :: Lens' Cluster (Maybe Status)
- cluster_clusterArn :: Lens' Cluster (Maybe Text)
- cluster_name :: Lens' Cluster (Maybe Text)
- cluster_clusterEndpoints :: Lens' Cluster (Maybe [ClusterEndpoint])
- data ClusterEndpoint = ClusterEndpoint' {}
- newClusterEndpoint :: ClusterEndpoint
- clusterEndpoint_region :: Lens' ClusterEndpoint (Maybe Text)
- clusterEndpoint_endpoint :: Lens' ClusterEndpoint (Maybe Text)
- data ControlPanel = ControlPanel' {}
- newControlPanel :: ControlPanel
- controlPanel_status :: Lens' ControlPanel (Maybe Status)
- controlPanel_controlPanelArn :: Lens' ControlPanel (Maybe Text)
- controlPanel_clusterArn :: Lens' ControlPanel (Maybe Text)
- controlPanel_routingControlCount :: Lens' ControlPanel (Maybe Int)
- controlPanel_name :: Lens' ControlPanel (Maybe Text)
- controlPanel_defaultControlPanel :: Lens' ControlPanel (Maybe Bool)
- data GatingRule = GatingRule' {
- status :: Status
- targetControls :: [Text]
- controlPanelArn :: Text
- safetyRuleArn :: Text
- gatingControls :: [Text]
- ruleConfig :: RuleConfig
- waitPeriodMs :: Int
- name :: Text
- newGatingRule :: Status -> Text -> Text -> RuleConfig -> Int -> Text -> GatingRule
- gatingRule_status :: Lens' GatingRule Status
- gatingRule_targetControls :: Lens' GatingRule [Text]
- gatingRule_controlPanelArn :: Lens' GatingRule Text
- gatingRule_safetyRuleArn :: Lens' GatingRule Text
- gatingRule_gatingControls :: Lens' GatingRule [Text]
- gatingRule_ruleConfig :: Lens' GatingRule RuleConfig
- gatingRule_waitPeriodMs :: Lens' GatingRule Int
- gatingRule_name :: Lens' GatingRule Text
- data GatingRuleUpdate = GatingRuleUpdate' {
- safetyRuleArn :: Text
- waitPeriodMs :: Int
- name :: Text
- newGatingRuleUpdate :: Text -> Int -> Text -> GatingRuleUpdate
- gatingRuleUpdate_safetyRuleArn :: Lens' GatingRuleUpdate Text
- gatingRuleUpdate_waitPeriodMs :: Lens' GatingRuleUpdate Int
- gatingRuleUpdate_name :: Lens' GatingRuleUpdate Text
- data NewAssertionRule = NewAssertionRule' {
- controlPanelArn :: Text
- assertedControls :: [Text]
- ruleConfig :: RuleConfig
- waitPeriodMs :: Int
- name :: Text
- newNewAssertionRule :: Text -> RuleConfig -> Int -> Text -> NewAssertionRule
- newAssertionRule_controlPanelArn :: Lens' NewAssertionRule Text
- newAssertionRule_assertedControls :: Lens' NewAssertionRule [Text]
- newAssertionRule_ruleConfig :: Lens' NewAssertionRule RuleConfig
- newAssertionRule_waitPeriodMs :: Lens' NewAssertionRule Int
- newAssertionRule_name :: Lens' NewAssertionRule Text
- data NewGatingRule = NewGatingRule' {
- targetControls :: [Text]
- controlPanelArn :: Text
- gatingControls :: [Text]
- ruleConfig :: RuleConfig
- waitPeriodMs :: Int
- name :: Text
- newNewGatingRule :: Text -> RuleConfig -> Int -> Text -> NewGatingRule
- newGatingRule_targetControls :: Lens' NewGatingRule [Text]
- newGatingRule_controlPanelArn :: Lens' NewGatingRule Text
- newGatingRule_gatingControls :: Lens' NewGatingRule [Text]
- newGatingRule_ruleConfig :: Lens' NewGatingRule RuleConfig
- newGatingRule_waitPeriodMs :: Lens' NewGatingRule Int
- newGatingRule_name :: Lens' NewGatingRule Text
- data RoutingControl = RoutingControl' {}
- newRoutingControl :: RoutingControl
- routingControl_status :: Lens' RoutingControl (Maybe Status)
- routingControl_controlPanelArn :: Lens' RoutingControl (Maybe Text)
- routingControl_name :: Lens' RoutingControl (Maybe Text)
- routingControl_routingControlArn :: Lens' RoutingControl (Maybe Text)
- data Rule = Rule' {}
- newRule :: Rule
- rule_gating :: Lens' Rule (Maybe GatingRule)
- rule_assertion :: Lens' Rule (Maybe AssertionRule)
- data RuleConfig = RuleConfig' {}
- newRuleConfig :: RuleType -> Bool -> Int -> RuleConfig
- ruleConfig_type :: Lens' RuleConfig RuleType
- ruleConfig_inverted :: Lens' RuleConfig Bool
- ruleConfig_threshold :: Lens' RuleConfig Int
Service Configuration
defaultService :: Service Source #
API version 2020-11-02
of the Amazon Route53 Recovery Control Config SDK configuration.
Errors
_ValidationException :: AsError a => Getting (First ServiceError) a ServiceError Source #
400 response - Multiple causes. For example, you might have a malformed query string and input parameter might be out of range, or you used parameters together incorrectly.
_AccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError Source #
403 response - AccessDeniedException. You do not have sufficient access to perform this action.
_ConflictException :: AsError a => Getting (First ServiceError) a ServiceError Source #
409 response - ConflictException.
_ServiceQuotaExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source #
402 response
_ThrottlingException :: AsError a => Getting (First ServiceError) a ServiceError Source #
429 response - ThrottlingException.
_InternalServerException :: AsError a => Getting (First ServiceError) a ServiceError Source #
500 response - InternalServiceError. Temporary service error. Retry the request.
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source #
404 response - The query string contains a syntax error or resource not found.
RuleType
An enumerated type that determines how the evaluated rules are processed. RuleType can be one of the following:
ATLEAST - At least N routing controls must be set. You specify N as the Threshold in the rule configuration.
AND - All routing controls must be set. This is a shortcut for "At least N," where N is the total number of controls in the rule.
OR - Any control must be set. This is a shortcut for "At least N," where N is 1.
pattern RuleType_AND :: RuleType | |
pattern RuleType_ATLEAST :: RuleType | |
pattern RuleType_OR :: RuleType |
Instances
Status
The deployment status of a resource. Status can be one of the following:
PENDING: Amazon Route 53 Application Recovery Controller is creating the resource.
DEPLOYED: The resource is deployed and ready to use.
PENDING_DELETION: Amazon Route 53 Application Recovery Controller is deleting the resource.
pattern Status_DEPLOYED :: Status | |
pattern Status_PENDING :: Status | |
pattern Status_PENDING_DELETION :: Status |
Instances
AssertionRule
data AssertionRule Source #
An assertion rule enforces that, when a routing control state is changed, the criteria set by the rule configuration is met. Otherwise, the change to the routing control is not accepted.
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 controls (routing
controls) that designate how many controls must be enabled as the result
of a transaction. For example, if you have three assertion controls, you
might specify atleast 2 for your rule configuration. This means that at
least two assertion controls must be enabled, so that at least two
Amazon Web Services Regions are enabled.
$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 controls (routing controls) that designate how many controls must be enabled as the result of a transaction. For example, if you have three assertion controls, you might specify atleast 2 for your rule configuration. This means that at least two assertion controls must be enabled, so that at least two Amazon Web Services Regions are enabled.
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.
AssertionRuleUpdate
data AssertionRuleUpdate Source #
An update to an assertion rule. You can update the name or the evaluation period (wait period). If you don't specify one of the items to update, the item is unchanged.
See: newAssertionRuleUpdate
smart constructor.
AssertionRuleUpdate' | |
|
Instances
newAssertionRuleUpdate Source #
:: Text | |
-> Int | |
-> Text | |
-> AssertionRuleUpdate |
Create a value of AssertionRuleUpdate
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:safetyRuleArn:AssertionRuleUpdate'
, assertionRuleUpdate_safetyRuleArn
- The Amazon Resource Name (ARN) of the assertion rule.
$sel:waitPeriodMs:AssertionRuleUpdate'
, assertionRuleUpdate_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:AssertionRuleUpdate'
, assertionRuleUpdate_name
- The name of the assertion rule. You can use any non-white space
character in the name.
assertionRuleUpdate_safetyRuleArn :: Lens' AssertionRuleUpdate Text Source #
The Amazon Resource Name (ARN) of the assertion rule.
assertionRuleUpdate_waitPeriodMs :: Lens' AssertionRuleUpdate 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.
assertionRuleUpdate_name :: Lens' AssertionRuleUpdate Text Source #
The name of the assertion rule. You can use any non-white space character in the name.
Cluster
A cluster is a set of five consensus-forming Regional endpoints that represent the infrastructure that hosts your routing controls. Typically, you host together on one cluster all of the routing controls for your applications.
See: newCluster
smart constructor.
Cluster' | |
|
Instances
Eq Cluster Source # | |
Read Cluster Source # | |
Show Cluster Source # | |
Generic Cluster Source # | |
NFData Cluster Source # | |
Hashable Cluster Source # | |
FromJSON Cluster Source # | |
type Rep Cluster Source # | |
Defined in Amazonka.Route53RecoveryControlConfig.Types.Cluster type Rep Cluster = D1 ('MetaData "Cluster" "Amazonka.Route53RecoveryControlConfig.Types.Cluster" "libZSservicesZSamazonka-route53-recovery-control-configZSamazonka-route53-recovery-control-config" 'False) (C1 ('MetaCons "Cluster'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "status") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Status)) :*: S1 ('MetaSel ('Just "clusterArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "clusterEndpoints") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [ClusterEndpoint]))))) |
newCluster :: Cluster Source #
Create a value of Cluster
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:Cluster'
, cluster_status
- Deployment status of a resource. Status can be one of the following:
PENDING, DEPLOYED, PENDING_DELETION.
$sel:clusterArn:Cluster'
, cluster_clusterArn
- The Amazon Resource Name (ARN) of the cluster.
$sel:name:Cluster'
, cluster_name
- The name of the cluster.
$sel:clusterEndpoints:Cluster'
, cluster_clusterEndpoints
- Endpoints for a cluster. Specify one of these endpoints when you want to
set or retrieve a routing control state in the cluster.
To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Cluster (Data Plane) Actions.
cluster_status :: Lens' Cluster (Maybe Status) Source #
Deployment status of a resource. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
cluster_clusterArn :: Lens' Cluster (Maybe Text) Source #
The Amazon Resource Name (ARN) of the cluster.
cluster_clusterEndpoints :: Lens' Cluster (Maybe [ClusterEndpoint]) Source #
Endpoints for a cluster. Specify one of these endpoints when you want to set or retrieve a routing control state in the cluster.
To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Cluster (Data Plane) Actions.
ClusterEndpoint
data ClusterEndpoint Source #
A cluster endpoint. Specify an endpoint when you want to set or retrieve a routing control state in the cluster.
See: newClusterEndpoint
smart constructor.
ClusterEndpoint' | |
|
Instances
newClusterEndpoint :: ClusterEndpoint Source #
Create a value of ClusterEndpoint
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:region:ClusterEndpoint'
, clusterEndpoint_region
- The Amazon Web Services Region for a cluster endpoint.
$sel:endpoint:ClusterEndpoint'
, clusterEndpoint_endpoint
- A cluster endpoint. Specify an endpoint and Amazon Web Services Region
when you want to set or retrieve a routing control state in the cluster.
To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Cluster (Data Plane) Actions.
clusterEndpoint_region :: Lens' ClusterEndpoint (Maybe Text) Source #
The Amazon Web Services Region for a cluster endpoint.
clusterEndpoint_endpoint :: Lens' ClusterEndpoint (Maybe Text) Source #
A cluster endpoint. Specify an endpoint and Amazon Web Services Region when you want to set or retrieve a routing control state in the cluster.
To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Cluster (Data Plane) Actions.
ControlPanel
data ControlPanel Source #
A control panel represents a group of routing controls that can be changed together in a single transaction.
See: newControlPanel
smart constructor.
ControlPanel' | |
|
Instances
newControlPanel :: ControlPanel Source #
Create a value of ControlPanel
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:ControlPanel'
, controlPanel_status
- The deployment status of control panel. Status can be one of the
following: PENDING, DEPLOYED, PENDING_DELETION.
$sel:controlPanelArn:ControlPanel'
, controlPanel_controlPanelArn
- The Amazon Resource Name (ARN) of the control panel.
$sel:clusterArn:ControlPanel'
, controlPanel_clusterArn
- The Amazon Resource Name (ARN) of the cluster that includes the control
panel.
$sel:routingControlCount:ControlPanel'
, controlPanel_routingControlCount
- The number of routing controls in the control panel.
$sel:name:ControlPanel'
, controlPanel_name
- The name of the control panel. You can use any non-white space character
in the name.
$sel:defaultControlPanel:ControlPanel'
, controlPanel_defaultControlPanel
- A flag that Amazon Route 53 Application Recovery Controller sets to true
to designate the default control panel for a cluster. When you create a
cluster, Amazon Route 53 Application Recovery Controller creates a
control panel, and sets this flag for that control panel. If you create
a control panel yourself, this flag is set to false.
controlPanel_status :: Lens' ControlPanel (Maybe Status) Source #
The deployment status of control panel. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
controlPanel_controlPanelArn :: Lens' ControlPanel (Maybe Text) Source #
The Amazon Resource Name (ARN) of the control panel.
controlPanel_clusterArn :: Lens' ControlPanel (Maybe Text) Source #
The Amazon Resource Name (ARN) of the cluster that includes the control panel.
controlPanel_routingControlCount :: Lens' ControlPanel (Maybe Int) Source #
The number of routing controls in the control panel.
controlPanel_name :: Lens' ControlPanel (Maybe Text) Source #
The name of the control panel. You can use any non-white space character in the name.
controlPanel_defaultControlPanel :: Lens' ControlPanel (Maybe Bool) Source #
A flag that Amazon Route 53 Application Recovery Controller sets to true to designate the default control panel for a cluster. When you create a cluster, Amazon Route 53 Application Recovery Controller creates a control panel, and sets this flag for that control panel. If you create a control panel yourself, this flag is set to false.
GatingRule
data GatingRule Source #
A gating rule verifies that a set of gating controls evaluates as true, based on a rule configuration that you specify. If the gating rule evaluates to true, Amazon Route 53 Application Recovery Controller allows a set of routing control state changes to run and complete against the set of target controls.
See: newGatingRule
smart constructor.
GatingRule' | |
|
Instances
:: Status | |
-> Text | |
-> Text | |
-> RuleConfig | |
-> Int | |
-> Text | |
-> GatingRule |
Create a value of GatingRule
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:GatingRule'
, gatingRule_status
- The deployment status of a gating rule. Status can be one of the
following: PENDING, DEPLOYED, PENDING_DELETION.
$sel:targetControls:GatingRule'
, gatingRule_targetControls
- Routing controls that can only be set or unset if the specified
RuleConfig evaluates to true for the specified GatingControls. For
example, say you have three gating controls, one for each of three
Amazon Web Services Regions. Now you specify ATLEAST 2 as your
RuleConfig. With these settings, you can only change (set or unset) the
routing controls that you have specified as TargetControls if that rule
evaluates to true.
In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
$sel:controlPanelArn:GatingRule'
, gatingRule_controlPanelArn
- The Amazon Resource Name (ARN) of the control panel.
$sel:safetyRuleArn:GatingRule'
, gatingRule_safetyRuleArn
- The Amazon Resource Name (ARN) of the gating rule.
$sel:gatingControls:GatingRule'
, gatingRule_gatingControls
- The gating controls for the gating rule. That is, routing controls that
are evaluated by the rule configuration that you specify.
$sel:ruleConfig:GatingRule'
, gatingRule_ruleConfig
- The criteria that you set for specific gating controls (routing
controls) that designates how many controls must be enabled to allow you
to change (set or unset) the target controls.
$sel:waitPeriodMs:GatingRule'
, gatingRule_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:GatingRule'
, gatingRule_name
- The name for the gating rule.
gatingRule_status :: Lens' GatingRule Status Source #
The deployment status of a gating rule. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
gatingRule_targetControls :: Lens' GatingRule [Text] Source #
Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three Amazon Web Services Regions. Now you specify ATLEAST 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true.
In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
gatingRule_controlPanelArn :: Lens' GatingRule Text Source #
The Amazon Resource Name (ARN) of the control panel.
gatingRule_safetyRuleArn :: Lens' GatingRule Text Source #
The Amazon Resource Name (ARN) of the gating rule.
gatingRule_gatingControls :: Lens' GatingRule [Text] Source #
The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
gatingRule_ruleConfig :: Lens' GatingRule RuleConfig Source #
The criteria that you set for specific gating controls (routing controls) that designates how many controls must be enabled to allow you to change (set or unset) the target controls.
gatingRule_waitPeriodMs :: Lens' GatingRule 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.
gatingRule_name :: Lens' GatingRule Text Source #
The name for the gating rule.
GatingRuleUpdate
data GatingRuleUpdate Source #
Update to a gating rule. You can update the name or the evaluation period (wait period). If you don't specify one of the items to update, the item is unchanged.
See: newGatingRuleUpdate
smart constructor.
GatingRuleUpdate' | |
|
Instances
:: Text | |
-> Int | |
-> Text | |
-> GatingRuleUpdate |
Create a value of GatingRuleUpdate
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:safetyRuleArn:GatingRuleUpdate'
, gatingRuleUpdate_safetyRuleArn
- The Amazon Resource Name (ARN) of the gating rule.
$sel:waitPeriodMs:GatingRuleUpdate'
, gatingRuleUpdate_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:GatingRuleUpdate'
, gatingRuleUpdate_name
- The name for the gating rule.
gatingRuleUpdate_safetyRuleArn :: Lens' GatingRuleUpdate Text Source #
The Amazon Resource Name (ARN) of the gating rule.
gatingRuleUpdate_waitPeriodMs :: Lens' GatingRuleUpdate 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.
gatingRuleUpdate_name :: Lens' GatingRuleUpdate Text Source #
The name for the gating rule.
NewAssertionRule
data NewAssertionRule Source #
A new assertion rule for a control panel.
See: newNewAssertionRule
smart constructor.
NewAssertionRule' | |
|
Instances
:: Text | |
-> RuleConfig | |
-> Int | |
-> Text | |
-> NewAssertionRule |
Create a value of NewAssertionRule
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:controlPanelArn:NewAssertionRule'
, newAssertionRule_controlPanelArn
- The Amazon Resource Name (ARN) for the control panel.
$sel:assertedControls:NewAssertionRule'
, newAssertionRule_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:NewAssertionRule'
, newAssertionRule_ruleConfig
- The criteria that you set for specific assertion controls (routing
controls) that designate how many controls must be enabled as the result
of a transaction. For example, if you have three assertion controls, you
might specify atleast 2 for your rule configuration. This means that at
least two assertion controls must be enabled, so that at least two
Amazon Web Services Regions are enabled.
$sel:waitPeriodMs:NewAssertionRule'
, newAssertionRule_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:NewAssertionRule'
, newAssertionRule_name
- The name of the assertion rule. You can use any non-white space
character in the name.
newAssertionRule_controlPanelArn :: Lens' NewAssertionRule Text Source #
The Amazon Resource Name (ARN) for the control panel.
newAssertionRule_assertedControls :: Lens' NewAssertionRule [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.
newAssertionRule_ruleConfig :: Lens' NewAssertionRule RuleConfig Source #
The criteria that you set for specific assertion controls (routing controls) that designate how many controls must be enabled as the result of a transaction. For example, if you have three assertion controls, you might specify atleast 2 for your rule configuration. This means that at least two assertion controls must be enabled, so that at least two Amazon Web Services Regions are enabled.
newAssertionRule_waitPeriodMs :: Lens' NewAssertionRule 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.
newAssertionRule_name :: Lens' NewAssertionRule Text Source #
The name of the assertion rule. You can use any non-white space character in the name.
NewGatingRule
data NewGatingRule Source #
A new gating rule for a control panel.
See: newNewGatingRule
smart constructor.
NewGatingRule' | |
|
Instances
:: Text | |
-> RuleConfig | |
-> Int | |
-> Text | |
-> NewGatingRule |
Create a value of NewGatingRule
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:targetControls:NewGatingRule'
, newGatingRule_targetControls
- Routing controls that can only be set or unset if the specified
RuleConfig evaluates to true for the specified GatingControls. For
example, say you have three gating controls, one for each of three
Amazon Web Services Regions. Now you specify AtLeast 2 as your
RuleConfig. With these settings, you can only change (set or unset) the
routing controls that you have specified as TargetControls if that rule
evaluates to true.
In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
$sel:controlPanelArn:NewGatingRule'
, newGatingRule_controlPanelArn
- The Amazon Resource Name (ARN) of the control panel.
$sel:gatingControls:NewGatingRule'
, newGatingRule_gatingControls
- The gating controls for the new gating rule. That is, routing controls
that are evaluated by the rule configuration that you specify.
$sel:ruleConfig:NewGatingRule'
, newGatingRule_ruleConfig
- The criteria that you set for specific gating controls (routing
controls) that designates how many controls must be enabled to allow you
to change (set or unset) the target controls.
$sel:waitPeriodMs:NewGatingRule'
, newGatingRule_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:NewGatingRule'
, newGatingRule_name
- The name for the new gating rule.
newGatingRule_targetControls :: Lens' NewGatingRule [Text] Source #
Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three Amazon Web Services Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true.
In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
newGatingRule_controlPanelArn :: Lens' NewGatingRule Text Source #
The Amazon Resource Name (ARN) of the control panel.
newGatingRule_gatingControls :: Lens' NewGatingRule [Text] Source #
The gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
newGatingRule_ruleConfig :: Lens' NewGatingRule RuleConfig Source #
The criteria that you set for specific gating controls (routing controls) that designates how many controls must be enabled to allow you to change (set or unset) the target controls.
newGatingRule_waitPeriodMs :: Lens' NewGatingRule 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.
newGatingRule_name :: Lens' NewGatingRule Text Source #
The name for the new gating rule.
RoutingControl
data RoutingControl Source #
A routing control has one of two states: ON and OFF. You can map the routing control state to the state of an Amazon Route 53 health check, which can be used to control traffic routing.
See: newRoutingControl
smart constructor.
RoutingControl' | |
|
Instances
newRoutingControl :: RoutingControl Source #
Create a value of RoutingControl
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:RoutingControl'
, routingControl_status
- The deployment status of a routing control. Status can be one of the
following: PENDING, DEPLOYED, PENDING_DELETION.
$sel:controlPanelArn:RoutingControl'
, routingControl_controlPanelArn
- The Amazon Resource Name (ARN) of the control panel that includes the
routing control.
$sel:name:RoutingControl'
, routingControl_name
- The name of the routing control.
$sel:routingControlArn:RoutingControl'
, routingControl_routingControlArn
- The Amazon Resource Name (ARN) of the routing control.
routingControl_status :: Lens' RoutingControl (Maybe Status) Source #
The deployment status of a routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
routingControl_controlPanelArn :: Lens' RoutingControl (Maybe Text) Source #
The Amazon Resource Name (ARN) of the control panel that includes the routing control.
routingControl_name :: Lens' RoutingControl (Maybe Text) Source #
The name of the routing control.
routingControl_routingControlArn :: Lens' RoutingControl (Maybe Text) Source #
The Amazon Resource Name (ARN) of the routing control.
Rule
A safety rule. A safety rule can be an assertion rule or a gating rule.
See: newRule
smart constructor.
Rule' | |
|
Instances
Eq Rule Source # | |
Read Rule Source # | |
Show Rule Source # | |
Generic Rule Source # | |
NFData Rule Source # | |
Hashable Rule Source # | |
FromJSON Rule Source # | |
type Rep Rule Source # | |
Defined in Amazonka.Route53RecoveryControlConfig.Types.Rule type Rep Rule = D1 ('MetaData "Rule" "Amazonka.Route53RecoveryControlConfig.Types.Rule" "libZSservicesZSamazonka-route53-recovery-control-configZSamazonka-route53-recovery-control-config" 'False) (C1 ('MetaCons "Rule'" 'PrefixI 'True) (S1 ('MetaSel ('Just "gating") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe GatingRule)) :*: S1 ('MetaSel ('Just "assertion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe AssertionRule)))) |
Create a value of Rule
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:gating:Rule'
, rule_gating
- A gating rule verifies that a set of gating controls evaluates as true,
based on a rule configuration that you specify. If the gating rule
evaluates to true, Amazon Route 53 Application Recovery Controller
allows a set of routing control state changes to run and complete
against the set of target controls.
$sel:assertion:Rule'
, rule_assertion
- An assertion rule enforces that, when a routing control state is
changed, the criteria set by the rule configuration is met. Otherwise,
the change to the routing control is not accepted.
rule_gating :: Lens' Rule (Maybe GatingRule) Source #
A gating rule verifies that a set of gating controls evaluates as true, based on a rule configuration that you specify. If the gating rule evaluates to true, Amazon Route 53 Application Recovery Controller allows a set of routing control state changes to run and complete against the set of target controls.
rule_assertion :: Lens' Rule (Maybe AssertionRule) Source #
An assertion rule enforces that, when a routing control state is changed, the criteria set by the rule configuration is met. Otherwise, the change to the routing control is not accepted.
RuleConfig
data RuleConfig Source #
The rule configuration for an assertion rule. That is, the criteria that you set for specific assertion controls (routing controls) that specify how many controls must be enabled after a transaction completes.
See: newRuleConfig
smart constructor.
RuleConfig' | |
|
Instances
:: RuleType | |
-> Bool | |
-> Int | |
-> RuleConfig |
Create a value of RuleConfig
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:type':RuleConfig'
, ruleConfig_type
- A rule can be one of the following: ATLEAST, AND, or OR.
$sel:inverted:RuleConfig'
, ruleConfig_inverted
- Logical negation of the rule. If the rule would usually evaluate true,
it's evaluated as false, and vice versa.
$sel:threshold:RuleConfig'
, ruleConfig_threshold
- The value of N, when you specify an ATLEAST rule type. That is,
Threshold is the number of controls that must be set when you specify an
ATLEAST type.
ruleConfig_type :: Lens' RuleConfig RuleType Source #
A rule can be one of the following: ATLEAST, AND, or OR.
ruleConfig_inverted :: Lens' RuleConfig Bool Source #
Logical negation of the rule. If the rule would usually evaluate true, it's evaluated as false, and vice versa.
ruleConfig_threshold :: Lens' RuleConfig Int Source #
The value of N, when you specify an ATLEAST rule type. That is, Threshold is the number of controls that must be set when you specify an ATLEAST type.