Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Add an OP5 integration in Jira Service Management

  • Map alert actions

  • Configure the integration in OP5

Install the Jira Service Management plugin for OP5

...

Jira Edge Connector (abbreviated as JEC) is a prerequisite for configuring the outgoing authentication of OP5 integration. Download the latest version of

...

the OP5package from this repository.

Expand
titleFor OP5 Monitor's Red Hat-based distributions

Either share the OP5 file to the remote OP5 monitor or copy the link on the opening page.

  • Run the following command:
    wget https://linkTo.the.OP5Package

  • Run the following command :
    rpm -i

...

note
  • jsm-op5-<your_version>.rpm

Before rpm upgrades, back up your configuration files.

During upgrades, the rpm package does not overwrite the existing configuration. It saves the new default configuration file as opsgenie- integration.conf.rpmnew. Find more information about rpm upgrade config file handling from here.

Note

To update from version 201X-XX-XX to 2.X.X, add the --force parameter. For example: rpm -U --force opsgeniejsm-integration-<your_version>.rpm

We suggest that you backup your configuration files before updating.

Note

If while installing the rpm package you get an error that the package is obsolete, use "rpm -i opsgenie-op5-<your_version>.rpm --nodeps" instead.

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

...

Learn more about rpm upgrade config file handling.

Add OP5 integration

Info

You can add this integration from your team dashboard

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 only add this integration from your team dashboard as the Integrations page under Settings is not available in your plan.

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.

To do that,

  1. Go to your team’s dashboard from Teams,

  2. Select Integrations, and select Add integration.

Follow the rest of the steps to complete the integration.

...

The plugin uses a golang-executable file (included in the plugin as send2opsgeniesend2jsm) to create, acknowledge, and close alerts in Jira Service Management. Configure OP5 to execute this file on events to create, acknowledge, and close alerts in Jira Service Management. Setting the apiKey is requiredmandatory. Other configuration parameters are set to defaults that work with OP5.

The following table lists the parameters and their locations:

Expand
titleConfiguration parameters

Configuration parameters

 Description

Location

apiKey

Copy the API key from the OP5 integration created

...

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

/home/

...

jsm/

...

jec/conf/jec-config.json

baseUrl

...

Can change this field according to your Jira Service Management

...

environment (for example: EU, sandbox)

...

/home/

...

jsm/

...

jec/conf/jec-config.json

responders

Responders field is used to specify which teams should be notified for the OP5 alerts. This field is used to set the default teams field value. Modify to route different alerts to different teams in integration settings.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

tags

Tags field is used to specify the tags of the alert that created in Jira Service Management.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

logPath

Specifies the full path of the log file. (Default value is /var/log/

...

jec/

...

send2jsm.log)

/home/

...

jsm/

...

jec/conf/

...

integration.conf

...

nagios2jsm.http.proxy.enabled

...

nagios2jsm.http.proxy.enabled field is to enable/disable external proxy configuration. The default value

...

is false.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

...

nagios2jsm.http.proxy.host

It is the host of the proxy.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

...

nagios2jsm.http.proxy.port

It is the port of the proxy.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

...

nagios2jsm.http.proxy.scheme

It is the proxy connection protocol. It may be http or https depending on your proxy servers. Its default value is http.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

...

nagios2jsm.http.proxy.username

It is the proxy authentication username.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

...

nagios2jsm.http.proxy.password

It is the proxy authentication password.

/home/

...

jsm/

...

jec/conf/

...

integration.conf

There are three ways to configure Configure the golang-executable files:

...

file in any of the following three methods:

Expand
titleMethod 1: Configure from conf file

...

Configure from

...

the /home/

...

jsm/

...

jec/conf/

...

integration.conf file.

...

This overwrites any configuration you previously made in the script.

...

Expand

Configure by entering flags

...

into the command in

...

the jsm.cfg

...

file. Use -apiKey flag for

...

your apiKey and -ns flag for nagios_server name. If multiple OP5 servers are not in use, there is no need to define the nagios server. Using flags overwrites all the other configuration methods

...

discussed earlier in the article.
Configure the apiKey from the cfg file as follows:

