Keywords: Supervision, Icinga, Nagios, Linux

Installation of the Icinga-Reporting with JasperServer
Prev | Chapter 9. Integration With Other Software | Next

## Installation of the Icinga-Reporting with JasperServer

The Icinga-Reporting is based on the IDOUtils backend and just like the Icinga-Core, it will support all major database platforms.

Here we'll give you a little instruction how to install the Icinga-Reporting with JasperServer.

Prerequisites

You need Icinga-Core and IDOUtils installed and running. Icinga-Reporting also requires a system to run the JasperServer based on Tomcat.

| Note
If you don't have Icinga yet please follow the instructions given in the "quickstart-idoutils" documentation.

Install the JasperServer

You can use the JasperServer installation binary or the specific WAR-Archive to deploy the software in an exisiting engine.

- Install from binary

  You can use the JasperServer-ce-linux-installer provided on Sourceforge with included the MySQL-Database and the Tomcat Server. Just execute the installer-binary which leads you through the install process.

- Install WAR-Archive

  You can deploy the JasperServer-CE WAR into an existing Tomcat6 Server and use the existing Icinga Database for the repository. Here we describe the WAR-installation into a Tomcat6 Server. Also checkout the official JasperServer-Installation Guide here.

Install Tomcat using your OS repositories

Fedora/RHEL/CentOS/openSuSE/SLES

     #> yum install tomcat6

Debian/Ubuntu

    #> apt-get install tomcat6

Install JasperServer CE into your Tomcat Server

- Download jasperserver-ce-x.x.x-bin.zip from Sourceforge/Jasper

- Follow the installation documentation published on Sourceforge/Jasper (JasperServer-CE-Install-Guide.pdf)

After sucessfull JasperServer installation the interface is reachable on http://<yourhost>:8080/jasperserver and you are able to login with jasperadmin/jasperadmin go the next step. Please change the default password as soon as possible.

In case of any error consult the JasperServer Troubleshooting Guide

Download the Templates

- Download the Icinga-Reporting package from Sourceforge/Icinga

- Or using GIT: you can also download all templates and the actual servlet implementation in our :git://git.icinga.org/icinga-reports.git/.

  Take your clone from the icinga-reports.git to get a fresh branch

      #> git clone git://git.icinga.org/icinga-reports.git

- Or download the software using https://git.icinga.org/index?p=icinga-reports.git;a=snapshot;h=refs/heads/master;sf=tgz.

Install the Icinga-Reporting- Package

Unpack the downloaded file and copy it to your JasperServer-Directory.

    #> tar xzvf icinga-reports-xxx.tar.gz
    #> cp icinga-reports/ReportPackage/icinga_report_package.zip /opt/jasperserver/scripts/
    #> cd /opt/jasperserver/scripts/

Importing the whole reporting package requires just one command:

    #> ./js-import.sh --input-zip icinga_report_package.zip

If you want to update an existing repository please use the following command:

    #> ./js-import.sh --input-zip icinga_report_package.zip --update

You can export the whole Icinga part of the repository with the following command:

    #> ./js-export.sh --uris /Icinga --output-zip icinga_report_package.zip

| Note
If the import scripts fails, please check your jasperserver.xml for the current user and password. You can change the default user and password in <jasperserver-ce-dir>/scripts/config/js.jdbc.properties

| Note
The export-/import-process is explained in detail at chapter 5.12 of the JasperServer CE-Install-Guide

Install the JAVA classes for SLA- Reports

Generating automatic reports for last week, last month or last year requires to calc the dates automatically for the specific reports. To use that feature you have to install the icinga-reporting.jar archive into the Jasper lib directory. It should be in the WEB-INF folder of your installation. Please don't forget to restart your jasper-server after installation.

Configure quartz the scheduler

The reporting distribution is done via quartz scheduler. To configure the sender mail and your local gateways please edit the following file <tomcat_home>/webapps/jasperserver/WEB-INF/js.quartz.properties. Please restart the tomcat server to activate the new settings.

    service tomcat6 restart or /etc/init.d/tomcat restart

Configure your database connection

Login to http://localhost:8080/jasperserver with jasperadmin/jasperadmin.

After a successfull package installation you will find the datasource here:

/root/Icinga/datasource (be sure that Refine contains "changed by anyone").

- Edit the existing datasource and configure your values.

- Test the configuration and save the connection.

- All reports in our package point to this datasource and should be able to run.

| Note
Remember to clear the searchfield and set the 4 dropdowns to following posistions to find the datasource:

- "Changed by anyone" (already mentioned above)

- "All"

- "Any time"

- "Any schedule"

After this is done, hit search to "apply" the filters. Now you should be able to see the data sources. Default for dropdown filter #2 is Visualization type, which hides data sources.

Different table prefix

If you changed your table prefix during installation you can replace the existing prefixes using the following script.

    grep -l -r " icinga_" .  | xargs sed -i.BAK -e 's/ icinga_/ /g'
    grep -l -r "icinga_" . | xargs sed -i.BAK -e 's/^icinga_//g'
    find . -iname "*BAK" -exec rm -f {} \;

Known Bugs: If you don't see any graph labels in a pdf export please switch from OpenJDK to SUNJava.

Figure 9.1. Icinga-Reporting in Icinga-Web | Figure 9.2. Icinga-Reporting TOP10 in Icinga-Web

| Note
Integration to Icinga-Web not implemented yet!

Feel free to edit our sample reports with iReport and change these to your needs :)

That's all, you're done!

Prev | Up | Next
MKLiveStatus Integration | Home | Chapter 10. Additional software

© 2009-2011 Icinga Development Team, http://www.icinga.org