Property Summary
Grace Software
JavaLog

$Revision: 1.6 $
$Date: 2000/02/02 14:34:23 $




Introduction

The Java Log Facility can be configured at the start of the program using command line parameters. When the program is started, the following Java properties may be specified to override the default configuration of the Log Facility. These options are given to the Java virtual machine as in the following example:
    $ java -Dlog.errors=true -Dlog.traces=false MyJavaProgram

Properties

Property
Acceptable Values
Default Value
Description
log true | false true This enables or disables the entire Log Facility.  In other words, if false, no logging will be performed.
log.color true | false true This enables or disables the ANSI color in the logged output. For more control over the colors, use the color options on the specific handler
log.name text virtual-machine-id This allows the user to give a meaningful name to the virtual machine instead of the long, numeric virtual machine id that is used by default. This name is used when registering the Distributer in the rmiregistry
log.rc filename .logrc This specifies the name of a property file containing log properties. This file has lower priority than the command line properties.
log.internal true | false false This enables internal logging. Internal logging is used by the actual log software. It is mostly used for debugging but it may be useful to see how JavaLog is behaving.
log.server true | false false This registers the Log Distributer in the rmiregistry and waits for remote clients to access it. This is useful when you want this virtual machine to act as a central log other remote clients. for This is an option because it has the sometimes annoying side effect of forcing the user to do a CTRL-C or System.exit(0) at the end of the program rather than rely on the main thread quitting.
log.format  %t, %r, %n, %e, %h, %c, %f, %F, %l, %m, %o, \n, \t %t(%r):%n: %e: %h: %c.%f:%l%(: %m)m%(: %j)o\n\n This is the main formatting string that controls the appearance of the each log event. 
log.errors true | false true This enables or disables logging of errors.
log.warnings true | false true This enables or disables logging of warnings
log.notices true | false true This enables or disables logging of notices
log.traces true | false false This enables or disables logging of traces
log.time.format short | medium | long | full | 24 | SimpleDateFormat 24 This specifies the format for the time field of each logged event.
log.time.relative clock | days | hours | minutes | seconds none This controls whether a relative time (relative to start of program) is appended to the event time field in the log.
log.time.zone GMT, etc. GMT This controls the time zone that is used to format the event time.
log.message.format short | long long This controls how much information is logged for each event.  'Short' is a summary of the event that only uses one line in the log file.  'Long' means all available information is placed in the log for the event.
log.thread.format %n, %g, %G, %punc, text %m This controls the format of each event message that is formatted in the log.
log.exception.format %c, %m, %s, text ": %c: %m: %s" This controls that format of an exception that is entered into the log.
log.object.format %l, %L, %j, %J, %o, text %j This controls the format and appearance of user data objects that are written to the log.
log.object.time.format (same as log.time.format) short | medium | long | full | 24 | SimpleDateFormat 24 This controls the format of any java.util.Dates objects or sub-objects that are logged as user data objects.
log.object.time.zone GMT, etc. GMT This controls the time zone that is used to format any java.util.Date objects or sub-objects logged as user data.
log.events.include space separated list of regular expressions ".*" if log=true, else "" Any event whose event type matches one of the space separated expressions is included.
log.events.exclude space separated list of regular expressions /i> Any event whose event type matches one of the space separated expressions is excluded. Note, the exclude list acts on those events that were included by the include list.
log.functions.include space separated list of regular expressions none Any event whose class-name + filename matches one of the expressions is included.
log.functions.exclude space separated list of regular expressions none Any event whose class-name + filename matches one of the expressions is excluded.
log.handler.name.class FileHandler | StandardOutHandler | ... StandardOutHandler This controls which Handlers class is used by the named Handler.  By default all output is sent to the standard output.  Most users should use the log.handler.name.url only.
log.handler.name.filter none none Specifies a filter script to filter events before they are handed to the actual Handler. When specified, a FilterHandler is installed before the actual handler.
log.handler.name.stream out|err out This controls whether the logged output of the StandardOutHandler goes to the standard out or standard error
log.handler.name.events error &| warning &| notice &| trace &| ... all This controls which events the named Handler will handle.  Use an empty string ("") to specify all events.
log.handler.name.url
 file:..., jdbc:..., rmi:...
none This specifies the log facility to be used.  Currently, files, standard output, JDBC, and remote (RMI) facilities are allowed. 
log.handler.name.server true | false false Specifies that remote clients can connect to this handler via rmi and log to this handler.  To do this, the handler binds its name in the local rmi registry.
log.handler.name.maxsize size k | size m 0 (none) This is used by the FileHandler only. It sets the maximum file size of the log entries.
log.handler.name.maxsize.action none | halve | new | sh-command "none" This is used by the FileHandler only. It determines what the FileHandler should do when the maxsize of the file is reached. Nonedoes nothing. Halve ensures that the file size always stays between maxsize and maxsize/2. New closes the current log file and opens a new one. This is useful when using filenames that have SimpleDateFormat format sequences embedded in it. If the action is none of these, a shell command is assumed with the filename passed as the first argument.
log.handler.name.compression none | zip | gzip | zlib "none" This is used by the FileHandler only. It determines if the FileHandler should compress any files that are closed when the the maxsize limit is reached.
log.handler.name.append boolean false This is used by the FileHandler only. It determines if the FileHandler should open the file in append mode. In other words, will it keep the contents of the log file when it starts writing events for the first time.
log.handler.name.username username (none) This is used by the JDBCHandler only and is passed to the jdbc driver will obtaining a connection to a database.
log.handler.name.password password (none) This is used by the JDBCHandler only and is passed to the jdbc driver will obtaining a connection to a database.
log.handler.name.table table-name (Log) This is used by the JDBCHandler only and specifies name of the database table to which the Handler should write logs.
log.handler.name.columns column-1, column-2, ..., column-N (none) This a comma separated list used by the JDBCHandler only. It specifies column name under which each the event attribute will be inserted into the database.
log.handler.name.color true | false false This controls whether the PrintHandler will use ANSI color in its output.
log.handler.name.event.event-type.color ansi-color-list false This controls the color of the event type text produced for each event of the given event-type. Note, that ansi-color-list may be any ansi escape sequence to set the color or may be a space separated list from the color table.
log.handler.name.line.event-type.color ansi-color-list false This controls the color of the entire logged event line of text produced for each event of the given event-type.
log.handler.name.time.color ansi-color-list false This controls the color of the time text for each line logged.
log.handler.name.time.relative.color ansi-color-list false This controls the color of the relative time text for each line logged.
log.handler.name.exception.color ansi-color-list false This controls the color of the formatted exception text for each line logged.
log.handler.name.message.color ansi-color-list false This controls the color of the message text for each line logged.
log.handler.name.object.color ansi-color-list false This controls the color of the formatted object text for each line logged.
log.handler.name.thread.color ansi-color-list false This controls the color of the thread name text for each line logged.
log.handler.name.classname.color ansi-color-list false This controls the color of the class-name text for each line logged.
log.handler.name.function.color ansi-color-list false This controls the color of the function-name text for each line logged.

Note: in most cases where the user can enter text, the special sequence '\n' can be used to insert a newline and the sequence '\t' can be used to insert a tab.

Example Command Line

The following command line does the following:
    $java -Dlog.format="%t %e %m\n" -Dlog.handler.test.file=test.log -Dlog.time.zone=ECT MyLoggingProgram