Skip to main content
Kinetic Community

Nagios XI Adapter

Overview

The Nagios XI Adapter is an adapter that is installed into Kinetic Bridgehub that allows data from a Nagios XI server to be pulled back using bridging.

Installation

Note: Check to ensure that this adapter isn't already installed into your bridgehub as part of the base installation before undertaking the installation tasks.

  • Download the kinetic-bridges-adapter-nagios.jar file and it's dependencies here
  • Unzip the downloaded file into the WEB-INF/lib folder for you kinetic-bridgehub installation.
  • Restart the tomcat that your kinetic-bridgehub installation is located in

Setup

Configuration Values

Name Description
API Key Nagios XI API Key
Nagios XI URL The url of the Nagios XI server to connect to including the context path

Example Configuration

Name Value
API Key soiu3908xEDROdi02ehjFfd82DFgfg8023jsdkxzfj393dDINRO2398xjY
Nagios XI URL https://yourserver.yourdomain.com/nagiosxi

Structures, Fields, and Queries

Structures

  • The following structures, which map directly to Nagios XI REST API routes, are supported
    • objects/hoststatus
    • objects/servicestatus
    • objects/logentries
    • objects/statehistory
    • objects/comment
    • objects/downtime
    • objects/contact
    • objects/host
    • objects/service
    • objects/hostgroup
    • objects/servicegroup
    • objects/contactgroup
    • objects/hostgroupmembers
    • objects/servicegroupmembers
    • objects/contactgroupmembers

Fields

Available fields depends on the structure that is being queried. The easiest way to get a list of available fields for the various structures is to perform a simple GET query against them through the Nagios XI REST API Docs Help page.

These fields can then be used in the following format in a bridge model mapping: ${fields('name')}

Queries

The following was taken from a Nagios XI 5.4 REST API Doc, Objects Reference page. Our query qualifications map directly to this. All parameters will be URL encoded.

Building Limited Queries

Sometimes you will need to only see a specific subset of data. Since these queries are generally akin to MySQL queries on databases, there are some modifiers that you can add in to get the data that you want. This section will show some examples of these modifiers and give a small reference table of modifiers that are available for these API objects.

Values in italics are considered optional and are not necessary to use the parameter. Anything inside parenthesis ( ) is a default value.

Parameter Values Examples
starttime <timestamp> (Default: -24 hours) starttime=1524254627  - Displays the last week of data until now.
endttime <timestamp> (Default: now) starttime=1523649827&endtime=1524254627  - Displays 1 week of data starting 2 weeks ago. Should be used with starttime.
<column> <type>:<value>

name=lk:local  - Displays any matching name with 'local' anywhere in the string.

name=in:localhost,nagios,testhost  - Displays any matching name with the comma-separated list.

Note: You can use multiple different column names in a row such as: host_name=localhost&current_state=1

Any available field for a structure can be used in the query as a <column>.

 

Changelog

v1.0.0 (2018-04-27)

  • Initial Version