public class TestLogger extends Object implements Logger, LoggingEventAware
Logger which stores LoggingEvents in memory and provides
methods to access and remove them in order to facilitate writing tests that assert particular
logging calls were made.
LoggingEvents are stored in both an ThreadLocal and a normal List. The
getLoggingEvents() and clear() methods reference the ThreadLocal
events. The getAllLoggingEvents() and clearAll() methods reference all events
logged on this Logger. This is in order to facilitate parallelising tests - tests that use the
thread local methods can be parallelised.
By default all Levels are enabled. It is important to note that the conventional hierarchical
notion of Levels, where info being enabled implies warn and error being enabled, is not a
requirement of the SLF4J API, so the setEnabledLevels(Collection), setEnabledLevels(Level...), setEnabledLevelsForAllThreads(Collection), setEnabledLevelsForAllThreads(Level...) and the various isXxxxxEnabled() methods make no
assumptions about this hierarchy.
ROOT_LOGGER_NAME| Modifier and Type | Method and Description |
|---|---|
void |
clear()
Removes all
LoggingEvents logged by this thread and resets the enabled levels of the
logger to all levels for this thread. |
void |
clearAll()
Removes ALL
LoggingEvents logged on this logger, regardless of thread, and resets the
enabled levels of the logger to all levels for ALL threads. |
void |
debug(Marker marker,
String msg) |
void |
debug(Marker marker,
String format,
Object... args) |
void |
debug(Marker marker,
String format,
Object arg) |
void |
debug(Marker marker,
String format,
Object arg1,
Object arg2) |
void |
debug(Marker marker,
String msg,
Throwable throwable) |
void |
debug(String message) |
void |
debug(String format,
Object... args) |
void |
debug(String format,
Object arg) |
void |
debug(String format,
Object arg1,
Object arg2) |
void |
debug(String msg,
Throwable throwable) |
void |
error(Marker marker,
String msg) |
void |
error(Marker marker,
String format,
Object... args) |
void |
error(Marker marker,
String format,
Object arg) |
void |
error(Marker marker,
String format,
Object arg1,
Object arg2) |
void |
error(Marker marker,
String msg,
Throwable throwable) |
void |
error(String message) |
void |
error(String format,
Object... args) |
void |
error(String format,
Object arg) |
void |
error(String format,
Object arg1,
Object arg2) |
void |
error(String msg,
Throwable throwable) |
List<LoggingEvent> |
getAllLoggingEvents()
Get all
LoggingEvents logged on this logger by ANY thread. |
Set<Level> |
getEnabledLevels()
Get the levels enabled for this logger on this thread.
|
List<LoggingEvent> |
getLoggingEvents()
Get all
LoggingEvents logged on this logger by this thread. |
String |
getName() |
void |
info(Marker marker,
String msg) |
void |
info(Marker marker,
String format,
Object... args) |
void |
info(Marker marker,
String format,
Object arg) |
void |
info(Marker marker,
String format,
Object arg1,
Object arg2) |
void |
info(Marker marker,
String msg,
Throwable throwable) |
void |
info(String message) |
void |
info(String format,
Object... args) |
void |
info(String format,
Object arg) |
void |
info(String format,
Object arg1,
Object arg2) |
void |
info(String msg,
Throwable throwable) |
boolean |
isDebugEnabled() |
boolean |
isDebugEnabled(Marker marker) |
boolean |
isErrorEnabled() |
boolean |
isErrorEnabled(Marker marker) |
boolean |
isInfoEnabled() |
boolean |
isInfoEnabled(Marker marker) |
boolean |
isTraceEnabled() |
boolean |
isTraceEnabled(Marker marker) |
boolean |
isWarnEnabled() |
boolean |
isWarnEnabled(Marker marker) |
void |
log(LoggingEvent event) |
LoggingEventBuilder |
makeLoggingEventBuilder(Level level)
Make a
TestLoggingEventBuilder. |
void |
setEnabledLevels(Collection<Level> enabledLevels)
The conventional hierarchical notion of Levels, where info being enabled implies warn and error
being enabled, is not a requirement of the SLF4J API, so all levels you wish to enable must be
passed explicitly to this method.
|
void |
setEnabledLevels(Level... enabledLevels)
The conventional hierarchical notion of Levels, where info being enabled implies warn and error
being enabled, is not a requirement of the SLF4J API, so all levels you wish to enable must be
passed explicitly to this method.
|
void |
setEnabledLevelsForAllThreads(Collection<Level> enabledLevelsForAllThreads)
The conventional hierarchical notion of Levels, where info being enabled implies warn and error
being enabled, is not a requirement of the SLF4J API, so all levels you wish to enable must be
passed explicitly to this method.
|
void |
setEnabledLevelsForAllThreads(Level... enabledLevelsForAllThreads)
The conventional hierarchical notion of Levels, where info being enabled implies warn and error
being enabled, is not a requirement of the SLF4J API, so all levels you wish to enable must be
passed explicitly to this method.
|
void |
trace(Marker marker,
String msg) |
void |
trace(Marker marker,
String format,
Object... args) |
void |
trace(Marker marker,
String format,
Object arg) |
void |
trace(Marker marker,
String format,
Object arg1,
Object arg2) |
void |
trace(Marker marker,
String msg,
Throwable throwable) |
void |
trace(String message) |
void |
trace(String format,
Object... args) |
void |
trace(String format,
Object arg) |
void |
trace(String format,
Object arg1,
Object arg2) |
void |
trace(String msg,
Throwable throwable) |
void |
warn(Marker marker,
String msg) |
void |
warn(Marker marker,
String format,
Object... args) |
void |
warn(Marker marker,
String format,
Object arg) |
void |
warn(Marker marker,
String format,
Object arg1,
Object arg2) |
void |
warn(Marker marker,
String msg,
Throwable throwable) |
void |
warn(String message) |
void |
warn(String format,
Object... args) |
void |
warn(String format,
Object arg) |
void |
warn(String format,
Object arg1,
Object arg2) |
void |
warn(String msg,
Throwable throwable) |
public LoggingEventBuilder makeLoggingEventBuilder(Level level)
TestLoggingEventBuilder.makeLoggingEventBuilder in interface Loggerpublic void clear()
LoggingEvents logged by this thread and resets the enabled levels of the
logger to all levels for this thread.public void clearAll()
LoggingEvents logged on this logger, regardless of thread, and resets the
enabled levels of the logger to all levels for ALL threads.public List<LoggingEvent> getLoggingEvents()
LoggingEvents logged on this logger by this thread.LoggingEvents as an unmodifiable List.public List<LoggingEvent> getAllLoggingEvents()
LoggingEvents logged on this logger by ANY thread.LoggingEvents as an unmodifiable List.public boolean isTraceEnabled()
isTraceEnabled in interface Loggerpublic boolean isTraceEnabled(Marker marker)
isTraceEnabled in interface Loggerpublic boolean isDebugEnabled()
isDebugEnabled in interface Loggerpublic boolean isDebugEnabled(Marker marker)
isDebugEnabled in interface Loggerpublic boolean isInfoEnabled()
isInfoEnabled in interface Loggerpublic boolean isInfoEnabled(Marker marker)
isInfoEnabled in interface Loggerpublic boolean isWarnEnabled()
isWarnEnabled in interface Loggerpublic boolean isWarnEnabled(Marker marker)
isWarnEnabled in interface Loggerpublic boolean isErrorEnabled()
isErrorEnabled in interface Loggerpublic boolean isErrorEnabled(Marker marker)
isErrorEnabled in interface Loggerpublic void log(LoggingEvent event)
log in interface LoggingEventAwarepublic Set<Level> getEnabledLevels()
Set.public void setEnabledLevels(Collection<Level> enabledLevels)
enabledLevels - levels which will be considered enabled for this logger IN THIS THREAD;
does not affect enabled levels for this logger in other threadspublic void setEnabledLevels(Level... enabledLevels)
enabledLevels - levels which will be considered enabled for this logger IN THIS THREAD;
does not affect enabled levels for this logger in other threadspublic void setEnabledLevelsForAllThreads(Collection<Level> enabledLevelsForAllThreads)
enabledLevelsForAllThreads - levels which will be considered enabled for this logger IN
ALL THREADSpublic void setEnabledLevelsForAllThreads(Level... enabledLevelsForAllThreads)
enabledLevelsForAllThreads - levels which will be considered enabled for this logger IN
ALL THREADSCopyright © 2023. All rights reserved.