Beacons allow you to define rules that StatusCast will follow anytime that beacon receives a ping from a third party source. This allows you to automate actions such as creating and updating incidents from any source through a set of simple conditional statements.
For the purpose of this document we will refer to the following JSON example but it is important to note that your exact data format will be based on the vendor/service that is pinging StatusCast:
How to target keys/value pair in my Json file
In order to target any keys you will first need to start with “$.”, then proceed with the name of the key. Use dot notation if the target is embedded in other objects.
General workflow for creating a conditional rule
Pick an IDENTIFIER to begin your rule.
a. Recommended Identifier: Content - Value of a key/value pair in a Json file.
Select a key from your Json file to check against the criteria operator.
Pick a CRITERIA OPERATOR to validate against your key from your json file.
Enter the value of the respective key you selected in step 2. NOTE: Not every criteria operator will require this step (i.e. Any).
We recommend creating an initial valuation. For example, the rule below states that if our “status” key in our json payload contains any value, please proceed to the THEN tasks/rulesets. This simple check will eliminate any empty/false data that is passed down to your status page and eliminates the risk of creating an incident inappropriately.
Once our initial rule/data has been verified and we move on to your THEN section, we can be a little more specific in our rules that would trigger a certain action on your status page. The example below states that in order for StatusCast to create an event the “status” key will need to match the value of TRIGGERED.
Defining your incident
Rules and incidents can be quite intricate due to the high level of customization. Here is a simple and recommended set up for your incidents.
[Optional] Wait (minutes) - Define a time in minutes to delay the post of your incident.
Define a TITLE for your incident
a. You can use data from your Json file. Please see the example below:
- Select an INCIDENT TYPE from the following:
b. Scheduled maintenance
c. Service unavailable
- Create a new MESSAGE or choose from a TEMPLATE.
You can use data from your Json file. Please see the example below:
Choose your AFFECTED COMPONENTS.
Select to AUTO PUBLISH your incident or create a draft.
Define if the incident will COUNT TOWARDS DOWNTIME.
You can create rules for updates on open incidents too. You have two options when choosing an incident: Informational or closed.
Choose the STATUS of your components. Keep the same status as the original incident or change it to something else.
Choose the TYPE of update.
a. INFORMATIONAL: Provide updates to an ongoing incident. Incident will remain open.
b. CLOSED: The resolution post to an open/ongoing incident. Incident will be closed once published.
Create a MESSAGE or select one of your templates.
Can I create a thread or stack of rules for a specific action?
Beacon conditions will allow you to create subsequent rules that can be stacked on each other. Use the HAMBURGER ICON on the right side of the rule to add additional conditions. Available options to choose from this dropdown include AND, OR, & REMOVE.
- AND: All conditions must be met in order for the action/task to be performed.
- OR: One of the conditions must be true/valid for an action/task to be performed.
- REMOVE: Removes the current rule.
Updated over 1 year ago