Code Block
define command {
    command_name    notify-service-by-
opsgenie
jsm
    command_line    /home/
opsgenie
jsm/oec/
opsgenie
jsm-op5/
send2opsgenie
send2jsm -apiKey="apiKey1" -entityType=service ...
}

When apiKey is added to the cfg file, it overrides the apiKey in the config.json file.

Info

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

...

, see dynamic fields.

Expand
titleConfigure from script

Configure apiKey and nagios_server from

...

send2jsm.go script. To use this option, build the script again and put the new executable to /usr/bin directory. Find information about the location of the

...

send2jsm.go and how to build a go script in the "Source for send2jsm and recompiling" section.

Define Jira Service Management as Contact

  1. Log in to your OP5 monitor.

  2. Go to your the /opt/monitor/etc directory where you'll find nagiosetc directory to find nagios.cfg.
    cd /opt/monitor/etc

  3. Add the following line to the main Nagios configuration file (nagios.cfg).

    Code Block
    ...
    cfg_file=opsgeniejsm.cfg
    ...
    
  4. Reboot the monitor to see the "opsgeniejsm" contact in the contact list.

  5. Add the contact "opsgeniejsm" to the OP5 Monitor’s main contact group.

If everything goes well, alerts are created in Jira Service Management for every notification created in OP5.

...

Configure Jira Service Management to update OP5

This step is optional.

Use Jira Service Management’s JEC and the OP5 script to update alerts on OP5. This enables deployment of your own scripts/ability to modify the ones provided and execute customized actions on OP5. To be able to execute actions in OP5, JEC gets the configuration parameters from the configuration file. The configuration file can be is found under /home/opsgeniejsm/oecjec/conf/jec-config.json.

Configuration parameters

...

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

Source for send2jsm and recompiling

The source for the executable send2jsm is found in /usr/bin/ and send2jsm.go, in /home/jsm/jec/scripts respectively and is also available in this repository. To change the behavior of the executable, edit send2jsm.go and build it by using the following command: go build send2jsm.go

For installing go, refer to http://golang.org/doc/install. Note that the executable in the plugin is built for linux/amd64 systems.

FAQ and troubleshooting

If the integration is not working, review this section and follow the guidance prescribed:

...

Expand
titleSteps to troubleshoot
  1. First, check your alert logs.

  • If a "Posted [Acknowledge] action to OP5.." error does not appear in the log, it means Jira Service Management didn't send the Acknowledge action to OP5. Check the integration configuration, it might not have matched the alert action.

  • If a "Executed [Acknowledge] action via JEC with errors." error appears in the log, it means the op5ActionExecutor.groovy script in JEC has encountered an error. Check the log files under /var/log/jsm/ for error logs.

  • If the "Posted [Acknowledge] action to OP5.." is the only error to appear in the log and no related log after that, it might mean JEC is having connection problems. Check the log files under /var/log/jsm/ for error logs.

Note

If no logs exist, restart JEC and try sending an Acknowledge action again.

3. Could not open OP5 RPM package

Expand
titleSteps to troubleshoot
  • If you figure out while installing the rpm package that the package is obsolete, use rpm -i jsm-op5-1.0.4-rpm-x86-64.rpm --nodeps instead.

  • If you get "is already installed" error, use rpm -i jsm-op5-1.0.4-rpm-x86-64.rpm --force instead.

If unsure of the problem, set the OECJEC's script log level to debug, try again, and contact us and share the log files found under /var/log/jsm/.

Map alert actions

...

In the Send alert updates back to OP5 section, map Jira Service Management actions to OP5 actions when the source of the alert is OP5 (when the alert is created by OP5 integration itself). Map different Jira Service Management actions to different OP5 actions. For example, acknowledge the alert in OP5, when the alert is acknowledged from OP5. To do this, define If alert is acknowledged in Jira Service Management, acknowledge in OP5 mapping in Send alert updates back to OP5 section. 

Source for send2jsm and recompiling

The source for the executable send2jsm is found in /usr/bin/ and send2jsm.go, in /home/jsm/jec/scripts respectively and is also available in this repository. To change the behavior of the executable, edit send2jsm.go and build it by using the following command: go build send2jsm.go

For installing go, refer to http://golang.org/doc/install. Note that the executable in the plugin is built for linux/amd64 systems.