Package org.geotools.util.logging
Class MonolineFormatter
-
public class MonolineFormatter extends Formatter
A formatter writting log messages on a single line. Compared toSimpleFormatter, this formatter uses only one line per message instead of two. For example a message formatted byMonolineFormatterlooks like:
By default,FINE core - A log message logged with level FINE from the "org.geotools.core" logger.
MonolineFormatterdisplays only the level and the message. Additional fields can be formatted ifsetTimeFormat(java.lang.String)orsetSourceFormat(java.lang.String)methods are invoked with a non-null argument. The format can also be set from thejre/lib/logging.propertiesfile. For example, user can cut and paste the following properties intologging.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
MonolineFormatterfor 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 Constructor Description MonolineFormatter()Constructs a defaultMonolineFormatter.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MonolineFormatterconfigureConsoleHandler(Logger logger, Level level)Setup aMonolineFormatterfor the specified logger and its children.Stringformat(LogRecord record)Formats the given log record and return the formatted string.StringgetSourceFormat()Returns the format for displaying the source.StringgetTimeFormat()Returns the format for displaying ellapsed time.voidsetSourceFormat(String format)Sets the format for displaying the source.voidsetTimeFormat(String pattern)Sets the format for displaying ellapsed time.-
Methods inherited from class Formatter
formatMessage, getHead, getTail
-
-
-
-
Method Detail
-
setTimeFormat
public void setTimeFormat(String pattern)
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, ornullto disable time formatting.
-
getTimeFormat
public String 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.timeproperty in thejre/lib/logging.propertiesfile.- Returns:
- The time pattern, or
nullif time is not formatted.
-
setSourceFormat
public void setSourceFormat(String format)
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
nulland"none"is thatnullmay 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
public String 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.sourceproperty in thejre/lib/logging.propertiesfile.- Returns:
- The source pattern, or
nullif source is not formatted.
-
format
public String format(LogRecord record)
Formats the given log record and return the formatted string.
-
configureConsoleHandler
public static MonolineFormatter configureConsoleHandler(Logger logger, Level level)
Setup aMonolineFormatterfor the specified logger and its children. This method search for all instances ofConsoleHandlerusing theSimpleFormatter. If such instances are found, they are replaced by a single instance ofMonolineFormatter. If no suchConsoleHandlerare 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
Handlers using the monoline formatter will be set to the specified level. This is provided for convenience, but non-nulllevelargument 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, ornullif 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.
-
-