Skip to content

Notification Transports

Contacts

Editing contacts is currently only available to administrators via Main Menu -> Contacts Please note that some transports are only available in the Subscription editions

Default

By default Observium will attempt to email alerts to the sysContact retrieved from the device via SNMP. If a default email contact has been configured, this will be used for all devices instead.

These settings can also be found in the "Alerting" section of the web configuration interface.

Where a contact has been associated to an Alert Check or Syslog Rule, this will be used instead of the default or sysContact entries.

Clickatell

Clickatell is an SMS gateway service. The Clickatell notification transport requires an API Key from Clickatell. You also need both a recipient and sender telephone number.

Discord

Discord is a communications platform. Integrations are configured via the Server Settings menu, in the Integrations section. New webhooks can be added via the "Webhooks" option. Configure the Name and Channel to be used, and click the "Copy Webhook URL" and paste this URL into the Observium Transport configuration section.

E-Mail

The E-mail notification transport requires only an email field and uses the email settings configured in the config.php. E-mail is used as the default transport when none others apply to the alert. Please see the Default section.

We recommend using a local MTA on the Observium server itself rather than using SMTP. Postfix is easily installed for this purpose on Ubuntu/Debian with apt-get install postfix

Hipchat

Hipchat is the enterprise messaging platform from Atlassian. Observium sends messages to Hipchat using the Room API.

In order to find a Room Token and Room ID, go to the "Rooms" tab of the Hipchat instance web interface. The Room ID is the name of the room. You can create a Room Token by selecting the Room, going to the "Tokens" side tab and creating a new Token with "Send Notification" permissions.

The optional "URL" parameter allows you to direct notifications to a locally hosted Hipchat instance

Messagebird

Messagebird is an SMS delivery platform. It facilitates delivery of text notifications to mobile phones.

To send notifications via Messagebird you need an API access key from Messagebird along with your originator number and a recipient telephone number.

ManageEngine AlarmsOne

ManageEngine AlarmsOne includes support for Observium's WebHook transport. Simply create an application of the type "Observium" in AlarmsOne, copying the resulting URL. Then create a transport in Observium of the type "WebHook" and set the Webhook URL to the URL generated by AlarmsOne.

ManageEngine have produced a YouTube Tutorial and integration instructions in their documentation.

Pagerduty

Pagerduty is a specialist alert management service. Pagerduty has specific support for Observium and maintains their own documentation here.

Pagerduty integration only requires an Integration Key which can be obtained by adding an Observium Integration following the instructions on the Pagerduty site above.

Once configured Pagerduty will keep track of alert incidents, including recovery.

Pushover

Pushover is a service that allows you to send push notifications to mobile devices and desktops. To use Pushover with Observium, you need to create a new application for Observium in your Pushover control panel. Enter the API key for this application in the transport configuration, and use a user or group key (long string of letters and numbers, not an e-mail address) as destination.

Red Oxygen

Script

Observium can export alert and recovery events via a simple external script interface. Variables are exported via environment variables.

Some variables are only available for specific alert sources.

Environment Variable Description Example
OBSERVIUM_ALERT_STATE Notified State ALERT RECOVER SYSLOG
OBSERVIUM_ALERT_URL URL to Alert Entry
OBSERVIUM_ALERT_ID alert_id 2839
OBSERVIUM_ALERT_MESSAGE Configured alert message Configuration Changed
OBSERVIUM_CONDITIONS Checker conditions or Syslog rule ifInOctets_perc ge 85
OBSERVIUM_METRICS Checked metrics or Syslog message device_status = 0
OBSERVIUM_SYSLOG_RULE Syslog rule Syslog Only /SYS-5-CONFIG_I/
OBSERVIUM_SYSLOG_MESSAGE Syslog message Syslog Only Configured from console by derp on vty0 (95.21.0.21)
OBSERVIUM_SYSLOG_PROGRAM Syslog program Syslog Only SYS-5-CONFIG_I
OBSERVIUM_TIMESTAMP Alert timestamp 2016-08-08 17:22:44
OBSERVIUM_ENTITY_LINK Link to entity page Not Syslog
OBSERVIUM_ENTITY_NAME Entity name Not Syslog eth0
OBSERVIUM_ENTITY_TYPE Entity type Not Syslog port
OBSERVIUM_ENTITY_DESCRIPTION Entity description (ifAlias, etc) Not Syslog Transit: Level 3
OBSERVIUM_DEVICE_HOSTNAME Device hostname test.observium.org
OBSERVIUM_DEVICE_LINK Link to device page
OBSERVIUM_DEVICE_HARDWARE Device "hardware" field CISCO7676-S
OBSERVIUM_DEVICE_OS Device "OS" field Cisco IOS 15.3(3)S4 ADVIPSERVICESK9
OBSERVIUM_DEVICE_LOCATION Device location London, UK
OBSERVIUM_DEVICE_UPTIME Device uptime 245 days, 3h 33m 6s
OBSERVIUM_TITLE Email subject / SMS alert format SYSLOG: [test.observium.org] Configuration changed
OBSERVIUM_DURATION Alert duration 2m 25s (2016-08-08 17:22:44)

Slack / Rocket.Chat

Editions

Avaialable in Professional and Enterprise editions only!

Slack is an enterprise group chat platform. Observium uses the Slack webhooks API to send notifications.

This integration is also compatible with Rocket.Chat, using the Webhook URL from an Incoming Webhook configuration in Rocket.Chat.

To use Slack integration you need to obtain a Webhook URL from Slack by creating an incoming webhook integration. You also need to set a Channel Name and a Username for your Observium messages.

SMS Box

Kannel SMSbox is an open source SMS gateway that can be used to send text notifications to mobile phones. You will need authentication credentials for the SMS service on your gateway, and the destination phone number.

