Class PatternFormatter
- All Implemented Interfaces:
Formatter
- Direct Known Subclasses:
ExtendedPatternFormatter
The format of each pattern element can be
%[+|-][#[.#]]{field:subformat}.
The
+|-indicates left or right justify.The
#.#indicates the minimum and maximum size of output. You may omit the values and the field will be formatted without size restriction.
You may specify#, or#.to only define the minimum size.
You may specify.#to only define the maximum size.fieldindicates which field is to be output and must be one of properties of LogEvent. The following fields are currently supported:category Category value of the logging event. context Context value of the logging event. message Message value of the logging event. time Time value of the logging event. rtime Relative time value of the logging event. throwable Throwable value of the logging event. priority Priority value of the logging event. thread Name of the thread which logged the event. subformatindicates a particular subformat to use on the specified field, and is currently only supported by:context Specifies the context map parameter name. time Specifies the pattern to be pass to SimpleDateFormatto format the time.
A simple example of a typical PatternFormatter format would be:
%{time} %5.5{priority}[%-10.10{category}]: %{message}
This would produce a line like:
1000928827905 DEBUG [ junit]: Sample message
The format string specifies that the logger should first print the time value of the log event without size restriction, then the priority of the log event with a minimum and maximum size of 5, then the category of the log event right justified with a minimum and maximum size of 10, followed by the message of the log event without any size restriction.
- Version:
- $Id: PatternFormatter.java 30977 2004-07-30 03:57:54 -0500 (Fri, 30 Jul 2004) niclas $
- Author:
- Avalon Development Team, Peter Donald, Sylvain Wallez, Leif Mortenson
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Stringprivate final Dateprivate PatternFormatter.PatternRun[]private SimpleDateFormatprotected static final intThe maximum value used for TYPEs.private static final Stringprivate static final Stringprivate static final Stringprivate static final Stringprivate static final Stringprivate static final intprivate static final Stringprivate static final intprivate static final Stringprivate static final intprivate static final Stringprivate static final intprivate static final Stringprivate static final intprivate static final Stringprivate static final intprivate static final intprivate static final Stringprivate static final intprivate static final Stringprivate static final intprivate static final String -
Constructor Summary
ConstructorsConstructorDescriptionPatternFormatter(String pattern) Creation of a new patter formatter baseed on a supplied pattern. -
Method Summary
Modifier and TypeMethodDescriptionprivate intaddPatternRun(Stack stack, char[] pattern, int index) Extract and build a pattern from input string.private intaddTextRun(Stack stack, char[] pattern, int index) Extract and build a text run from input string.private voidappend(StringBuffer sb, int minSize, int maxSize, boolean rightJustify, String output) Utility to append a string to buffer given certain constraints.private voidappendWhiteSpace(StringBuffer sb, int length) Append a certain number of whitespace characters to a StringBuffer.Format the event according to the pattern.protected StringformatPatternRun(LogEvent event, PatternFormatter.PatternRun run) Formats a single pattern run (can be extended in subclasses).protected StringgetCategory(String category, String format) Utility method to format category.protected StringgetContextMap(ContextMap map, String format) Utility method to format context map.protected StringgetMessage(String message, String format) Utility method to format message.protected StringgetPriority(Priority priority, String format) Get formatted priority string.protected StringUtility method to format relative time.protected StringgetStackTrace(Throwable throwable, String format) Utility method to format stack trace.protected StringGet formatted thread string.protected StringUtility method to format time.protected intgetTypeIdFor(String type) Retrieve the type-id for a particular string.protected final voidParse the input pattern and build internal data structures.
-
Field Details
-
TYPE_TEXT
private static final int TYPE_TEXT- See Also:
-
TYPE_CATEGORY
private static final int TYPE_CATEGORY- See Also:
-
TYPE_CONTEXT
private static final int TYPE_CONTEXT- See Also:
-
TYPE_MESSAGE
private static final int TYPE_MESSAGE- See Also:
-
TYPE_TIME
private static final int TYPE_TIME- See Also:
-
TYPE_RELATIVE_TIME
private static final int TYPE_RELATIVE_TIME- See Also:
-
TYPE_THROWABLE
private static final int TYPE_THROWABLE- See Also:
-
TYPE_PRIORITY
private static final int TYPE_PRIORITY- See Also:
-
TYPE_THREAD
private static final int TYPE_THREAD- See Also:
-
MAX_TYPE
protected static final int MAX_TYPEThe maximum value used for TYPEs. Subclasses can define their own TYPEs starting atMAX_TYPE + 1.- See Also:
-
TYPE_CATEGORY_STR
- See Also:
-
TYPE_CONTEXT_STR
- See Also:
-
TYPE_MESSAGE_STR
- See Also:
-
TYPE_TIME_STR
- See Also:
-
TYPE_RELATIVE_TIME_STR
- See Also:
-
TYPE_THROWABLE_STR
- See Also:
-
TYPE_PRIORITY_STR
- See Also:
-
TYPE_THREAD_STR
- See Also:
-
SPACE_16
- See Also:
-
SPACE_8
- See Also:
-
SPACE_4
- See Also:
-
SPACE_2
- See Also:
-
SPACE_1
- See Also:
-
EOL
-
m_formatSpecification
-
m_simpleDateFormat
-
m_date
-
-
Constructor Details
-
PatternFormatter
Creation of a new patter formatter baseed on a supplied pattern.- Parameters:
pattern- the patter
-
-
Method Details
-
addPatternRun
Extract and build a pattern from input string.- Parameters:
stack- the stack on which to place patternspattern- the input stringindex- the start of pattern run- Returns:
- the number of characters in pattern run
-
addTextRun
Extract and build a text run from input string. It does special handling of '\n' and '\t' replaceing them with newline and tab.- Parameters:
stack- the stack on which to place runspattern- the input stringindex- the start of the text run- Returns:
- the number of characters in run
-
append
Utility to append a string to buffer given certain constraints.- Parameters:
sb- the StringBufferminSize- the minimum size of output (0 to ignore)maxSize- the maximum size of output (0 to ignore)rightJustify- true if the string is to be right justified in it's box.output- the input string
-
appendWhiteSpace
Append a certain number of whitespace characters to a StringBuffer.- Parameters:
sb- the StringBufferlength- the number of spaces to append
-
format
Format the event according to the pattern. -
formatPatternRun
Formats a single pattern run (can be extended in subclasses).- Parameters:
run- the pattern run to format.- Returns:
- the formatted result.
-
getCategory
Utility method to format category.- Parameters:
category- the category stringformat- ancilliary format parameter - allowed to be null- Returns:
- the formatted string
-
getPriority
Get formatted priority string. -
getThread
Get formatted thread string. -
getContextMap
Utility method to format context map.- Parameters:
map- the context mapformat- ancilliary format parameter - allowed to be null- Returns:
- the formatted string
-
getMessage
Utility method to format message.- Parameters:
message- the message stringformat- ancilliary format parameter - allowed to be null- Returns:
- the formatted string
-
getStackTrace
Utility method to format stack trace.- Parameters:
throwable- the throwable instanceformat- ancilliary format parameter - allowed to be null- Returns:
- the formatted string
-
getRTime
Utility method to format relative time.- Parameters:
time- the timeformat- ancilliary format parameter - allowed to be null- Returns:
- the formatted string
-
getTime
Utility method to format time.- Parameters:
time- the timeformat- ancilliary format parameter - allowed to be null- Returns:
- the formatted string
-
getTypeIdFor
Retrieve the type-id for a particular string.- Parameters:
type- the string- Returns:
- the type-id
-
parse
Parse the input pattern and build internal data structures.- Parameters:
patternString- the pattern
-