Package org.geotools.util.logging
Class MonolineFormatter
A formatter writting log messages on a single line. Compared to
SimpleFormatter
, this formatter uses only one
line per message instead of two. For example a message formatted by MonolineFormatter
looks like:
By default,FINE core - A log message logged with level FINE from the "org.geotools.core" logger.
MonolineFormatter
displays only the level and the message. Additional fields can be formatted if
setTimeFormat(java.lang.String)
or setSourceFormat(java.lang.String)
methods are invoked with a non-null argument. The format can also
be set from the jre/lib/logging.properties
file. For example, user can cut and paste the following properties
into logging.properties
:
The example below set the############################################################ # Properties for the Geotools's MonolineFormatter. # By default, the monoline formatter display only the level # and the message. Additional fields can be specified here: # # time: If set, writes the time ellapsed since the initialization. # The argument specifies the output pattern. For example, the # pattern HH:mm:ss.SSSS displays the hours, minutes, seconds # and milliseconds. # # source: If set, writes the source logger or the source class name. # The argument specifies the type of source to display. Valid # values are none, logger:short, logger:long, class:short and # class:long. ############################################################ org.geotools.util.logging.MonolineFormatter.time = HH:mm:ss.SSS org.geotools.util.logging.MonolineFormatter.source = class:short
MonolineFormatter
for the whole system with level FINE and "Cp850" page encoding
(which is appropriate for some DOS command lines on Windows).
java.util.logging.ConsoleHandler.formatter = org.geotools.util.logging.MonolineFormatter java.util.logging.ConsoleHandler.encoding = Cp850 java.util.logging.ConsoleHandler.level = FINE
- Since:
- 2.0
- Author:
- Martin Desruisseaux (IRD)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic MonolineFormatter
configureConsoleHandler
(Logger logger, Level level) Setup aMonolineFormatter
for the specified logger and its children.Formats the given log record and return the formatted string.Returns the format for displaying the source.Returns the format for displaying ellapsed time.void
setSourceFormat
(String format) Sets the format for displaying the source.void
setTimeFormat
(String pattern) Sets the format for displaying ellapsed time.Methods inherited from class Formatter
formatMessage, getHead, getTail
-
Constructor Details
-
MonolineFormatter
public MonolineFormatter()Constructs a defaultMonolineFormatter
.
-
-
Method Details
-
setTimeFormat
Sets the format for displaying ellapsed time. The pattern must matches the format specified inSimpleDateFormat
. For example, the pattern"HH:mm:ss.SSS"
will display the ellapsed time in hours, minutes, seconds and milliseconds.- Parameters:
pattern
- The time patter, ornull
to disable time formatting.
-
getTimeFormat
Returns the format for displaying ellapsed time. This is the pattern specified to the last call tosetTimeFormat(java.lang.String)
, or the patten specified in theorg.geotools.MonolineFormater.time
property in thejre/lib/logging.properties
file.- Returns:
- The time pattern, or
null
if time is not formatted.
-
setSourceFormat
Sets the format for displaying the source. The pattern may be one of the following:"none"
,"logger:short"
,"class:short"
,"logger:long"
or"class:long"
.The difference between a
null
and"none"
is thatnull
may be replaced by a default value, while"none"
means that the user explicitly requested no source.- Parameters:
format
- The format for displaying the source.
-
getSourceFormat
Returns the format for displaying the source. This is the pattern specified to the last call tosetSourceFormat(java.lang.String)
, or the patten specified in theorg.geotools.MonolineFormater.source
property in thejre/lib/logging.properties
file.- Returns:
- The source pattern, or
null
if source is not formatted.
-
format
Formats the given log record and return the formatted string. -
configureConsoleHandler
Setup aMonolineFormatter
for the specified logger and its children. This method search for all instances ofConsoleHandler
using theSimpleFormatter
. If such instances are found, they are replaced by a single instance ofMonolineFormatter
. If no suchConsoleHandler
are found, then a new one is created with thisMonolineFormatter
.In addition, this method can set the handler levels. If the level is non-null, then all
Handler
s using the monoline formatter will be set to the specified level. This is provided for convenience, but non-nulllevel
argument should be avoided as much as possible because it overrides user's level settings. A user trying to configure his logging properties file may find confusing to see his setting ignored.- Parameters:
logger
- The base logger to apply the change on.level
- The desired level, ornull
if no level should be set.- Returns:
- The registered
MonolineFormatter
(nevernull
). The formatter output can be configured using thesetTimeFormat(java.lang.String)
andsetSourceFormat(java.lang.String)
methods.
-