Package org.apache.juli
Class OneLineFormatter
- java.lang.Object
-
- java.util.logging.Formatter
-
- org.apache.juli.OneLineFormatter
-
- Direct Known Subclasses:
JsonFormatter
public class OneLineFormatter extends java.util.logging.Formatter
Provides same information as default log format but on a single line to make it easier to grep the logs. The only exception is stacktraces which are always preceded by whitespace to make it simple to skip them.
-
-
Constructor Summary
Constructors Constructor Description OneLineFormatter()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addTimestamp(java.lang.StringBuilder buf, long timestamp)
java.lang.String
format(java.util.logging.LogRecord record)
protected static java.lang.String
getThreadName(int logRecordThreadId)
LogRecord has threadID but no thread name.java.lang.String
getTimeFormat()
Obtain the format currently being used for time stamps in log messages.void
setTimeFormat(java.lang.String timeFormat)
Specify the time format to use for time stamps in log messages.
-
-
-
Method Detail
-
setTimeFormat
public void setTimeFormat(java.lang.String timeFormat)
Specify the time format to use for time stamps in log messages.- Parameters:
timeFormat
- The format to use using theSimpleDateFormat
syntax
-
getTimeFormat
public java.lang.String getTimeFormat()
Obtain the format currently being used for time stamps in log messages.- Returns:
- The current format in
SimpleDateFormat
syntax
-
format
public java.lang.String format(java.util.logging.LogRecord record)
- Specified by:
format
in classjava.util.logging.Formatter
-
addTimestamp
protected void addTimestamp(java.lang.StringBuilder buf, long timestamp)
-
getThreadName
protected static java.lang.String getThreadName(int logRecordThreadId)
LogRecord has threadID but no thread name. LogRecord uses an int for thread ID but thread IDs are longs. If the real thread ID > (Integer.MAXVALUE / 2) LogRecord uses it's own ID in an effort to avoid clashes due to overflow.Words fail me to describe what I think of the design decision to use an int in LogRecord for a long value and the resulting mess that follows.
- Parameters:
logRecordThreadId
- the thread id- Returns:
- the thread name
-
-