Slack
The Spectate Slack app connects one Slack workspace to your Spectate team. Alerts arrive in Slack with Acknowledge and Resolve buttons, and you can declare, update and resolve incidents with the /spectate command. Each incident can get its own Slack channel, which Spectate keeps in sync with the dashboard. On-call members get pages, shift reminders and cover requests as direct messages from the app.
Connect Slack
Owners, managers and admins can connect Slack.
- In the dashboard, select Integrations.
- Under Slack, select Add to Slack.
- In Slack, select the workspace and allow the app.
One Slack workspace connects to one Spectate team. After you connect, choose the channels: an alert channel for alerts, and the settings for incidents.
If Integrations → Slack shows Needs reconnect, the workspace was connected before some features existed. Select Reconnect to give the app the new Slack permissions. Alert channels continue to post until you do.
Get alerts in a Slack channel
- Select Alerting → New channel.
- Under Integration, select Slack.
- Enter a Name.
- Under Slack channel, select the channel.
- Select Create channel.
- Add the channel to an escalation path with a Notify channel step.
The list shows public channels, and private channels that the Spectate app is a member of. To use a private channel, invite the app to it in Slack first.
Alert messages
An alert message has the colour of the severity, the resource and the reason, and a chart when there is data. It has these buttons:
| Button | What it does |
|---|---|
| Acknowledge | Acknowledges the alert after you confirm. The escalation stops. |
| Declare incident | Opens the declare form for the alert. If the alert already has an open incident, Spectate links to it instead. |
| Resolve | Resolves the alert after you confirm. Spectate sends the resolved notifications. If the problem is still there, the alert fires again. |
| View in Spectate | Opens the alert in the dashboard. |
Spectate updates the message in place when someone acknowledges or resolves the alert, in Slack or anywhere else. The Acknowledge button goes away, and a line such as "Acknowledged by Ada" shows who did it. When the alert resolves, Spectate also posts a reply in the message's thread, which also shows in the channel.
Who is acting in Slack
Everything you do in Slack, Spectate does as your Spectate account, with your role's permissions. Spectate links your Slack user to your Spectate account the first time you use the app. The email address of your Slack profile must be the verified email address of a member of the team.
If Spectate cannot find a match, it shows a message only to you, and nothing happens. Sign in to Spectate with the same email address as your Slack profile, or ask an admin to invite you. A member who leaves the team loses the link.
Slash commands
/spectate has two aliases: /inc and /incident. In an incident channel, the commands act on that incident. In other channels, Spectate first asks you to pick an open incident.
| Command | What it does |
|---|---|
/spectate or /spectate help | Shows the commands. In an incident channel, also the incident's buttons. |
/spectate declare [title] | Opens the form to declare an incident, with the title filled in. |
/spectate update | Posts an update and can change the incident's status. |
/spectate status-page | Publishes an update to a status page. Outside an incident channel, it can also start or update a status page incident without a Spectate incident. See status pages from Slack. |
/spectate ack | Acknowledges the incident. |
/spectate resolve | Resolves the incident, with an optional closing message. |
/spectate roles | Assigns the commander and the communications lead. |
/spectate lead or /spectate lead me | Makes you the commander. |
/spectate rename [title] | Changes the title. |
/spectate summary [text] | Changes the summary. |
/spectate sev [level] | Changes the severity to critical, high, medium or low. |
/spectate list | Lists the open incidents. Only you see the list. |
/spectate oncall [schedule] | Shows who is on call now and next for each schedule, and your next shift. Add part of a schedule name to show only matching schedules. Only you see the answer. |
/spectate cover | Asks the others on an on-call schedule to cover one of your shifts. See cover requests. |
In an incident channel, rename, summary, sev and lead with a value change the incident at once. Without a value, or in another channel, they open a form.
You can also use the Declare incident shortcut. On a message, the shortcut makes the message the incident summary, with a link back to the message.
Incident channels
When Create a channel for each incident is on, every new incident gets its own Slack channel. This includes incidents declared in Slack, in the dashboard, with the API, and by an escalation path. In the Slack declare form, you can clear Create a channel for this incident for one incident.
The channel name is the prefix, the incident number and the title, for example inc-42-checkout-errors. Spectate pins a header message in the channel. The header shows the reference, title, severity, status and commander, with these buttons:
- Post update
- Status page
- Roles
- Acknowledge, until someone acknowledges the incident
- Resolve
- View in Spectate
Spectate posts updates, status and severity changes, role changes and status page updates into the channel, from Slack and from the dashboard. If an incident has no channel, select Create Slack channel on the incident page.
Pin messages to the timeline
To add a message from the incident channel to the timeline, react to it with an emoji. Use the pushpin (:pushpin:), round pushpin (:round_pushpin:) or bookmark (:bookmark:). Spectate adds the text, the author and a link to the message. The timeline shows that you pinned it. Spectate adds each message once, and only for members who can update the incident.
Nudges
If an open incident gets no update for 30 minutes, Spectate posts a reminder in its channel. The reminder has Post update and Status page buttons. When someone posts an update or resolves the incident, Spectate removes the reminder. Change the time, or turn nudges off, with Nudge quiet incidents in the settings.
Status pages from Slack
In an incident channel, /spectate status-page publishes the incident to a status page. In other channels, it asks what to publish:
- New status page incident starts a public incident without a Spectate incident. Enter a title, a status, the impact on each component and the public message.
- An open status page incident: post its next update, or resolve it.
- An open Spectate incident: publish it, the same as in its channel.
/spectate status-page new [title] opens the form for a new status page incident at once. Both forms can backdate the update with Happened at. Notify subscribers by email is on by default. Only owners, managers and admins can publish, and Spectate only offers status pages that you can publish to. See status page incidents.
On-call in Slack
For on-call, Spectate sends direct messages from the app. You find them under the Spectate app in Slack. Spectate finds your Slack account by the verified email address of your Spectate account.
Pages
An escalation path can page you as the person on call. Spectate then also sends the alert as a direct message, with Acknowledge, Declare incident and Resolve. The message updates when someone acknowledges or resolves the alert. Slack pages do not use credits. To turn them off, clear Also page me in Slack under Your on-call.
Cover requests
When you cannot do a shift, ask the others on the schedule to cover it.
- Enter
/spectate cover. - Under Shift, select one of your shifts of the next 4 weeks.
- Optional: enter From and Until to ask for part of the shift.
- Optional: enter a Note.
- Select Ask.
Spectate asks every other member of the schedule's rotations. Each one gets a direct message with Accept and Can't cover. The first person to accept gets an override for the whole window, and Spectate updates all the messages. You get the answers in a thread under your own message, which has Send reminder and Cancel request. Members that Spectate cannot find in Slack get an email instead. See cover requests for the full rules.
Shift messages and handovers
Before each of your shifts, Spectate sends a reminder with Request cover and View schedule. It also sends a message when your shift starts and when it ends. Choose the time of the reminder, or turn the messages off, with Shift messages in Slack under Your on-call. The default is Also 1 hour before.
A schedule can also announce each handover in a channel. The message mentions who is on call now, until when, and who they take over from. If there is no handoff in the next 90 days, the messages say so. Select the channel under Slack → Handover channel on the schedule page.
On-call user groups
Spectate can create a Slack user group for a schedule and keep it up to date. Mention the group to reach the right people.
- Open the schedule on the On-call page.
- Under Slack, select Keep an on-call user group.
- Enter the Handle. Spectate proposes the schedule name with
-oncall, for exampleplatform-oncall. - Under Keep it set to, select Whoever is on call or Everyone on the schedule.
- Select Save.
Spectate creates the group in Slack. If a group with this handle exists, Spectate uses that group. If you change the handle later, Spectate renames the group. If you clear Keep an on-call user group, Spectate disables the group in Slack.
Spectate updates the group at each handover and when the rotations change. Slack does not allow an empty group. When nobody is on call, Spectate disables the group, and enables it again at the next handover. Members that Spectate cannot find in Slack are not added.
By default, Slack only lets workspace admins create and change user groups. A Slack admin must let everyone manage user groups, in the workspace settings under Permissions → User Groups. Until then, the schedule page shows that Slack refused the group.
The Spectate tab
Open the Spectate app in Slack and select Home. The tab shows:
- Declare incident, Request cover and Open Spectate.
- Your on-call: your shifts of the next 2 weeks, each with Request cover.
- Cover requests: requests that you can answer, and your own open requests.
- Open incidents: up to 10, with Post update.
The tab updates after you use one of its buttons.
Settings
Find the settings under Integrations → Slack. Owners, managers and admins can change them.
| Setting | Default | What it does |
|---|---|---|
| Announcements channel | No announcements | Spectate announces each new incident in this channel, and keeps the announcement up to date. |
| Create a channel for each incident | On | Each new incident gets its own Slack channel. |
| Channel prefix | inc | The start of incident channel names. Lowercase letters, numbers, - and _ only. |
| Nudge quiet incidents | After 30 minutes | Posts a reminder in an incident channel when nobody posted an update for this long. Never turns nudges off. |
Disconnect Slack
- Select Integrations.
- Under Slack, select Disconnect.
- Select Disconnect to confirm.
Spectate disables the alert channels that post through the workspace. If you connect Slack again, they turn on again. Existing incident channels stay in Slack, but Spectate stops posting to them. If someone removes the app in Slack, Spectate disables the alert channels and sends an email, the same as for a disabled channel.
Related
- Incidents: declare and resolve incidents.
- Updates and roles: what Spectate mirrors into the incident channel.
- Alerts: acknowledge and resolve alerts.
- On-call: schedules, overrides and cover requests.