Skip to content

Create Safety Rule

route53recoverycontrolconfig_create_safety_rule R Documentation

Creates a safety rule in a control panel

Description

Creates a safety rule in a control panel. Safety rules let you add safeguards around changing routing control states, and for enabling and disabling routing controls, to help prevent unexpected outcomes.

There are two types of safety rules: assertion rules and gating rules.

Assertion rule: An assertion rule enforces that, when you change a routing control state, that a certain criteria is met. 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.

Gating rule: A gating rule lets you configure a gating routing control as an overall "on/off" switch for a group of routing controls. Or, you can configure more complex gating scenarios, for example by configuring multiple gating routing controls.

For more information, see Safety rules in the Amazon Route 53 Application Recovery Controller Developer Guide.

Usage

route53recoverycontrolconfig_create_safety_rule(AssertionRule,
  ClientToken, GatingRule, Tags)

Arguments

AssertionRule

The assertion rule requested.

ClientToken

A unique, case-sensitive string of up to 64 ASCII characters. To make an idempotent API request with an action, specify a client token in the request.

GatingRule

The gating rule requested.

Tags

The tags associated with the safety rule.

Value

A list with the following syntax:

list(
  AssertionRule = list(
    AssertedControls = list(
      "string"
    ),
    ControlPanelArn = "string",
    Name = "string",
    RuleConfig = list(
      Inverted = TRUE|FALSE,
      Threshold = 123,
      Type = "ATLEAST"|"AND"|"OR"
    ),
    SafetyRuleArn = "string",
    Status = "PENDING"|"DEPLOYED"|"PENDING_DELETION",
    WaitPeriodMs = 123,
    Owner = "string"
  ),
  GatingRule = list(
    ControlPanelArn = "string",
    GatingControls = list(
      "string"
    ),
    Name = "string",
    RuleConfig = list(
      Inverted = TRUE|FALSE,
      Threshold = 123,
      Type = "ATLEAST"|"AND"|"OR"
    ),
    SafetyRuleArn = "string",
    Status = "PENDING"|"DEPLOYED"|"PENDING_DELETION",
    TargetControls = list(
      "string"
    ),
    WaitPeriodMs = 123,
    Owner = "string"
  )
)

Request syntax

svc$create_safety_rule(
  AssertionRule = list(
    AssertedControls = list(
      "string"
    ),
    ControlPanelArn = "string",
    Name = "string",
    RuleConfig = list(
      Inverted = TRUE|FALSE,
      Threshold = 123,
      Type = "ATLEAST"|"AND"|"OR"
    ),
    WaitPeriodMs = 123
  ),
  ClientToken = "string",
  GatingRule = list(
    ControlPanelArn = "string",
    GatingControls = list(
      "string"
    ),
    Name = "string",
    RuleConfig = list(
      Inverted = TRUE|FALSE,
      Threshold = 123,
      Type = "ATLEAST"|"AND"|"OR"
    ),
    TargetControls = list(
      "string"
    ),
    WaitPeriodMs = 123
  ),
  Tags = list(
    "string"
  )
)