Kill switch flags
Read time: 3 minutes
Last edited: Nov 09, 2024
Overview
This topic explains how you can use kill switch or circuit breaker flags to shut off functionality. These flags are permanent safety mechanisms that you can use to turn off non-core functionality or third-party tools in an emergency.
About kill switch flags
Kill switch flags, sometimes called circuit breaker flags, are permanent boolean flags with two variations: "Enabled" (true) and "Disabled" (false).
Kill switch flags are operational flags that control or change how your app or service operates. Often, these changes happen in response to unplanned events, such as traffic spikes or third-party service failures. You can use these flags to quickly turn off functionality when needed. You can also integrate these flags with observability or application performance management (APM) tools to automate flag shut off. To learn more, read Observability tools.
Create kill switch flags
To create a kill switch flag:
- Click Create and choose Flag. The "Create new flag" page appears.
- Enter a unique, human-readable Name.
- (Optional) Update the flag Key. You'll use this key to reference the flag in your code. A suggested key auto-populates from the name you enter, but you can customize it if you wish.
- (Optional) Enter a Description of the flag. A brief, human-readable description helps your account members understand what the flag is for.
- (Optional) Update the Maintainer for the flag.
- (Optional) Check the Include flag in this project's release pipeline box. To learn more, read Release pipelines.
- (Optional) Choose any Metrics to monitor in the Metrics section. To learn more, read Metrics.
- Choose the Kill switch flag template in the Configuration section:
- Choose Yes or No to indicate whether this flag is temporary. Kill switch flags are usually permanent.
- Select the Boolean flag type.
- (Optional) In the "Variations" section, update variations as needed.
- (Optional) Update the default variations.
- Choose one or more tags from the Tags menu.
- Check the SDKs using Mobile Key and/or SDKs using client-side ID boxes to indicate which client-side SDKs you will use to evaluate this flag. If you are using a server-side SDK, leave these boxes unchecked.
- Click Create flag.
To learn more, read Creating new flags.
Because kill switch or circuit breaker flags are used to shut off functionality or third-party tools completely, they typically do not use complex targeting rules. Instead, they serve "Enabled" by default when targeting is on, and "Disabled" when targeting is off. To learn more about targeting, read Target with flags.
Modify the kill switch flag template
To modify your kill switch flag template:
- Click the project dropdown. The project menu appears:
- Select Project settings.
- Select Flags. The Flags settings list appears.
- In the "Flag templates section, click the pencil icon next to "Kill switch."
- Choose Yes or No to mark all kill switch flags as temporary or permanent. Kill switch flags are usually temporary.
- In the "Variations" section, edit the flag variation Names.
- In the "Default variations" section, choose which default variations to serve when the flag is toggled On or Off.
- In the "Tags" section, type to add tags to each new flag by default.
- Click Save.
Verify that the updated default template settings are correct by navigating to the Flags list and creating a new kill switch flag.