Logging

This document provides information about the xReporter log files.

The logfiles can be found in the directory phoenix/apps/xreporter/logs. The names of the logfiles consist of a basename followed by a date, followed by the extension ".log". In this document we will refer to the filenames only by their basename.

The log options can be configured by editing the file phoenix/apps/xreporter/SAR-INF/environment.xml. Here you can change the file names and locations, the log level (DEBUG, INFO, WARN or ERROR), the rotate-strategy for the log files, and so on.

xreporter

This is the default log file. It contains all logging which is not directed specifically at one of the other logfiles. To this file all errors will be logged that occur during startup, such as errors in report definitions. Also errors that occur in background xReporter threads will be logged here. If you lower the loglevel of the 'reportmanager' category to DEBUG, the SQL generated by xReporter will also be logged here (among other things).

missing-resources

If somewhere a resource bundle key is used for which no translation is found, then this will be logged in this file. The format of each log line is like this:

type|key|locale|bundlename
  • type is "key" if a resource key could not be found, or " bundle" if the resource bundle does not exist at all (in which case the resource key will of course also not be found).
  • key the requested keylocalethe requested locale bundlenamename of the resource bundle

request-errors

If an error occurred during the processing of a HTTP-request (which means all requests since currently HTTP is the only way to communicate with xReporter), then this will be logged in this file. The format of a log line is as follows:

locale|user|path|notes
exception and stack-trace (multiple lines)
  • locale the user's language/country
  • user username if available, otherwise null
  • path the requested HTTP path
  • notes additional information
  • exception and stack-trace detailed error information

httpstack-messages

This log file contains all logging by the Jetty HTTP server (which is used internally by xReporter). This will normally not contain anything interesting (only if xReporter wouldn't catch an error itself).

http-access

For each HTTP request, a line is logged to this file. The format of a log line is as follows:

method|path|querystring|host
  • method HTTP method, e.g. GET or POST
  • path the requested HTTP path
  • querystring the optional query string
  • host IP address of the host from which the request originated

output-generated-event

To this log file a line is logged each time the output of a report instance is requested. The format of a log line is as follows:

type|user|customer|dataSourceId|reportDefinitionId|reportId|startTime|endTime|chunkOffset|chunkRowCount|totalRowCount|error
  • type "db" for database output, "http" for HTTP output
  • chunkOffset, chunkRowCount, totalRowCount these fields have the value "NA" (Not Applicable) when type = http.
  • startTime point in time the output generation started
  • endTime point in time that the output generation stopped. This includes the time needed to send the result back to the xReporter client (e.g. Cocoon).
  • error If an error occurred during the generation of the output, this field will contain the error message.

report-created-event

To this log file a line is logged each time a report instance is created. The format of a log line is as follows:

user|customer|datasource-id|report-definition-id|report-instance-id|timestamp

authorisation

This logfile will usually only contain something if you lower the log level of the "authorisationmanager" category to "DEBUG". When you do that, the following things will be logged:

  • The reason a user was denied access to a data source
  • The reason a user was denied access to a report
  • The list of id's of datasources to which a user has access (each time this list is requested), together with information on how this list got created
  • The list of id's of reports to which a user has access (each time this list if requested), together with information on how this list got created
Comments (0)