Orion JIRA integration

Many SolarWinds Orion users need to integrate the monitoring and alerting capabilities with task or ticket tracking systems. The recent addition of the integration to ServiceNow allowed many users to have an easy way to connect the two worlds without needing custom scripts. In a similar way, the research team at SolarWinds has written an integration with Atlassian JIRA​.

Note: This integration currently relies on the "Alert Integration" feature in Orion. Ensure that is turned on for the alerts that you want to create JIRA issues for.

To gauge interest and find early bugs, we are releasing an unofficial alpha level integration for our customers who use JIRA. This integration synchronizes Orion alerts with JIRA issues. This post will describe the configuration and usage of this integration for users to try out and let us know additional features, usability, and usefulness of the software.

The integration is meant to link alerts in Orion with issues in JIRA. For example,

A triggered alert in Orion will create a new issue in JIRA.

Alert notes in Orion will add a comment to the JIRA issue.

Acknowledged alerts will transition a JIRA issue to a certain state

Alerts that reset will transition a JIRA issue to a certain state.

Step 1: Installation

Download the bits attached to this post.

Set up the service - install the service on your main Orion server.

Step 2: JIRA Integration Configuration

Next open the file settings.json from the installation directory with a text editor like Notepad.

Update the following fields with the correct information.

Orion Settings

Setting

Description

OrionHost

Hostname of your Orion server

OrionUsername

Username of the Orion user you wish to access the Orion Information Service with. This must be an admin account in order to configure the alert notifications.

OrionPassword

Password for the user above

WebhookListenUrl

The url that JIRA will call back when an event occurs in JIRA. The port in this field will need to be accessible through the firewall so that the JIRA events will be able to communicate back to the Orion JIRA Integration service

JIRA Settings

Setting

Description

ServerHost

Hostname for your JIRA server

ServerPort

Port your JIRA server is listening on

UseHttps

Whether the JIRA server is configured to for HTTPS

ProjectKey

Project key in JIRA that you want the issues opened in.

IssueTypeKey

JIRA issue type you would like the Orion JIRA Integration to create issues as. This field is one of the predetermined list of options available in JIRA like "Story", "Task", etc.

Username

JIRA username you want to use to connect to the JIRA server

Password

Password for the above username

AcknowledgedTransitionAction

Name of the transition to set the issue to when an alert is acknowledged in Orion. Set to an empty string if not used.

ResetTransitionAction

Name of the transition to set the issue to when the alert is reset. Set to an empty string if not used

EventsToListenFor

This field is mainly for development use so do not adjust this field

FieldAssignment

Specify the mapping of Orion user properties to Jira custom fields.

The Orion properties must be added under the "Alert Integration" section of the Alert Summery page.

Restart the Orion JIRA Integration windows service after updating the configuration file.

Step 3: Orion Alert Configuration

Currently, the integration relies on the "Alert Integration" feature in Orion. Edit each alert you want to create JIRA tickets for and make sure the alert is enabled and the "Alert Integration" checkbox is checked. To do so

Navigate to the "Manage Alerts" from the admin area and edit the alert

Ensure the the alert is "Enabled"

Navigate to the summary page by clicking the "summary" tab

Expand the "Alert Integration" section and ensure that "Integrate alert with other SolarWinds products and subscribers" is checked.

Click the submit button.

Step 4: Test the integration

Trigger a test alert in Orion and confirm that the desired task is created in JIRA.

See the issue in JIRA

Update the alert notes. Confirm that alert notes you add in Orion get entered as a comment in the JIRA task.

See the notes as comments in the JIRA task.

Test complete! Congratulations, you have now just used the SolarWinds Orion JIRA Integration.

Step 5: Enjoy and give feedback

Thank you for using this alpha stage integration and please let us know by responding to this post any additional requests you have for this sort of alerting integration. Also, since this is not an official release, you can not call SolarWinds support and get support for this feature. Support will be provided through this post from the research team at SolarWinds. If things are not functioning well, please stop the Orion JIRA Integration windows service and set the service to be disabled so that it does not restart on reboot.

The idea of integration in great and now the integration (using version 1.0.3) is succesfull, but there are 2 current problems with the process:

