• Products
  • Get started
  • Documentation
  • Resources

Integrate Opsgenie with LibreNMS

LibreNMS logo

What does Opsgenie offer to LibreNMS users?

Using Opsgenie LibreNMS integration, LibreNMS forwards alerts to Opsgenie with detailed information. Opsgenie acts as a dispatcher for LibreNMS alerts, determines the right people to notify based on on-call schedules– notifies via email, text messages (SMS), phone calls and iOS & Android push notifications, and escalates alerts until the alert is acknowledged or closed.

Functionality of the integration

  • When an alert is triggered in LibreNMS, the alert is created in Opsgenie.

  • When the alert is acknowledged in LibreNMS, the alert is acknowledged in Opsgenie.

  • When the alert is closed in LibreNMS, it closes the alert in Opsgenie.

  • If Send Alert Updates Back to LibreNMS is enabled, actions for LibreNMS are executed in LibreNMS when the chosen action is executed in Opsgenie for alerts which are created by the LibreNMS integration. (Optional)

Add LibreNMS Integration in Opsgenie

If you're using Opsgenie's Free or Essentials plan or if you’re using Opsgenie with Jira Service Management's Standard plan, you can add this integration from your team dashboard only. The Integrations page under Settings is not available in your plan.

  1. Go to Teams and select your team.

  2. Select Integrations on the left navigation and then select Add integration.

Adding the integration from your team dashboard will make your team the owner of the integration. This means Opsgenie will assign the alerts received through this integration to your team only. Follow the rest of the steps in this section to set up the integration.

  1. Go to Settings > Integrations. Search for LibreNMS and select Add.

  2. Specify who is notified of LibreNMS alerts using the Responders field. Auto-complete suggestions are provided as you type.

  3. Copy the Webhook URL.

  4. Select Save Integration.

Configuration in LibreNMS

  1. Open Global Settings from the gear icon on the top menu in LibreNMS.

  2. Select the Alerting Settings tab.

  3. Find "Opsgenie" from the list and expand it by clicking on the arrow.

  4. Paste the Webhook URL into the "Opsgenie URL" field.

LibreNMS webhook

Integration via OEC (Optional)

Use Opsgenie’s OEC and the LibreNMS script to update alerts on LibreNMS. This enables the deployment of your own scripts/ability to modify the ones provided and execute customized actions on LibreNMS.

To use the LibreNMS integration package, follow the steps in the sections below through the end.

Download the latest version of OEC

To download the latest version of LibreNMS package, please use readme file of oec-scripts repository.

Installation

For Red Hat Based Distributions

  • Run following command : 

    1 rpm -i opsgenie-librenms-<your_version>.rpm

If while installing the rpm package you get an error saying that the package is obsolated, you need to use "rpm -i opsgenie-librenms-<your_version>.rpm --nodeps" instead.

If you get "is already installed" error, use "rpm -i opsgenie-librenms-<your_version>.rpm --force" instead.

For Debian Based Distributions

  • Run following command : 

    1 dpkg -i opsgenie-librenms-<your_version>.deb

For Windows

  • Unzip opsgenie integration zip file which contains OEC package into a directory (C:\opsgenie\oec is the preferred path.)

  • In order to learn more about how to run OEC you can refer to the Running OEC documentation.

Configuring LibreNMS Integration for OEC

  • In order to use OEC utility, enable Send Via OEC.

  • Other configurations regarding LibreNMS can be done either via integration page or OEC configuration file config.json. The configuration via the integration page precedes the configuration file.

Configuration parameters

All of these are mandatory to fill.

  • apiKey – Copy the API key from the LibreNMS integration you've created above.

  • url – Your LibreNMS server URL.

  • apiToken – Your LibreNMS server API token.

The package that you downloaded also includes OEC utility which is located under /usr/local/bin and the script that is needed to be run by OEC which is under /home/opsgenie/oec/scripts. After the configuration of OEC is done, you need to run it. In order to learn more about how to run OEC, you can refer to the Running OEC documentation.

Sample Parameters Sent to OEC

JSON

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 { "type": "libreNMS", "alertId": "f3b3475f-3859-4bd1-b472-ab339ea1e61d", "customerId": "4a644594-240d-4a51-ab88-0171ed29c0ce", "action": "Acknowledge", "mappedActionV2": { "name": "ackAlert", "extraField": "" }, "integrationId": "1334572c-f412-428c-9ab1-607f8313fba3", "integrationName": "LibreNMS", "integrationType": "LibreNMS", "sendViaOEC": true, "alertFlowContext": { "requestId": "9eb36837-e601-12da-92ba-8fe3224230ad", "traceId": "9eb36837-e601-12da-92ba-8fe3224230ad", "content": { "alertId": "f3b3475f-3859-4bd1-b472-ab339ea1e61d" } }, "url": "", "apiToken": "", "rule": "%macros.device_up = \"1\" && %processors.processor_usage >= \"1\"" }

 

Additional Help