Skip to main content
When one alert produces two messages in the same Slack channel, two separate notification paths are almost always targeting that channel. This article shows admins how to find both paths and decide which one keeps the channel.

How alerts reach a Slack channel

Rootly can post an alert to a channel through several independent mechanisms, and each one posts its own message:
  • Escalation policy steps — an escalation policy level can notify a Slack channel directly.
  • Team Alert Broadcast — a team can broadcast every alert routed to it into a channel.
  • Service Alert Broadcast — each service can broadcast alerts on that service into a channel of its own.
  • Default alerts channel — your Slack integration can post every new alert to one workspace-wide channel.
  • Workflows — an alert workflow can send Slack messages to any channel.
A duplicate post means two of these target the same channel. The two messages often have different header text, because each mechanism formats its post differently.

Find the second path

1

Note the alert's team, services, and escalation policy

Open the alert in Rootly and note which team, services, and escalation policy it carries. These are where channel notifications come from.
2

Check the escalation policy

In the escalation policy editor, look for levels that notify the Slack channel directly. A policy with multiple paths can reference the same channel more than once.
3

Check the team's Alert Broadcast

On the team’s edit page, check whether Alert Broadcast is enabled and which channel it targets.
4

Check each service's Alert Broadcast

On the edit page of every service attached to the alert, check Alert Broadcast. Service broadcasts are the most commonly missed path, because each service is configured separately and several services can broadcast into the same shared channel.
5

Check the default alerts channel and workflows

Review your Slack integration’s default alerts channel, and search your alert workflows for steps that send Slack messages to the channel.

Keep one owner per channel

Pick one mechanism as the single source of posts for each channel and remove the channel from the others.
  • Escalation policy steps give the finest control: different paths can notify the channel only for certain urgencies or time windows.
  • Broadcasts are the simplest: every alert for the team or service lands in the channel, with no conditions.
  • Default alerts channel is right when you intentionally run a single workspace-wide firehose of every alert. If you already own posts through a more specific mechanism (broadcasts or workflows) for a given channel, disable the default so those alerts don’t post twice.
  • Workflows are the most customizable, including message content.
If several services broadcast into one shared channel, disabling the broadcast on one service does not stop the others. Check every service that posts to that channel.