• Get started
  • Documentation

Integrate Opsgenie with Opsview

Opsview logo

What does Opsgenie offer Opsview users?

Use Opsgenie’s Opsview Integration to forward Opsview alerts to Opsgenie. Opsgenie determines the right people to notify based on on-call schedules– notifies via email, text messages (SMS), phone calls and iPhone & Android push notifications, and escalates alerts until the alert is acknowledged or closed.

Functionality of the integration

  • When a host/service alert is created in Opsview, an alert is created in Opsgenie automatically through the integration.

  • When the alert is closed by Opsview, the corresponding alert in Opsgenie is automatically closed.

  • When the alert is acknowledged in Opsview, the corresponding alert in Opsgenie will automatically be acked.

Add Opsview 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 Opsview and select Add.

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

  3. Copy the command that includes the API key. It's in the format: nagios2opsgenie -apiKey=[API_KEY]. This key is used in the Opsview configuration later.

  4. Select Save Integration.

Installing the Opsview Plugin

For Opsview V6 and above

For Red Hat Based Distributions
Download Opsgenie Opsview plugin.

For Debian Based Distributions
Download Opsgenie Opsview plugin.

For Red Hat Based Distributions

  1. Download Opsgenie Opsview plugin.

  2. Run the following command:

Text

1 2 3 sudo rpm -i opsgenie-opsview-<your_version>.rpm # for Opsview v6 and above sudo rpm -i opsgenie-opsviewv6-<your_version>.rpm

For Debian Based Distributions

  1. Download Opsgenie Opsview plugin.

  2. Run the following command:

Text

1 2 3 sudo dpkg -i opsgenie-opsview_<your_version>.deb # for Opsview v6 and above sudo dpkg -i opsgenie-opsviewv6_<your_version>.deb

Configure the golang-executable to use a proxy for sending HTTP requests by defining the environment variable HTTP_PROXY=http://host:port

Configuration in Opsview

  1. In your Opsview Manager, go to Settings > Notification Methods.

  2. Define a new Notification method named opsgenie. Paste the command provided by Opsgenie, that's in the format nagios2opsgenie -apiKey=[API_KEY] -opsgenieApiUrl=[API_URL]

  3. Click Submit Changes.

For Opsview v6 and above

When creating a new Notification Method, Opsview does not allow using slash character ("/") in commands. Because of this you should remove "https://" part of the Opsgenie API URL.

Opsview new notification method

Additionally, the nagios2opsgenie executable accepts the following flags:

  • apiKey – nagios2opsgenie uses this key to authenticate to Opsgenie. API key is also used to identify the right integration configuration that should be used to process alerts.

  • teams – Teams field is used to specify which teams are notified for the Opsview alerts.

  • tags – Tags field is used to specify the tags of the alert that created in Opsgenie.

  • logPath – Specifies the full path of the log file. (Default value is /var/log/opsgenie/nagios2opsgenie.log)

  • logLevel – Possible values are debug, info, warning, error. Default value is warning.

  • opsgenieApiUrl – If you're using Opsgenie from another domain(eg. EU, sandbox), update this configuration.

To send additional custom arguments, add them after the flags as: customArgName1 customArgValue1 customArgName2 customArgValue2
Parse custom arguments by adding {{_payload.customArgName}} to wherever is needed on the input fields.
For more information about using raw parameters please visit Dynamic Fields document.

