SLAs

DX SLAs allow you to track how your group is performing in various metrics relative to configurable thresholds. SLAs allow your team to create agreements on how you want to work and easily monitor how your team is performing against them.

You can get detailed reporting on how your team is performing relative to your SLAs within the DX Dashboard and via optional alerts sent via Slack/Teams.

SLA examples

SLA types

Measures time from when a reviewer is requested to when they submit a review (per reviewer). GitHub-only.

Target: N hours or days

Options:

  • Include all review requests (outside-group authors too)
  • Ignore approved PRs after 1 / 2 / 3 approvals
  • Ignore weekends (count weekdays only)
  • Ignored terms in title
  • Ignored repositories
  • Ignored labels

Flags PRs with no meaningful activity (commits, reviews, comments, status changes) for longer than the threshold.

Target: N hours or days of inactivity

Options:

  • Ignore weekends (count weekdays only)
  • Ignored terms in title
  • Ignored repositories
  • Ignored labels (GitHub/GitLab)

Measures PR size by lines of code (additions + deletions) to keep reviews fast.

Target: N lines of code

Options:

  • Ignored terms in title
  • Ignored repositories
  • Ignored labels (GitHub/GitLab)
  • Ignored files (GitHub; requires GitHub Files connector)

Measures time from PR open to merge.

Target: N hours or days

Options:

  • Ignore weekends (count weekdays only)
  • Ignored terms in title
  • Ignored repositories
  • Ignored labels (GitHub/GitLab)

Measures how many open PRs an IC has simultaneously.

Target: N PRs in progress

Options:

  • Ignored terms in title
  • Ignored repositories
  • Ignored labels (GitHub/GitLab)

Measures from when an issue is started (“In Progress”) to when it is closed.

Target: N hours or days

Options:

  • Ignore weekends (count weekdays only)
  • Ignored terms in title

Limits how many “In Progress” issues an IC can own at once.

Target: N issues

Options:

  • Ignored terms in title

DX supports creating Custom SLAs, which can be created to track custom metrics based on SQL query results.

Enable SLAs

To enable SLAs for your group:

  1. Go to DXDashboardSLAs.
  2. Click Enable next to each SLA you want to set up.
  3. Enter the thresholds your team has agreed on specific to the SLA you are setting up.
  4. Click Enable.

Edit/disable SLAs

To edit or disable an SLA for your group:

  1. Go to DXDashboardSLAs.
  2. Locate the SLA you wish to edit or disable and click the ••• button on its right.
  3. Click either Edit or Disable.

Alerts

One of the most useful features of SLAs is the ability to automatically alert your group of SLA violations via Slack and Microsoft Teams. This allows your team to keep tabs on how they are performing relative to their agreed thresholds, transparently and in a timely manner.

To configure which SLAs send alerts, select the Send alerts checkbox when editing an SLA.

To configure how alerts send for your group:

  1. Go to DXDashboard.
  2. Click the Alerts button in the top-right.
  3. Select which channel you want DX to send alerts to.
  4. Set up your alert schedule by choosing an alert time and frequency.
  5. Optional - Add additional recipients who will get copies of the alerts as a DM.

FAQs

SLAs replace the previous group alerting functionality that existed in Frontline. All of the same functionality is present, but now made more powerful and accessible.

If you were previously using Frontline, your settings have been carried over and converted into SLAs, so your team’s workflow shouldn’t be impacted.

As part of SLAs, DX has sunset the standalone “DX Frontline” app for Slack and MS Teams. Going forward, group and personal alerts are sent via the main DX app, simplifying the experience.

Asterisks and organization names can be used to match multiple repositories. For example, dx/* will omit all repos in the dx organization. *api will omit all repos with a name ending in “api”.