Reports

Login issues Copied

I cannot access Reporting Module Copied

Check that the user has REPORTUSER access in their role as this determines if they are allowed to use the Reporting Module (Jasperserver).

Invalid ticket Copied

If you see the error Authentication to Opsview succeeds, but the ticket is invalid for jasperserver, restart the reporting module and try again: /opt/opsview/watchdog/bin/opsview-monit restart opsview-reportingmodule.

Alternatively, this could be the result of a forward proxy masking browser IPs. Please refer to this page for more information about this issue.

General usage Copied

Apache restart generates errors Copied

If, when restarting Apache, the following error is generated, then it may be that config files from an earlier version of Jasperserver have not been cleaned up correctly.

$ /etc/init.d/apache2 restart
 * Restarting web server apache2
             [Wed Nov 21 11:46:40 2012] [warn] worker http://127.0.0.1:8080/jasperserver already used by another worker
 ... waiting [Wed Nov 21 11:46:41 2012] [warn] worker http://127.0.0.1:8080/jasperserver already used by another worker                      [ OK ]

Please try this:

$ rm /etc/apache2/conf.d/jasperserver.conf

The requested resource (/jasperserver) is not available Copied

If that is displayed in your web browser, the Jasperserver application did not start up correctly. Check the Tomcat logs, which can be found in /opt/opsview/jasper/apache-tomcat/logs/. One possible solution, noted on recent 64-bit platforms, might be to add org.owasp.csrfguard.PRNG.Provider=IBMJCE to the file, /opt/opsview/jasper/apache-tomcat/webapps/jasperserver/WEB-INF/esapi/Owasp.CsrfGuard.properties.

Check if Jasperserver is running Copied

Check with ps -ef | grep java. You should get output like:

root     11468 25337  0 10:59 pts/0    00:00:00 grep java
opsview  30083     1  0 Oct07 ?        00:03:08 /usr/lib/jvm/java-6-sun-1.6.0.20/jre/bin/java -Xms128m -Xmx512m -XX:PermSize=32m -XX:MaxPermSize=128m -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=/opt/opsview/jasper/apache-tomcat/conf/logging.properties -Djava.endorsed.dirs=/opt/opsview/jasper/apache-tomcat/common/endorsed -classpath :/opt/opsview/jasper/apache-tomcat/bin/bootstrap.jar:/opt/opsview/jasper/apache-tomcat/bin/commons-logging-api.jar -Dcatalina.base=/opt/opsview/jasper/apache-tomcat -Dcatalina.home=/opt/opsview/jasper/apache-tomcat -Djava.io.tmpdir=/opt/opsview/jasper/apache-tomcat/temp org.apache.catalina.startup.Bootstrap start

Stopping Jasperserver gives an error Copied

If you get an error like this:

Jasperserver stop... Apr 27, 2012 3:12:49 PM org.apache.catalina.startup.Catalina stopServer
SEVERE: Catalina.stop:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)

This means that jasperserver is not currently running, so the stop command gives a warning message. This can be ignored.

Jasperserver fails to connect to the database Copied

This can be caused by using TCP wrappers. To resolve, add entries to /etc/hosts.allow such as mysqld: 127.0.0.1 which will allow Jasperserver to talk to the database. The rest of Opsview may be unaffected as it uses a MySQL file socket by default rather than a TCP port.

Unable to receive any reports by email Copied

This may be due to the email configuration of Jasperserver. Check the log file /opt/opsview/jasper/apache-tomcat/webapps/jasperserver/WEB-INF/logs/jasperserver.log for lines such as:

Caused by: javax.mail.MessagingException: Could not connect to SMTP host: mail.localhost.com, port: 25;

Backup and amend the file /opt/opsview/jasper/apache-tomcat/webapps/jasperserver/WEB-INF/js.quartz.properties to change the line:

report.scheduler.mail.sender.host=mail.localhost.com

from mail.localhost.com to either localhost or your SMTP server.

“Out of Memory” (OOM) Error Copied

If you are generating particularly large reports, the Java Virtual Machine (JVM) may hit an imposed memory limit which prevents it from using too much RAM. By default this limit is 512MB which can be increased by editing /opt/opsview/jasper/apache-tomcat/bin/setclasspath.sh and amending the following line:

JAVA_OPTS="$JAVA_OPTS -Xms128m -Xmx512m -XX:PermSize=32m -XX:MaxPermSize=128m "

to read

JAVA_OPTS="$JAVA_OPTS -Xms128m -Xmx768m -XX:PermSize=32m -XX:MaxPermSize=128m "

The limit here was increased from 512MB to 768MB - ensure this limit is still within a reasonable range for your server. Note: This change will be lost on an upgrade.

Reports Copied

Running A Report Returns Database Not Found Copied

This could also be seen as this error:

com.jaspersoft.jasperserver.api.JSException: jsexception.error.creating.connection
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.JdbcDataSourceService.createConnection(JdbcDataSourceService.java:59)

Ensure that the ODW data source is set properly, matching the credentials that were setup within the Reports setup of MySQL.

Also, check the Driver and URL are of the form:

Depending what is set within your /opt/opsview/jasper/etc/jasper.conf:

com.mysql.jdbc.Driver
jdbc:mysql://localhost:13306/odw

or 

com.mysql.jdbc.Driver
jdbc:mysql://127.0.0.1.:13306/odw

The driver can be exactly as shown (since Opsview uses MySQL), but the URL may change depending upon the location of the MySQL server.

The Requested Resource (/jasperserver) returns a 401 response Copied

Relog into your Opsview user via the Opsview UI and retry.

Added Hashtags and Reports are not working Copied

ODW stores configuration over time, so adding a new Hashtag will not be reflected over historically (because it didn’t exist for that service at that time). There is a mechanism by which Hashtags may be ‘backdated’ onto Hosts and Service Checks in ODW.

On the Opsview Orchestrator:

  1. Create your Hashtag, apply this to your Hosts/Service Checks in question and Apply Changes
  2. Await the next hourly import from your Runtime database to your ODW database (the import_runtime) process
  3. Run the /opt/opsview/coreutils/utils/odw_mass_backdate_keyword script, specifying the host and hashtag (keyword) in question. If you run this script without a host and hashtag it will ask you for them and provide a list of hosts, then hashtags to you.

The end syntax would look something like this:

sudo su - opsview
/opt/opsview/coreutils/utils/odw_mass_backdate_keyword opsview-orchestrator newhashtagname

As the hashtag needs to be present in your ODW database in order for a Report to run against it, so you must wait until that next run (at 4 minutes past the hour), so that the previous hours worth of data is available to be queried.

Running an adhoc report does not show anything Copied

This is often caused by the time-out parameter of Apache being set too low for the length of the time the report takes to run. Connect to Jasperserver on port 8080 and try running report http://localhost:8080/jasperserver/.

Updating an existing report with a new resource gives a null pointer error Copied

This has occurred when changing an existing report’s JRXML file and then adding a new resource. The work around is to save the report first, and then edit it again and add the JRXML file again. Error:

java.lang.NullPointerException
    at com.jaspersoft.jasperserver.war.validation.FileResourceValidator.validateNaming(FileResourceValidator.java:119)
    at sun.reflect.GeneratedMethodAccessor589.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

I cannot connect Jaspersoft Studio to the Opsview Reporting Module (401 response) Copied

Ensure that your system is configured with a sufficient max number of sessions. See Session Manager Config for Jaspersoft Studio for mitigation details.

I cannot run reports within the Jaspersoft Studio IDE (401 response) Copied

This is not a supported feature. See Running Reports in Jaspersoft Studio for alternatives.

I cannot see all the expected resources, or publish my changes, using Jaspersoft Studio Copied

Ensure your Opsview User has the required permissions. See Permissions for Jaspersoft Studio for details.

Other common issues Copied

Tomcat Logs Copied

Look in /opt/opsview/jasper/apache-tomcat/logs/catalina.out. This holds the web server’s log output.

Jasperserver logs Copied

If Jasperserver doesn’t seem to have created the reports, check their log file in /opt/opsview/jasper/apache-tomcat/webapps/jasperserver/WEB-INF/logs/jasperserver.log. You can also see messages of failed jobs in View -> Messages.

["Opsview"] ["User Guide", "Troubleshooting"]

Was this topic helpful?