Telegram

Telegram is a messaging application available for many platforms including iOS, Android, Windows, MacOS and Linux. To use it as a notification transport you need a Telegram account, Telegram Bot and (optional) Group, where this Bot and Account have been added.

Steps to create a Telegram Bot and enable notifications:

  1. Register your Telegram account (if you don't already have one)

  2. Create Telegram Bot (if you don't already have one). For this you should talk to BotFather and follow the steps described here.

    • Open chat with BotFather
    • Request a new Bot via command /newbot, you will be requested for choose name and username for Bot. The bot username is required below for adding it to Group and for requesting the Chat identificator.
    • At the end you will receive a token to access the API, ie 110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw. This token is required to send notifications, see below.
  3. (Skip this step if a Group is not required) Create a New Group from the Telegram Application

    • Add Bot created above to this new Group, and set the Group name to whatever you like. Remember this Group name!
    • Send message /start into this Group from your account on any Telegram app
  4. Now you need to find the numeric Chat identifier (since there are some issues with named identifiers)

    • If you not use a Group, send the message /start to the Bot created above https://telegram.me/<BotUserName> (replace <BotUserName> with the Bot Username)
    • Do a request from command line or with a browser to this url https://api.telegram.org/bot<BotToken>/getUpdates?offset=0 (replace <BotToken> with the Bot Token from step 2), for example curl "https://api.telegram.org/bot110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw/getUpdates?offset=0"; echo
    • You will receive JSON encoded string with a list of the last message ids, where can see the chat ids, for example:
 {"ok":true,"result":\[{"update_id":382866198,
 "message":{"message_id":2,"from":{"id":123456784,"first_name":"Mike","last_name":"Stupalov","username":"stupalov"},"chat":{"id":123456784,"first_name":"Mike","last_name":"Stupalov","username":"stupalov","type":"private"},"date":1459367993,"text":"\/start start"}},{"update_id":382866199,
 "message":{"message_id":3,"from":{"id":123456784,"first_name":"Mike","last_name":"Stupalov","username":"stupalov"},"chat":{"id":-487654321,"title":"TestGroup","type":"group"},"date":1459368048,"text":"\/start"}}]}
  • Find the string with "chat":{"id":123456784 for a private user with chat id 123456784 ("type":"private") or "chat":{"id":-487654321 - for a group with chat id -487654321 ("type":"group", group id always negative)
  • store this Chat Identifier!
  • Now you have Bot Token (ie 110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw) and Chat Identifier (ie -487654321), which can be added to the appropriate contact fields.

VictorOps

Editions

Avaialable in Professional and Enterprise editions only!

VictorOps is a specialist alert management service. Observium integrates with VictorOps via its REST Endpoint API.

To use VictorOps integration you need a REST Endpoint URL, which can be obtained from the VictorOps web interface. Follow the steps in the image below to obtain the REST Endpoint URL. The URL will appear in the box labelled Post URL.

Once you have a REST Endpoint URL, you can create a VictorOps contact. By default notifications will be routed to everyone.

Observium supports both failure and recovery notifications and sends entity and alert checker information to VictorOps. An example alert and recovery notification is shown below.

Textlocal

Textlocal is an SMS delivery platform. It facilitates delivery of text notifications to mobile phones.

To send notifications via Textlocal you need an API access key from Textlocal along with your originator number and a recipient telephone number.

Microsoft Teams

Editions

Avaialable in Professional and Enterprise editions only!

For use Microsoft Teams transport you need Create Incoming Webhook for your Teams Channel (please read official documentation by link).

After creating Incoming Webhook, copy the link and paste it into Webhook URL field:

Example of Microsoft Teams notifications:

Web Hook

The Web Hook transport is a generic transport designed to allow you to write your own code to consume our alerts by providing the maximum amount of data.

The only requirement is a URL to direct the POST request to. The BODY of the request will be a JSON array containing an array of data.

Variable Description Example
ALERT_STATE Notified State ALERT RECOVER SYSLOG
ALERT_URL URL to Alert Entry https://observium.test/device/device=23/tab=alert/alert_entry=9827/
ALERT_ID alert_id 2839
ALERT_MESSAGE Configured alert message Configuration Changed
CONDITIONS Checker conditions or Syslog rule ifInOctets_perc ge 85
METRICS Checked metrics or Syslog message device_status = 0
SYSLOG_RULE Syslog rule Syslog Only /SYS-5-CONFIG_I/
SYSLOG_MESSAGE Syslog message Syslog Only Configured from console by derp on vty0 (95.21.0.21)
SYSLOG_PROGRAM Syslog program Syslog Only SYS-5-CONFIG_I
TIMESTAMP Alert timestamp 2016-08-08 17:22:44
ENTITY_LINK Link to entity page Not Syslog
ENTITY_NAME Entity name Not Syslog eth0
ENTITY_ID Entity id Not Syslog 76231
ENTITY_TYPE Entity type Not Syslog port
ENTITY_DESCRIPTION Entity description (ifAlias, etc) Not Syslog Transit: Level 3
DEVICE_HOSTNAME Device hostname host.observium.test
DEVICE_ID Device ID 23
DEVICE_LINK Link to device page https://observium.test/device/device=23/
DEVICE_HARDWARE Device "hardware" field CISCO7676-S
DEVICE_OS Device "OS" field Cisco IOS 15.3(3)S4 ADVIPSERVICESK9
DEVICE_LOCATION Device location London, UK
DEVICE_UPTIME Device uptime 245 days, 3h 33m 6s
TITLE Email subject / SMS alert format SYSLOG: [host.observium.test] Configuration changed
DURATION Alert duration 2m 25s (2016-08-08 17:22:44)