1. Creating Jira tickets stops every day (after 15-20 hours of working); the workaround is to restart Windows service "SolarWinds Orion Jira Integration Service". There are no errors in the event logs; debug log just stops wtiting new entries.

Can someone share where the log file for this app is located? I believe I have my settings file configured correctly and the process has been restarted but I'm not seeing an attempt of the Orion server to send anything to the Jira Sever. In C:\ProgramData\SolarWinds\Logs I found ' OrionJiraIntegrationService' and older 'OrionJiraIntegrationService.log' files but each only contains a single line like the following

1. If I don’t have any jira admin access but as the user, I have access the creation ticket. So use that credentials technically it should be generated ticket right?

2. I didn’t get how actually you define Orion “Alert“ with Jira “Key”. Can you please help me if I use Solarwinds default “Nodes Down” what should I set "EventsToListenFor": [ ] Should I put the SolarWinds “Alert ID” or "Alet name"?

This seems really cool. I would love to see something like this but for ServiceNow Event Management. We have the ServiceNow Incident Management but we can't use the SolarWinds Integration feature because we use SNOW Event Management in between our monitoring systems and our Incident Management system to help control the noise as well as to correlate events from multiple monitoring systems into a single related incident. It would be even more awesome if the SolarWinds/ServiceNow integration included an option for users that also own the Event Management module, but I would honestly just like a way to subscribe our SNOW Event Management system to SolarWinds.

Currently we are using a custom powershell script I wrote that is triggered by an alert. The script forwards all of the alert and object details to SNOW Event Management, but this is cumbersome and hard to administer. The normal way that ServiceNow Event Management integrates with SolarWinds is to query the SolarWinds events table every two minutes, but our events table is massive, so having that large SQL/SWQL query performed every 2 minutes wreaks havoc on our DB performance. Plus, it means up to two minutes can pass before Event Management is aware of issues. Lastly, it means that we can't control what kinds of events get sent to Event Management. Using the PowerShell script through alert actions at least gives us control over what gets sent to Event Management, but like I said, it's a real pain as well. I really wish we could just use the Alert Integration piece at the bottom of the Alerts configuration page to control what goes to Event Management.

Is there any way that the SolarWinds research team could at least post the source code for this Jira module? I wouldn't mind taking a crack at creating my own integration service, but I'm not really sure where to start. Looking at the code for this Jira service would be super helpful.

Unfortunately right now it's not, sorry. Also it is overly complex making it a massive pain anytime we want to make changes to it and especially when needing to alert on a new object type. I'm actually working on a much simpler script that will automatically send the proper variables based on the object type to ServiceNow so that whenever we want to alert on a new object type I don't have to create the massive list of argument names and Orion variables like I do right now.

If I can pull this new method off it should be easily shareable and useful. We'll see.

hanks for this. I am struggling to get this to work. I have SSO enabled in my environment, so not sure if that is causing issues with my setup. Also where is the log file located as I can not seem to find it to help troubleshoot?

***EDIT***

I found the log file and was able to get things semi-working. The issue I am having, is it is erroring out on my fields. I set the settings in the settings.json, but they seem to not be working. Below is the error I receive. Also it seems everytime the the service is restarted it creates a new WebHook as well.

at Atlassian.Jira.Remote.JiraRestClient.<ExecuteRequestAsync>d__11.MoveNext()

Would it be possible to have a option in the settings.json to say which fields needs to be filled in Jira?

Something like:

FieldAssignment": {

"Customer reporter": "Monitoring",

"Solution group": "Infra backend team",

"Customer site": "$NodeLocation",

"Labels": "$NodeFunction"

}

Where the ones without $ is a fixed Text and the ones with $ are the user properties fields received from the Notification Subscriber.

Just an idea

Few other notes:

When restarting the service another WebHook is being created in Jira next to the already existing one.

When installing the plug-in, the created service is set as 'Log on as: Network Service account'. When started no log files are being created and the service is hanging when trying to stop. When set to 'Log on as: Local System Account' it starts fine and starts logging and connecting to the Orion server and Jira server.

SolarWinds solutions are rooted in our deep connection to our user base in the THWACK® online community.
More than 150,000 members are here to solve problems, share technology and best practices, and directly
contribute to our product development process.
Learn more today by joining now.