Jeli Workflows

Jeli Part of PagerDuty

Workflow Basics

A workflow requires a defined scope, frequency, and action in order to run.

  • The scope of the workflow includes the trigger for what initiates the workflow, and additional conditions to be met along with that trigger.
  • The frequency of the workflow defaults to once per incident but can also be set to occur every time the conditions and/or trigger for the workflow are met.
  • The action is the most substantial part of the workflow, or thing you’re creating a workflow to automate.

Scope

Scope controls when a workflow will be executed, and is made up of triggers and conditions.

Triggers

Triggers are events in the system. For example, Incident Opened fires when someone opens a new Jeli incident, whether from the Jeli Slackbot or from the API.

Jeli supports the following triggers:

  • Incident opened (sent when an incident is opened by any means)
  • Incident closed
  • Severity changed
  • Stage changed
Workflow trigger

Workflow trigger

Conditions

Conditions consist of an incident dimension and a conditional operator. Incident dimensions refer to the various fields on a Jeli incident. These fields can be compared using a conditional operator to determine whether a workflow should run.

Jeli supports the following incident dimensions:

  • Severity
  • Stage
  • Type
  • Incident Name
  • Incident Roles

You can customize Incident Roles, Severity, and Types in your Jeli Settings under Incident Response.

Add a New Condition

  1. In the Jeli web app, select Workflows from the left menu and click Create Workflow or edit your preferred workflow.
  2. Click Add Condition.
  3. Select an incident dimension.
    1. Severity
    2. Stage
    3. Type
    4. Incident Name
    5. Incident Roles
  4. Select an operator.
    1. is / is not
    2. is set / is not set
    3. includes / does not include
  5. Provide relevant values for the selected incident dimension and operator.

📘

Important Note

Each dimension can only be used once per workflow. Conditions are not required to create a workflow, but multiple dimensions per workflow are supported.

Operators

The available operators may vary based on the selected dimension.

  • is / is not
    • Check if the given dimension is equal or not equal to one of the selected values.
      • Example: Severity is 0. The workflow will run when the severity is set to 0.
  • is set / is not set
    • Check if the dimension exists on the incident or not.
      • Example: Communications Lead is not set. The workflow will run if the Communications Lead role has not been set.
  • includes / does not include
    • Check if the dimension includes the provided substring. Matching will ignore case.
      • Example: Incident name includes down. The workflow will run if the incident name includes the word down.

Frequency

The Frequency function lets you indicate how often you want the workflow to run. There are two options:

Once Per Incident

We recommended using this frequency with the triggers Incident Opened and Incident Closed.

Examples:

  • Name: Sev 0 Creation email notification
  • Trigger: Incident Opened
  • Conditions: Severity is 0
  • Frequency: run once per Incident
  • Action: Send email to [email protected]

Every Match

Runs every time scope is met (trigger and conditions). We recommend using this frequency with the triggers Severity Change and Stage Changed.

Examples:

  • Name: Update Support on Incident Stage
  • Trigger: Stage Changed
  • Conditions: Type is Customer Facing, Severity is 0
  • Frequency: every time scope is met
  • Action: Send message to a channel #support-oncall

Action

Actions run when a workflow's scope is met. There is no limit on duplicate actions, you can send a different message to different users from the same workflow. You will need to supply additional information to each action, such as an email address and a message for the Send email action.

📘

Important

A workflow must have at least one action before you can enable it.

Add an Action to Your Workflow

  1. In the Jeli web app, select Workflows from the left menu and click Create Workflow or edit your preferred workflow.
  2. Select Add Action.
  3. Select your desired action from the dropdown.
  4. Enter relevant values for the selected action.
  5. Click Add.
Add an action to a Jeli workflow

Add an action to a Jeli workflow

Types of Actions

Action TypeDescription
Slack- Send message
- Send direct message
- Send ephemeral message
- Invite users
- Invite user groups
- Archive Incident channel
- Add broadcast channel
Email- Send email
PagerDuty- Trigger a PagerDuty incident via ths Events API
Dynamic variables- Reference variables from the current incident. For example, send a direct message to the Incident Lead without hardcoding the user.

FAQ

How do Jeli workflows work behind the scenes?

Expand

Workflows are evaluated concurrently based on the trigger. Conditions are evaluated one at a time for a given workflow, halting if any evaluated false. Conditions are chained together with an AND operator. Actions for a given workflow are executed serially and will not halt if one fails. Some actions may send a message to the incident channel to notify responders that an automated action has been taken.

Are there any limitations with Jeli workflows?

Expand

Workflows currently have the following limitations:

  • There are certain situations when an action may not run. For example, sending a message to a role that is not currently assigned. You can use conditions to add an appropriate scope to the workflow and ensure the role is assigned.
  • Workflows currently run after most other automatic steps.