previous next trail start tutorial home feedback openwings.org

Log File Control

The Openwings Reference Implementation creates log files in your platform's temporary directory (defined by the property "java.io.tmpdir") for every process started by Container Services. The purpose of this page is to inform you how you can disable or suppress this logging so that your platform's temporary doesn't get filled up. All of the properties mentioned in this file are contained in the file $OW_HOME/openwings-${VERSION}/policies/properties.txt.

Disable log file generation

To disable logging entirely, set the property "com.gd.openwings.container.loggingOff" to "true". The Container and Container Manager implementations will not create output files for processes if this property is set.

Set a maximum size for individual log files

Imagine the situation where a single component is generating a large amount of output. You may not want to disable logging entirely, especially if you're debugging another component. To set a maximum log file size for a given process (or container), users can set the property "com.gd.openwings.container.logMaxSize". This is an approximate limit on the number of bytes that will be written to a log file for a single process (including restarts).  When the limit is reached, the text "(truncated)" will be written to the end of the file. Note that this property applies to both standalone and container processes.

Automatic log file deletion

This is probably the most useful of the log control features. Usually log files are only of interest for a limited amount of time, such as a couple of days. Therefore we've added a feature that allows log files to be deleted after they are not modified for a period of time. There are two properties that control automated log file deletion.

The property "com.gd.openwings.container.logDeleteAge" indicates the age in minutes since a file was last modified before it is eligible to be deleted. (files corresponding to active processes that haven't generated log output in a while will not be deleted, since they are locked.).

The property "com.gd.openwings.container.logDeleteInterval" indicates how often the task runs to delete old log files. Note: if this property is not set, no automatic deletion will occur.

The "LogAccess" component (part of the Openwings core) is the component that performs log file deletion. This process is configured to run whenever the Openwings core is started. It runs a task at the specified interval to delete Openwings log files older than the specified age.

Viewing Log files remotely using the LogAccess service

The "LogAccess" component provides a service that implements the interface "net.openwings.container.utilities.LogAccess". This service allows the contents of a process log file to be viewed programmatically.

The "LogAccess" service may be used in a couple of different ways:

Method 1: In the Openwings explorer, right-click on a process item and select the "View Log" option. A log window will appear. This log window allows you to search for keywords and is continually updated as the process produces output (similar to the unix "tail" command).

Method 2: In the Openwings explorer or Openwings shell, drill down to the "LogAccess" process for the platform on which you want to view log files. Underneath this process you will find a user interface that can be attached to the "LogAccess" service. Execute the UI and a window will appear containing a list of Openwings log files on the platform. The list may be sorted to find files by component name or time. Select one or more log files and view them by pressing "View Log Files" button. Note that this second method is the only way to remotely view the log file for a stopped process.

 

Back to Tutorial Trails

© Copyright 2002, General Dynamics Decision Systems. All rights reserved.

previous next trail start tutorial home feedback openwings.org