Skip to content
Obscenter

Docs Problems & alerting

Notification channels: email, webhook, Slack, Teams

Send problem notifications by email over SMTP, to Slack or Microsoft Teams incoming webhooks, or as plain JSON webhooks, with severity floors and tests.

A channel is a place a ticket can be sent. Channels are set up by an organisation's administrators under Settings → Notifications, in the card "where a problem goes the moment it opens". Until one exists, a problem that opens at three in the morning is one you find out about at nine.

Kinds of channel

Press + Channel and choose one:

  • Email (SMTP): your own mail server or relay.
  • Slack (incoming webhook): a message with blocks, headed by the severity and the title.
  • Microsoft Teams (incoming webhook): an Adaptive Card with an Open the ticket action.
  • Webhook — plain JSON: a POST to any URL.

Webhooks must be http or https. They are POSTed with a ten-second timeout, and anything other than a 2xx answer counts as a failure. A channel in any organisation other than the install's own may only reach public addresses.

Email

The fields are SMTP host, Port (587 by default), Security, User, Password, From and To. Security is STARTTLS on 587 (the default), TLS on 465, or none for a local relay. To takes up to ten comma-separated addresses. The password is never sent back to the page. Leave it blank when editing to keep the old one.

There are no SMTP environment variables. On a self-hosted install, the first email channel is also the sender of the install's own mail: confirmation links, invitations, personal alert mail and the watchdog's warnings. Without one, those mails cannot be sent.

A subject looks like 🔴 [Obscenter] <title>. A closure is marked Resolved:.

The webhook payload

{
  "event": "opened",            // opened, escalated or closed
  "id": 1234,
  "severity": "serious",
  "category": "slow",           // down, slow, failing, resource, network, experience, security, scanning
  "kind": "latency",
  "title": "checkout is slower than 3 s",
  "summary": "…",
  "entity": "…",
  "host": "web-1",
  "name": "checkout",
  "opened_at": 1761480000000,
  "url": "https://your-install/#/problems/1234"
}

Times are epoch milliseconds. Use the url to link back to the ticket.

What a channel sends

  • Send from severity: warning — everything, serious and critical (the default), or critical only.
  • Also say when a problem resolves: off by default. A closure goes only where the opening went.
  • Repeat window: the same thing at the same or a lower severity is not sent again within six hours. A worse severity still goes.

A channel that no policy names routes by its own severity floor, so a new channel does not stay silent. Once a policy names it, the policy decides.

To keep something that misbehaves on purpose, such as a demo or a staging box, from waking anybody, use Mute it by name. List services, hosts or entities, with * as a wildcard. Their tickets still open and show on the Problems page. They are just never mailed about.

Testing

Each channel in the list has a test link. It sends "Test notification from Obscenter… Nothing is wrong." The list shows each channel's state: off, failing, ok with the time of the last success, or untested. The email card's Send a test to me always goes to your own address.

Mail sent counts the letters of the last day, the last week and all time, per recipient. The delivery log lists each delivery and the policy that caused it.

Your own alert mail

Apart from channels, each person can be mailed about tickets on what their account can see. The setting is under Settings → UI → Alert email: switch on email me about tickets on what I can see, and choose a severity floor. You can narrow it to chosen hosts, applications and devices. A member with no picks gets everything they can see. An administrator gets nothing personally until they ask. The mute list, host maintenance and the repeat window apply here too, and nobody gets the same letter twice. Administrators can see and lock each account's choice under Alert email per account.

Daily summary

An email channel can also send a daily summary, at a chosen hour. It lists the quiet tickets nobody was mailed about, and the things that came back three times or more. When there is nothing to say, it sends nothing. The hour is set through the API, on the channel's digest_hour.