Service Dependency Based Deduplication

Deduplicate incoming alerts for a Service against the latest open incident of its dependent Service(s)

Service Dependency Based Deduplication works on the logic that the incidents coming in for a Service and its dependencies have a related cause.

It is most likely the case where, when one Service has an incident, it's dependent Service(s) may also have incidents and hence, you will be notified of the incident only once. This helps control unnecessary alert noise and notification fatigue during critical outages.

Defining dependencies between Services also helps Squadcast understand the relationship between your actual systems.

To understand this better, let us consider 3 Services: Service A, Service B and Service C.

If Service A is dependent on Service B and Service C, then:

  • Dependent Service: Service A

  • Dependency Service(s): Service B, Service C

Let’s say, Service B has an open incident at time x and Service C has an open incident at time x+1. Now, Service A receives an incident. This incident for Service A gets deduplicated with the latest open incident of its dependency Service(s) - i.e., with the open incident for Service C, in this case.

Prerequisites

The User Role associated with the user in the Team must have required permissions to manage Services (ability to manage Deduplication Rules).

Important: Automation rule CRUD operations have a 5-minute caching delay before changes take effect.

Add a Service Dependency

To add service dependencies:

  1. Navigate to Services -> Service Overview -> select or search for your desired service.

  2. On the extreme right, expand the accordion -> View Dependency -> you are navigated to a list of dependent services.

  3. Click Add Dependency -> enter the name of the dependent service.

  4. Click Save

In this example, we have considered Backend Prometheus Service and Translations Services as dependencies of the Payment Portal Service.

This means that the Payment Portal Service is dependent on Backend Prometheus Service and Translations.

Delete a Service Dependency

To delete a service dependency:

  1. Click the Cross next to the service name to delete the service dependency

  2. Click Save

Enabling Service Dependency-Based Deduplication

Once you have defined the Service Dependencies, you can set a Service Dependency Based Deduplication rule which would deduplicate all incoming alerts for the chosen Service against the latest open incident of its Service Dependencies.

  1. Navigate to Services -> Service Overview -> select or search for your desired service.

  2. On the extreme right, expand the accordion -> In the Automation section, View All.

  3. In the Automation Rules section, Add Deduplication Rules.

  4. Check If this service and service depends on both have an incident, alert only once -> Click Save.

Note: This checkbox for every Deduplication Rule is disabled by default.

Note:

  1. The Service Dependency Based Deduplication will deduplicate any incoming alert against either a Triggered or Acknowledged incident only.

  2. Service Dependency-based Deduplication is rule-specific and can be enabled for any number of Deduplication Rules that are defined for a Service.

Enabling Service Dependency-Based Deduplication for a Specific Service Dependency

In cases where you would like Squadcast to consider just one of the many dependencies for a Service for Service Dependency Based Deduplication, you can follow the method below.

Along with enabling the Service Dependency checkbox, as shown above, you will need to add the below condition to the rule:

past_incident.service == <slug_of_the_particular_dependency_service>

FAQs

1. Where can one find the slug of a Service?

The slug of a Service is displayed on the Service card as shown below.

2. Can I set up dependencies between Services that are in 2 different Teams?

No, you can set up dependencies only within Services for a given Team and not across Teams.

Last updated

#426: Past Incidents

Change request updated