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.

image2017-8-18 14-54-4.png

image2017-8-18 14-54-43.png

image2017-8-18 14-55-32.png

image2017-8-18 14-56-21.png

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

SettingDescription
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

WebhookListenUrlThe 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
ServerHostHostname for your JIRA server
ServerPortPort your JIRA server is listening on
UseHttpsWhether the JIRA server is configured to for HTTPS
ProjectKeyProject 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.

image2017-8-18 11-19-47.png

UsernameJIRA username you want to use to connect to the JIRA server
PasswordPassword 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.

ResetTransitionActionName of the transition to set the issue to when the alert is reset. Set to an empty string if not used
EventsToListenForThis 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.

A sample definition would be

"FieldAssignment" : {

     "JiraField1" : "IP Address",

     "JiraField2" : "Caption"

}

Sample settings file

{

    "OrionHost": "orion.foo.local",
    "OrionUsername": "Test",
    "OrionPassword": "test",
    "WebhookListenUrlRoot": "">http://localhost:8080",
    "Jira" : {
        "ServerHost" : "jira-01.foo.local",
        "ServerPort" : "8080",
        "UseHttps": false,
        "ProjectKey" : "ITX",
        "IssueTypeKey": "Task",
        "Username": "JiraUser",
        "Password": "JiraPass",
        "AcknowledgedTransitionAction" :  "",
        "ResetTransitionAction" :  "Done",
        "EventsToListenFor": [],
        "FieldAssignment": {},
    }
}

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

image2017-8-19 9-45-33.png

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

  1. Navigate to the "Manage Alerts" from the admin area and edit the alert
    image2017-8-21 9-44-57.png

  2. Ensure the the alert is "Enabled"
    image2017-8-19 9-47-58.png

  3. Navigate to the summary page by clicking the "summary" tab
    image2017-8-21 9-46-53.png
  4. Expand the "Alert Integration" section and ensure that "Integrate alert with other SolarWinds products and subscribers" is checked.
    image2017-8-21 9-49-6.png
  5. 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.

image2017-8-19 9-55-37.png

See the issue in JIRA

image2017-8-19 13-13-36.png

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

image2017-8-19 13-15-3.png

See the notes as comments in the JIRA task.

image2017-8-19 13-16-46.png

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.

Thanks

SolarWinds Architecture Research and Innovation Team

Message was edited by: Zeid Derhally Updated attachment to provide more logging.

Message was edited by: Zeid Derhally Updated to include information about the Field Assignment functionality

SolarWindsOrionJiraIntegration-1.0.3.zip
  • Hi,

    Reviving this old(ish) tread.

    This sounds really interesting to me and my current environment.

    What is the status of this project?  any updates to the code version?  any idea if/when an RC version could be ready?

    Thanks

    Ian

  • 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.

  • I would be very interested in this as well. Wondering if there was any release of this?

  • Is your script vanilla enough to share? I'd like to take a look at it since we're going through the preliminary steps of SNow integration today.

  • 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.

  • Thanks for the update. If you get it to the point where you can share it, let me know. I'd love to look at it, and maybe save me some heartburn.

  • 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"?

    3. And how do you check the log?

    Thank you for your time and help. Appreciate.

  • Hi

    To achieve this integration . SMTP Server setting is must ?  how Solarwinds will contact JIRA Server ? Can someone assist me on this

    Regards

    Prasanna

  • 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

    *** Assembly SolarWinds.OrionJiraIntegration.Service, Version=1.0.3.0, Culture=neutral, PublicKeyToken=null, .NET version v4.0.30319 ***

    2018-08-30 15:10:27,189 [5] INFO  JiraApp.OrionJiraService - Writing out alert info

    Which seems to correspond to each time I started the app.

    Any help is greatly appreciated.

    Thanks!