org.apache.log.format
Class PatternFormatter

java.lang.Object
  extended byorg.apache.log.format.PatternFormatter
All Implemented Interfaces:
Formatter
Direct Known Subclasses:
ExtendedPatternFormatter

public class PatternFormatter
extends java.lang.Object
implements Formatter

This formater formats the LogEvents according to a input pattern string.

The format of each pattern element can be %[+|-][#[.#]]{field:subformat}.

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 08:57:54Z niclas $
Author:
Avalon Development Team, Peter Donald, Sylvain Wallez, Leif Mortenson

Nested Class Summary
protected static class PatternFormatter.PatternRun
           
 
Field Summary
protected static int MAX_TYPE
          The maximum value used for TYPEs.
 
Constructor Summary
PatternFormatter(java.lang.String pattern)
          Creation of a new patter formatter baseed on a supplied pattern.
 
Method Summary
 java.lang.String format(LogEvent event)
          Format the event according to the pattern.
protected  java.lang.String formatPatternRun(LogEvent event, PatternFormatter.PatternRun run)
          Formats a single pattern run (can be extended in subclasses).
protected  java.lang.String getCategory(java.lang.String category, java.lang.String format)
          Utility method to format category.
protected  java.lang.String getContextMap(ContextMap map, java.lang.String format)
          Utility method to format context map.
protected  java.lang.String getMessage(java.lang.String message, java.lang.String format)
          Utility method to format message.
protected  java.lang.String getPriority(Priority priority, java.lang.String format)
          Get formatted priority string.
protected  java.lang.String getRTime(long time, java.lang.String format)
          Utility method to format relative time.
protected  java.lang.String getStackTrace(java.lang.Throwable throwable, java.lang.String format)
          Utility method to format stack trace.
protected  java.lang.String getThread(java.lang.String format)
          Get formatted thread string.
protected  java.lang.String getTime(long time, java.lang.String format)
          Utility method to format time.
protected  int getTypeIdFor(java.lang.String type)
          Retrieve the type-id for a particular string.
protected  void parse(java.lang.String patternString)
          Parse the input pattern and build internal data structures.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_TYPE

protected static final int MAX_TYPE
The maximum value used for TYPEs. Subclasses can define their own TYPEs starting at MAX_TYPE + 1.

See Also:
Constant Field Values
Constructor Detail

PatternFormatter

public PatternFormatter(java.lang.String pattern)
Creation of a new patter formatter baseed on a supplied pattern.

Parameters:
pattern - the patter
Method Detail

format

public java.lang.String format(LogEvent event)
Format the event according to the pattern.

Specified by:
format in interface Formatter
Parameters:
event - the event
Returns:
the formatted output

formatPatternRun

protected java.lang.String formatPatternRun(LogEvent event,
                                            PatternFormatter.PatternRun run)
Formats a single pattern run (can be extended in subclasses).

Parameters:
run - the pattern run to format.
Returns:
the formatted result.

getCategory

protected java.lang.String getCategory(java.lang.String category,
                                       java.lang.String format)
Utility method to format category.

Parameters:
category - the category string
format - ancilliary format parameter - allowed to be null
Returns:
the formatted string

getPriority

protected java.lang.String getPriority(Priority priority,
                                       java.lang.String format)
Get formatted priority string.


getThread

protected java.lang.String getThread(java.lang.String format)
Get formatted thread string.


getContextMap

protected java.lang.String getContextMap(ContextMap map,
                                         java.lang.String format)
Utility method to format context map.

Parameters:
map - the context map
format - ancilliary format parameter - allowed to be null
Returns:
the formatted string

getMessage

protected java.lang.String getMessage(java.lang.String message,
                                      java.lang.String format)
Utility method to format message.

Parameters:
message - the message string
format - ancilliary format parameter - allowed to be null
Returns:
the formatted string

getStackTrace

protected java.lang.String getStackTrace(java.lang.Throwable throwable,
                                         java.lang.String format)
Utility method to format stack trace.

Parameters:
throwable - the throwable instance
format - ancilliary format parameter - allowed to be null
Returns:
the formatted string

getRTime

protected java.lang.String getRTime(long time,
                                    java.lang.String format)
Utility method to format relative time.

Parameters:
time - the time
format - ancilliary format parameter - allowed to be null
Returns:
the formatted string

getTime

protected java.lang.String getTime(long time,
                                   java.lang.String format)
Utility method to format time.

Parameters:
time - the time
format - ancilliary format parameter - allowed to be null
Returns:
the formatted string

getTypeIdFor

protected int getTypeIdFor(java.lang.String type)
Retrieve the type-id for a particular string.

Parameters:
type - the string
Returns:
the type-id

parse

protected final void parse(java.lang.String patternString)
Parse the input pattern and build internal data structures.

Parameters:
patternString - the pattern


Copyright © 1997-2005 The Apache Software Foundation. All Rights Reserved.