4.6. Report execution error log settings

You may configure the exact detailed information your ReportServer should log in case of report execution failure. This detailed information can be set in the main/error-log.cf configuration file.

The results are printed in a JSON string for easy result analysis. Note that the order of the properties is preserved in the result's JSON string.

Per default, ReportServer logs the following information:

error a description of the root error causing the failure
report_id the ID of the report
report_name the name of the report
base_report_id the ID of the base report (in case of variants)
base_report_name the name of the base report (in case of variants)
executing_user_id the ID of the user trying to execute the report
report_output_format the output format of the report (e.g. HTML, PDF, etc)
report_uuid the UUID (Universally Unique Identifier) of the report

Available are the properties discussed below.

4.6.1. Error properties

The following properties allow you to print information of the root error.

error a description of the root error causing the failure
4.6.2. Report properties

The following properties allow you to print information of the report which is failing.

report_id the ID of the report
report_name the name of the report
report_key the key of the report
report_type the type of the report, e.g. TableReportVariant, JasperReport, etc
base_report_id the ID of the base report (in case of variants)
base_report_name the name of the base report (in case of variants)
base_report_key the key of the base report (in case of variants)
base_report_type the type of the base report (in case of variants), e.g. TableReportVariant, JasperReport, etc
report_output_format the output format of the report (e.g. HTML, PDF, etc)
report_uuid the UUID (Universally Unique Identifier) of the report
4.6.3. User properties

The following properties allow you to print information of the user trying to execute the report which is failing.

executing_user_id the ID of the user trying to execute the report
executing_user_username the username of the user trying to execute the report
executing_user_firstname the first name of the user trying to execute the report
executing_user_lastname the last name of the user trying to execute the report
4.6.4. Datasource properties

The following properties allow you to print information of the failing report's datasource.

datasource_id the ID of the report's datasource
datasource_name the name of the report's datasource
datasource_path the path of the report's datasource in the fileserver file system
datasource_type the type of the report's datasource, e.g. DatabaseDatasource, ScriptDatasource, etc

In addition to the properties above, you can use the following for DatabaseDatasources (i.e. for relational databases).

datasource_database_query the report's datasource query. Note that the query is printed exactly as entered into the datasource's ''query'' field, i.e. no parameter replacement is shown in the output.
datasource_database_information general information of the report's datasource. This information includes the following:
  • databaseProductName: the database product, e.g. ''MySQL'', ''H2'', etc.
  • databaseProductVersion: the version of the database, e.g. ''8.0.31''
  • driverName: the JDBC driver, e.g. ''MySQL Connector/J''
  • driverVersion: the JDBC driver's version: ''mysql-connector-j-8.0.31''
  • JDBCMajorVersion: the JDBC major version of the driver
  • JDBCMinorVersion: the JDBC minor version of the driver
  • URL: the datasource's complete JDBC URL
  • userName: the datasource's JDBC username
datasource_database_jdbc_properties the JDBC properties of the report's datasource.
4.6.5. General properties

The following properties allow you to print general information of your ReportServer's installation. Basically, this is the same information you may find in your ''General Info'' system console.

java_version your exact Java version
java_home environment variable pointing to the your Java installation directory
java_vm_arguments the Java Virtual Machine arguments
application_server your application server, e.g. ''Apache Tomcat/9.0.68''
catalina_home the root of your application server installation, for example ''/home/tomcat/apache-tomcat-9.0.10'' or ''C:/Program Files/apache-tomcat-9.0.10''
catalina_home the root of a runtime configuration of a specific application server instance
log_files_directory path to the directory where the log files are located
rest_url the REST access point
request_url the complete request URL
request_scheme the name of the scheme used to make the request, for example, ''http'', ''https''
request_server_name the host name of the server to which the request was sent
request_server_port the port number to which the request was sent
request_context_path the portion of the request URI that indicates the context of the request. The context path always comes first in a request URI. The path starts with a ''/'' character but does not end with a ''/'' character. For servlets in the default (root) context, this method returns ''''.
request_protocol the name and version of the protocol the request uses in the form protocol/majorVersion.minorVersion, for example, ''HTTP/1.1''
config_directory path to your configured external configuration directory
os_version your operation system, e.g. ''Windows Server 2022''
reportserver_version your ReportServer's complete version
locale your current ReportServer's locale
jvm_locale the locale of your Java Virtual Machine
jvm_user_language the language of your Java Virtual Machine user, e.g. ''de''
jvm_user_country the country of your Java Virtual Machine user, e.g. ''DE''
jvm_user_timezone the timezone of your Java Virtual Machine user, e.g. ''Europe/Berlin''
jvm_file_encoding the file encoding of your Java Virtual Machine user, e.g. ''UTF-8''
known_hosts_file path to your configured known_hosts file
supported_ssl_protocols the supported SSL protocols for the current SSL context
default_ssl_protocols the default SSL protocols for the current SSL context
enabled_ssl_protocols the enabled SSL protocols for the current SSL context
groovy_version your exact Groovy version
active_pams a list of your installed active PAMs (Pluggable Authentication Modules)
4.6.6. Memory properties

The following properties allow you to print information of the current memory settings during the report's execution failure. This is basically the same information your meminfo terminal command prints.

memory_used your current memory usage
memory_free the amount of free memory in the Java Virtual Machine
memory_total the total amount of memory in the Java Virtual Machine. The value returned by this method may vary over time, depending on the host environment.
memory_max the maximum amount of memory that the Java virtual machine will attempt to use.