Sample Webhook Message from Opsgenie Opsview Plugin

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 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 { "NAGIOS_LASTHOSTPROBLEMID": "32", "NAGIOS_LASTSERVICECHECK": "1497942090", "NAGIOS_SERVICESTATE": "WARNING", "NAGIOS_HOSTALIAS": "Opsview Master S'erver ", "NAGIOS_SHORTDATETIME": "2017-06-20 07:01:30", "NAGIOS_SERVICESTATETYPE": "HARD", "NAGIOS_CONTACTPAGER": "NAGIOS_CONTACTPAGER", "NAGIOS_LONGHOSTOUTPUT": "NAGIOS_LONGHOSTOUTPUT", "NAGIOS_CONTACTALIAS": "Administrator", "NAGIOS_LASTSERVICECRITICAL": "1497942030", "NAGIOS_LASTSERVICESTATE": "WARNING", "NAGIOS_LASTHOSTSTATECHANGE": "1497889073", "NAGIOS_LONGSERVICEOUTPUT": "NAGIOS_LONGSERVICEOUTPUT", "NAGIOS_SERVICESTATEID": "1", "NAGIOS_LASTSERVICESTATECHANGE": "1497942030", "NAGIOS_SERVICENOTES": "Application - Opsview:Monitors how long it has been since housekeeping cronjob was successfully run ", "NAGIOS_SERVICENOTIFICATIONNUMBER": "0", "NAGIOS_HOSTGROUPNAME": "Monitoring Servers", "NAGIOS_HOSTDOWNTIME": "0", "NAGIOS_HOSTPROBLEMID": "0", "NAGIOS_LASTHOSTUNREACHABLE": "0", "NAGIOS_CONTACTGROUPLIST": "k4_opsview-components,hostgroup2_servicegroup3", "NAGIOS_SERVICEDURATION": "0d 0h 1m 0s", "NAGIOS_NOTIFICATIONCOMMENT": "NAGIOS_NOTIFICATIONCOMMENT", "NAGIOS_HOSTADDRESS": "localhost", "NAGIOS_LASTHOSTDOWN": "1497889073", "NAGIOS_SERVICEACKCOMMENT": "NAGIOS_SERVICEACKCOMMENT", "NAGIOS_CONTACTNAME": "admin/01receiveallalertsduringworkhours", "NAGIOS_HOSTSTATE": "UP", "NAGIOS_HOSTSTATEID": "0", "NAGIOS_LASTHOSTCHECK": "1497942030", "NAGIOS_NOTIFICATIONNUMBER": "0", "NAGIOS_HOSTACKAUTHOR": "NAGIOS_HOSTACKAUTHOR", "NAGIOS_LASTSERVICEPROBLEMID": "14", "NAGIOS_SERVICEDOWNTIME": "0", "NAGIOS_LASTHOSTUP": "1497942030", "NAGIOS_HOSTATTEMPT": "1", "NAGIOS_HOSTGROUPALIAS": "Monitoring Servers", "NAGIOS_LONGDATETIME": "Tue Jun 20 07:01:30 UTC 2017", "NAGIOS_HOSTACKCOMMENT": "NAGIOS_HOSTACKCOMMENT", "NAGIOS_CONTACTEMAIL": "dummy@localhost", "NAGIOS_HOSTDURATION": "0d 14h 43m 37s", "NAGIOS_HOSTNOTIFICATIONNUMBER": "0", "NAGIOS_HOSTOUTPUT": "OK - localhost: rta 0.016ms, lost 0%", "NAGIOS_HOSTSTATETYPE": "HARD", "NAGIOS_LASTHOSTSTATE": "UP", "NAGIOS_SERVICEACKAUTHOR": "NAGIOS_SERVICEACKAUTHOR", "NAGIOS_TIMET": "1497942090", "NAGIOS_LASTSERVICEOK": "1497941970", "NAGIOS_SERVICEOUTPUT": "CRONJOBS WARNING - Housekeeping cronjob stat file indicates the job has not run yet", "NAGIOS_SERVICEPROBLEMID": "78", "NAGIOS_NOTIFICATIONAUTHOR": "NAGIOS_NOTIFICATIONAUTHOR", "NAGIOS_LASTSERVICEWARNING": "1497942090", "NAGIOS_LASTSTATECHANGE": "NAGIOS_LASTSTATECHANGE", "NAGIOS_NOTIFICATIONTYPE": "FLAPPINGSTART", "NAGIOS_SERVICEATTEMPT": "3", "NAGIOS_SERVICEDESC": "Opsview Housekeeping Cronjob Monitor", "NAGIOS_HOSTNAME": "opsview", "apiKey": "token", "teams": "team1, team2", "tags": "tag1, tag2" }

 

Still need help?

The Atlassian Community is here for you.