Uptime Monitoring Beacon
Uptime Monitoring and Application Performance Service Beacons
If you created a beacon using a known provider a default rule set will be imported for you, but can be modified afterwards if need be.
Creating a Monitoring Beacon with a Webhook
To add an Uptime Monitoring Beacon to your page first log into your administrative portal.
Navigate to Settings > Settings > Beacons and click on the New Integration button.
Search and select the service you'd like to set up from the list. If the service is not listed, Select Generic Webhook.
Select an admin you would like to be responsible for processing the beacon.
Review the Beacon and click Submit.
General Beacon Information
Here you can now begin setting up your Beacon.
In this section you can update the following:
Definition | |
---|---|
Name | Name of the beacon |
Description | Brief description of what the beacon does |
Escalation Policy | Allows you to associate a Beacon Escalation policy |
Process Beacon As | Who created or is in charge of the beacon |
Send System Notifications | Send notifications for beacon updates to assigned teams and users |
Ignore Duplicate Messages | Ignore duplicate messages for any existing beacon entries |
Delete beacons pings when no action | Delete incoming beacons pings when no action is taken |
Incident External ID Path | The expression used to find the unique identifier of the incident for the beacon |
Variables
Variables can be created to store values for your ruleset to reference throughout the beacon. Variables and their content are case sensitive.
You can create the following type of variables:
Type | Description | Example |
---|---|---|
Value | Stores value from JSON name | $.AffectedComponents .ComponentName |
Regex | Stores a regular expression (or Regex) | <.*?> |
Replace | Searches value and replaces with text | 3 | Performance Degraded |
Xpath | Stores an XPath expression | /AffectedComponents{ /ComponentName |
Rules
The rules created here will govern how the beacon processes the payload it receives via webhook.
Rules are processed in order they are created (i.e Top to bottom).
To add a rule click on the plus sign to the right of the Rules section.
A rule consists of an IF/THEN statement, that will tell StatusCast what to do when the If statement is met.
To setup the IF portion of the statement please click the the Add Rule button under the IF. Then the area to setup the condition will show. Here is where the elements that are going to be evaluated are specified.
Rules Can be set with the beginning with the condition variables:
Condition Variables | Description | |
---|---|---|
Content | the name of the variable | |
Created | A date range | |
Updated | A date range | |
Stage | The stage the beacon has reached | |
Status | The status of the beacon | |
Variable | the name of the user-defined variable |
To add a condition (AND, OR) or remove one that has been added click on the hamburger button to the right of the condition area.
After you have set the IF portion, you have to choose what is done when the condition is met. This is done by checking the box in front of the wanted action found under THEN; you can check as many or as few actions as needed.
Actions
Here is a description of each action:
SET STATUS | You can set a status (UP or DOWN) for the beacon itself. |
ASSIGN TO TEAM | The beacon can be assigned to a predefined team in the application. |
ASSIGN TO USER | The beacon can be assigned to a user in the application. |
EXTRACT COMPONENTS | Use this action to correlate what component(s) in StatusCast are affected by this beacon, specifically which object in your JSON is correlated to component names or component external IDs. |
CREATE INCIDENT | Setup what will show in the incident. |
UPDATE INCIDENT | Setup what will show in the update to the incident. |
TRANSITION STAGE | Set a stage (WAITING, IN-PROGRESS or COMPLETED) in the incident. |
SUBSCRIBER NOTIFICATION CHANNELS | Select the notification channels to be used when creating an incident and notifying subscribers. |
UPDATE COMPONENT STATUS | Set the status (Available, Unavailable, Maintenance or Degraded Performance) of a particular component. |
Note: Under each action you may find one or more options that need to be set to complete the action setup.
If you already have a predefined rule set, you have the option to import it in the General section of the Beacon at the top.
Exporting Rule Sets
Also, if you are going to use the same rule set in another beacon setup, you have the option to export it in the Rules section.
Once you have everything you need set up, please remember to click the UPDATE button at top.
Targeting Keys/Value Pairs
In order to target any keys from your payload, 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.
Take a look at the example below:
{"monitorURL":"https://sometimesdown.com/",
"alertTypeFriendlyName":"Down",
"monitorID":"4105310034",
"alertDetails":"HTTP 500 - Internal Server Error",
"alertDuration":"*alertDuration*"}
To target alertTypeFriendlyName you would refer to it as $.alertTypeFriendlyName throughout your Beacon. We recommend creating and using a variable for each key you use reference.
Creating IF Statements
-
Pick an IDENTIFIER to begin your rule. 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).
Let's Set up a beacon to see customizable rules that are available using the payload above.
If the $.AlertTypeFriendName has any content, proceed with the ruleset.
Note
We recommend creating an initial evaluation. For example, the rule above states that if our 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.
EXTRACT COMPONENTS
Get information to evaluate additional conditions.
CREATE INCIDENT
If a service is down, you can use rules to create an incident.
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:
a. Performance
b. Scheduled maintenance
c. Service unavailable
d. Informational
- 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.
Defining updates
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.
FAQ
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.
UPDATE INCIDENT
If a service is back up you can update or resolve your incident
Updated over 1 year ago