• Get started
  • Documentation

Integrate with Opsview

This article highlights a new alerting feature that's natively available in Jira Service Management which is gradually rolling out to some Jira Service Management Cloud customers. It may not yet be visible or available on your site.

What does the integration offer?

OpsView Logo

Use Jira Service Management's Opsview Integration to forward Opsview alerts to Jira Service Management. Jira Service Management 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.

How does the integration work?

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

  • When the alert is closed by Opsview, the corresponding alert in Jira Service Management is automatically closed.

  • When the alert is acknowledged in Opsview, the corresponding alert in Jira Service Management will automatically be acked.

Set up the integration

Opsview is an API integration. Setting it up involves the following steps:

  • Add an Opsview integration in Jira Service Management

  • Configure the integration in Opsview

Add an Opsview integration

Bidirectional integrations aren’t supported in Free and Standard plans. All the other integrations are supported at a team level in Free and Standard; however, for their outgoing part to work, you need to upgrade to a higher plan. To add any integration at a site level through Settings (gear icon) > Products (under JIRA SETTINGS) > OPERATIONS, you need to be either on Premium or Enterprise.

Adding an integration from your team’s operations page makes your team the owner of the integration. This means Jira Service Management only assigns the alerts received through this integration to your team.

To add an Opsview integration in Jira Service Management, complete the following steps:

  1. Go to your team’s operations page.

  2. On the left navigation panel, select Integrations and then Add integration.

  3. Run a search and select “Opsview”.

  4. On the next screen, enter a name for the integration.

  5. Optional: Select a team in Assignee team if you want a specific team to receive alerts from the integration.

  6. Select Continue.
    The integration is saved at this point.

  7. Expand the Steps to configure the integration section and copy the command that includes the API key. It's in the format: nagios2jsm -apiKey=[API_KEY].
    You will use this key while configuring the integration in Opsview later.

  8. Select Turn on integration.
    The rules you create for the integration will work only if you turn on the integration.

Install the Opsview Plugin

Opsview V6 and above

For RedHat-based distributions

  1. Download Opsgenie Opsview plugin.

  2. Run the following command:

Text

1 2 3 sudo rpm -i jsm-opsview-<your_version>.rpm # for Opsview v6 and above sudo rpm -i jsm-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 jsm-opsview_<your_version>.deb # for Opsview v6 and above sudo dpkg -i jsm-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

Configure the integration in Opsview

To configure the integration of Opsview with Jira Service Management, complete the following steps:

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

  2. Define a new notification method named jsm.

  3. Paste the following as the command for jsm:nagios2jsm -apiKey=d9a3b025-eb6b-4c6f-a043-046f330c00eb -jsmApiUrl=https://api.atlassian.com.

  4. Select Submit Changes.

In case of 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 Jira Service Management API URL.

The nagios2jsm executable accepts the following flags:

  • apiKey – nagios2jsm uses this key to authenticate to Jira Service Management. 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 Jira Service Management.

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

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

  • jsmApiUrl – If you're using Jira Service Management 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.
Read more about dynamic properties.

Sample webhook message from the 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.