Tracing and Debugging Redwood Server

on-site-related topic

You are encountering issues with Redwood Server and need more information on the causes of the issues. Redwood Server ship with extensive logging built-in that can be enabled by category. The list of frequently used categories is available in the reference section of the current guide.

Server-Side Logging

The server-side log will contain information on the requests processed by the server. Such as Process Servers connecting to remote systems, or processes reaching status error, or the user interface backend.

The System_DynamicTrace is used to trace server-side threads that run the specified classes. Depending on the failing component, you will need to identify the appropriate class; the category to trace will be the class name without com.redwood.scheduler. You can usually see which class is failing in exception stacks that are produced by the failing component and logged to stderr.log files for processes or the central log of your application server.

Client-Side Logging

The client-side log will contain information related to the execution of JavaScript code. You issue Ctrl+Shift+Alt+D in your browser to enable to log console for the Redwood Server JavaScript logger. Note that this information is not logged to the built-in JavaScript console of your browser.

Remote System logging

On remote systems, you usually enable logging in the platform itself following the documentation that was provided with the system or application. Redwood Server Platform Agents and AS/400 servers are exceptions to this rule.

Platform Agents

Redwood Server Platform Agents and the tools that ship with them have their own logging facility. Platform Agents log locally until a connection has been established with the central Redwood Server after which the logs are sent to the central Redwood Server. The system tools that ship with Platform Agents log locally, only. You use the JCS_LOGLEVEL and JCS_LOGFILE environment variables to set logging criteria. See Tracing and Debugging System Tools and Platform Agents for more information.

AS/400 Servers

The AS/400 platform ships with extensive native logging mechanisms which can be retrieved from the system by Redwood Server using a specially crafted AS/400 Process Definition. See Tracing and Debugging AS/400 Connections for more information.

File Publishing Logging

You enable logging for file publishing by specifying the following category:

Copy
com.redwood.scheduler.publish.*

Retaining Publishing Information

When Redwood Server publishes a file to a Report2Web catalog, a zip file containing the actual file and metadata is sent to the Report2Web server, this file is deleted. You specify the following logging category to retain the zip file:

Copy
com.redwood.scheduler.publish.bydestination.<partition>.<name>.<folder[0]>[.<folder[1]>][.<folder[n]>]=<loglevel>

Where

  • <partition> - partition of the R2WCatalog
  • <name> - name of the R2WCatalog
  • <folder[n]> - path of Report2Web the folder where the files are to be published (as passed in via the R2WCatalog.createR2WPublisher(<reportname>) method) with any slashes replaced with a dot (.)

Example

Enable logging for the server-side Platform Agent file component

You want to retrieve an output file and receive a JCS-108003 error instead; in fact for this example, the Platform Agent is not running.

  1. Navigate to Definitions > Processes.
  2. Choose Submit from the context menu of the System_DynamicTrace Process Definition.
  3. Fill jobfile=debug into the Trace String field and 5 into the Minutes to Run.
  4. Submit the Process Definition and attempt to retrieve the file once more.
  5. Once you have received the error again attempting to access the file, you can kill the System_DynamicTrace process or wait for the 5 minutes.
  6. Open the log file and search for the file ID printed in the JCS-108003 error, you might have to remove Thousand separators depending on your locale as the number will be logged as 123456789 not 123,456,789.
  7. Notice the Caused by: JCS-116012: Warning: Transient communication failure: Connection refused in the log; this means that the remote server, where the Platform Agent runs, is not accepting connections on the configured Platform Agent's port - in other words, the network-processor is not running or listening on an incorrect port.

Enabling the Client-Side Logger JavaScript

You experienced JavaScript Errors in the User Interface and upon contacting Redwood Server Support, have been requested to enable client-side logging.

  1. Issue Ctrl+Shift+Alt+D in your browser logged in the desired Redwood Server instance.
  2. Fill javascript=trace into the Tracestring field and choose Apply.
  3. Reproduce the steps you used to cause the JavaScript errors.
  4. Provide Redwood Support with the output of the logger console.

Retain the ZIP File for Report2Web a Folder

You publish a file to the Demo/test folder of the Report2Web system named R2WExample in the TEST partition, you specify the following trace string to retain the zip file:

Copy
publish.bydestination.TEST.R2WExample.Demo.test=debug

See Also

Troubleshooting Credential Lookups