Class SimpleLog
- java.lang.Object
-
- org.apache.commons.logging.impl.SimpleLog
-
- All Implemented Interfaces:
Serializable,Log
public class SimpleLog extends Object implements Log, Serializable
Simple implementation of Log that sends all enabled log messages, for all defined loggers, to System.err. The following system properties are supported to configure the behavior of this logger:org.apache.commons.logging.simplelog.defaultlog- Default org.apache.commons.logging detail level for all instances of SimpleLog. Must be one of ("trace", "debug", "info", "warn", "error", or "fatal"). If not specified, defaults to "info".org.apache.commons.logging.simplelog.log.xxxxx- Logging detail level for a SimpleLog instance named "xxxxx". Must be one of ("trace", "debug", "info", "warn", "error", or "fatal"). If not specified, the default org.apache.commons.logging detail level is used.org.apache.commons.logging.simplelog.showlogname- Set totrueif you want the Log instance name to be included in output messages. Defaults tofalse.org.apache.commons.logging.simplelog.showShortLogname- Set totrueif you want the last component of the name to be included in output messages. Defaults totrue.org.apache.commons.logging.simplelog.showdatetime- Set totrueif you want the current date and time to be included in output messages. Default isfalse.org.apache.commons.logging.simplelog.dateTimeFormat- The date and time format to be used in the output messages. The pattern describing the date and time format is the same that is used injava.text.SimpleDateFormat. If the format is not specified or is invalid, the default format is used. The default format isyyyy/MM/dd HH:mm:ss:SSS zzz.
In addition to looking for system properties with the names specified above, this implementation also checks for a class loader resource named
"simplelog.properties", and includes any matching definitions from this resource (if it exists).- Version:
- $Id: SimpleLog.java 1435115 2013-01-18 12:40:19Z tn $
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected intcurrentLogLevelThe current log levelprotected static DateFormatdateFormatterUsed to format times.protected static StringdateTimeFormatThe date and time format to use in the log messageprotected static StringDEFAULT_DATE_TIME_FORMATThe default format to use when formating datesstatic intLOG_LEVEL_ALLEnable all org.apache.commons.logging levelsstatic intLOG_LEVEL_DEBUG"Debug" level org.apache.commons.logging.static intLOG_LEVEL_ERROR"Error" level org.apache.commons.logging.static intLOG_LEVEL_FATAL"Fatal" level org.apache.commons.logging.static intLOG_LEVEL_INFO"Info" level org.apache.commons.logging.static intLOG_LEVEL_OFFEnable no org.apache.commons.logging levelsstatic intLOG_LEVEL_TRACE"Trace" level org.apache.commons.logging.static intLOG_LEVEL_WARN"Warn" level org.apache.commons.logging.protected StringlogNameThe name of this simple log instanceprotected static booleanshowDateTimeInclude the current time in the log messageprotected static booleanshowLogNameInclude the instance name in the log message?protected static booleanshowShortNameInclude the short name ( last component ) of the logger in the log message.protected static PropertiessimpleLogPropsProperties loaded from simplelog.propertiesprotected static StringsystemPrefixAll system properties used bySimpleLogstart with this
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddebug(Object message)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_DEBUG.voiddebug(Object message, Throwable t)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_DEBUG.voiderror(Object message)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_ERROR.voiderror(Object message, Throwable t)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_ERROR.voidfatal(Object message)Log a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_FATAL.voidfatal(Object message, Throwable t)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_FATAL.intgetLevel()Get org.apache.commons.logging level.voidinfo(Object message)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_INFO.voidinfo(Object message, Throwable t)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_INFO.booleanisDebugEnabled()Are debug messages currently enabled?booleanisErrorEnabled()Are error messages currently enabled?booleanisFatalEnabled()Are fatal messages currently enabled?booleanisInfoEnabled()Are info messages currently enabled?protected booleanisLevelEnabled(int logLevel)Is the given log level currently enabled?booleanisTraceEnabled()Are trace messages currently enabled?booleanisWarnEnabled()Are warn messages currently enabled?protected voidlog(int type, Object message, Throwable t)Do the actual org.apache.commons.logging.voidsetLevel(int currentLogLevel)Set org.apache.commons.logging level.voidtrace(Object message)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_TRACE.voidtrace(Object message, Throwable t)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_TRACE.voidwarn(Object message)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_WARN.voidwarn(Object message, Throwable t)Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_WARN.protected voidwrite(StringBuffer buffer)Write the content of the message accumulated in the specifiedStringBufferto the appropriate output destination.
-
-
-
Field Detail
-
systemPrefix
protected static final String systemPrefix
All system properties used bySimpleLogstart with this- See Also:
- Constant Field Values
-
simpleLogProps
protected static final Properties simpleLogProps
Properties loaded from simplelog.properties
-
DEFAULT_DATE_TIME_FORMAT
protected static final String DEFAULT_DATE_TIME_FORMAT
The default format to use when formating dates- See Also:
- Constant Field Values
-
showLogName
protected static volatile boolean showLogName
Include the instance name in the log message?
-
showShortName
protected static volatile boolean showShortName
Include the short name ( last component ) of the logger in the log message. Defaults to true - otherwise we'll be lost in a flood of messages without knowing who sends them.
-
showDateTime
protected static volatile boolean showDateTime
Include the current time in the log message
-
dateTimeFormat
protected static volatile String dateTimeFormat
The date and time format to use in the log message
-
dateFormatter
protected static DateFormat dateFormatter
Used to format times.Any code that accesses this object should first obtain a lock on it, ie use synchronized(dateFormatter); this requirement was introduced in 1.1.1 to fix an existing thread safety bug (SimpleDateFormat.format is not thread-safe).
-
LOG_LEVEL_TRACE
public static final int LOG_LEVEL_TRACE
"Trace" level org.apache.commons.logging.- See Also:
- Constant Field Values
-
LOG_LEVEL_DEBUG
public static final int LOG_LEVEL_DEBUG
"Debug" level org.apache.commons.logging.- See Also:
- Constant Field Values
-
LOG_LEVEL_INFO
public static final int LOG_LEVEL_INFO
"Info" level org.apache.commons.logging.- See Also:
- Constant Field Values
-
LOG_LEVEL_WARN
public static final int LOG_LEVEL_WARN
"Warn" level org.apache.commons.logging.- See Also:
- Constant Field Values
-
LOG_LEVEL_ERROR
public static final int LOG_LEVEL_ERROR
"Error" level org.apache.commons.logging.- See Also:
- Constant Field Values
-
LOG_LEVEL_FATAL
public static final int LOG_LEVEL_FATAL
"Fatal" level org.apache.commons.logging.- See Also:
- Constant Field Values
-
LOG_LEVEL_ALL
public static final int LOG_LEVEL_ALL
Enable all org.apache.commons.logging levels- See Also:
- Constant Field Values
-
LOG_LEVEL_OFF
public static final int LOG_LEVEL_OFF
Enable no org.apache.commons.logging levels- See Also:
- Constant Field Values
-
logName
protected volatile String logName
The name of this simple log instance
-
currentLogLevel
protected volatile int currentLogLevel
The current log level
-
-
Constructor Detail
-
SimpleLog
public SimpleLog(String name)
Construct a simple log with given name.- Parameters:
name- log name
-
-
Method Detail
-
setLevel
public void setLevel(int currentLogLevel)
Set org.apache.commons.logging level.- Parameters:
currentLogLevel- new org.apache.commons.logging level
-
getLevel
public int getLevel()
Get org.apache.commons.logging level.
-
log
protected void log(int type, Object message, Throwable t)Do the actual org.apache.commons.logging.This method assembles the message and then calls
write()to cause it to be written.- Parameters:
type- One of the LOG_LEVEL_XXX constants defining the log levelmessage- The message itself (typically a String)t- The exception whose stack trace should be logged
-
write
protected void write(StringBuffer buffer)
Write the content of the message accumulated in the specifiedStringBufferto the appropriate output destination. The default implementation writes toSystem.err.- Parameters:
buffer- AStringBuffercontaining the accumulated text to be logged
-
isLevelEnabled
protected boolean isLevelEnabled(int logLevel)
Is the given log level currently enabled?- Parameters:
logLevel- is this level enabled?
-
debug
public final void debug(Object message)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_DEBUG.- Specified by:
debugin interfaceLog- Parameters:
message- to log- See Also:
Log.debug(Object)
-
debug
public final void debug(Object message, Throwable t)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_DEBUG.- Specified by:
debugin interfaceLog- Parameters:
message- to logt- log this cause- See Also:
Log.debug(Object, Throwable)
-
trace
public final void trace(Object message)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_TRACE.- Specified by:
tracein interfaceLog- Parameters:
message- to log- See Also:
Log.trace(Object)
-
trace
public final void trace(Object message, Throwable t)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_TRACE.- Specified by:
tracein interfaceLog- Parameters:
message- to logt- log this cause- See Also:
Log.trace(Object, Throwable)
-
info
public final void info(Object message)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_INFO.- Specified by:
infoin interfaceLog- Parameters:
message- to log- See Also:
Log.info(Object)
-
info
public final void info(Object message, Throwable t)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_INFO.- Specified by:
infoin interfaceLog- Parameters:
message- to logt- log this cause- See Also:
Log.info(Object, Throwable)
-
warn
public final void warn(Object message)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_WARN.- Specified by:
warnin interfaceLog- Parameters:
message- to log- See Also:
Log.warn(Object)
-
warn
public final void warn(Object message, Throwable t)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_WARN.- Specified by:
warnin interfaceLog- Parameters:
message- to logt- log this cause- See Also:
Log.warn(Object, Throwable)
-
error
public final void error(Object message)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_ERROR.- Specified by:
errorin interfaceLog- Parameters:
message- to log- See Also:
Log.error(Object)
-
error
public final void error(Object message, Throwable t)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_ERROR.- Specified by:
errorin interfaceLog- Parameters:
message- to logt- log this cause- See Also:
Log.error(Object, Throwable)
-
fatal
public final void fatal(Object message)
Log a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_FATAL.- Specified by:
fatalin interfaceLog- Parameters:
message- to log- See Also:
Log.fatal(Object)
-
fatal
public final void fatal(Object message, Throwable t)
Logs a message withorg.apache.commons.logging.impl.SimpleLog.LOG_LEVEL_FATAL.- Specified by:
fatalin interfaceLog- Parameters:
message- to logt- log this cause- See Also:
Log.fatal(Object, Throwable)
-
isDebugEnabled
public final boolean isDebugEnabled()
Are debug messages currently enabled?This allows expensive operations such as
Stringconcatenation to be avoided when the message will be ignored by the logger.- Specified by:
isDebugEnabledin interfaceLog- Returns:
- true if debug is enabled in the underlying logger.
-
isErrorEnabled
public final boolean isErrorEnabled()
Are error messages currently enabled?This allows expensive operations such as
Stringconcatenation to be avoided when the message will be ignored by the logger.- Specified by:
isErrorEnabledin interfaceLog- Returns:
- true if error is enabled in the underlying logger.
-
isFatalEnabled
public final boolean isFatalEnabled()
Are fatal messages currently enabled?This allows expensive operations such as
Stringconcatenation to be avoided when the message will be ignored by the logger.- Specified by:
isFatalEnabledin interfaceLog- Returns:
- true if fatal is enabled in the underlying logger.
-
isInfoEnabled
public final boolean isInfoEnabled()
Are info messages currently enabled?This allows expensive operations such as
Stringconcatenation to be avoided when the message will be ignored by the logger.- Specified by:
isInfoEnabledin interfaceLog- Returns:
- true if info is enabled in the underlying logger.
-
isTraceEnabled
public final boolean isTraceEnabled()
Are trace messages currently enabled?This allows expensive operations such as
Stringconcatenation to be avoided when the message will be ignored by the logger.- Specified by:
isTraceEnabledin interfaceLog- Returns:
- true if trace is enabled in the underlying logger.
-
isWarnEnabled
public final boolean isWarnEnabled()
Are warn messages currently enabled?This allows expensive operations such as
Stringconcatenation to be avoided when the message will be ignored by the logger.- Specified by:
isWarnEnabledin interfaceLog- Returns:
- true if warn is enabled in the underlying logger.
-
-