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.
![]() |
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!
© 2009-2011 Icinga Development Team, http://www.icinga.org