Package nl.vpro.logging.simple
Interface SimpleLogger
-
- All Superinterfaces:
BiConsumer<Level,CharSequence>
- All Known Subinterfaces:
StringSupplierSimpleLogger
- All Known Implementing Classes:
AbstractStringBuilderSimpleLogger
,ChainedSimpleLogger
,ConsoleLogger
,EventSimpleLogger
,FileSimpleLogger
,FloggerSimpleLogger
,JULSimpleLogger
,Log4j2SimpleLogger
,NOPLogger
,OutputStreamSimpleLogger
,QueueSimpleLogger
,SimpleLoggerWrapper
,Slf4jSimpleLogger
,StringBuilderSimpleLogger
,StringSupplierChainedSimpleLogger
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface SimpleLogger extends BiConsumer<Level,CharSequence>
A very simplified Logger. This can e.g. be used as messaging system. It was made to use in conjuction with
ChainedSimpleLogger
to be able to programmaticly 'tee' logging.The goal was to log to slf4j but also send corresponding messages to users via websockets.
Generally this can be used when a Logger instance wants to be an argument, because simple loggers can be implemented easily, normally with a just a few lines, and actual loggers can be wrapped easily too.
- Since:
- 1.76
- Author:
- Michiel Meeuwissen
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
SimpleLogger.RemoveFromThreadLocal
-
Field Summary
Fields Modifier and Type Field Description static ThreadLocal<SimpleLogger>
THREAD_LOCAL
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default void
accept(Level level, CharSequence message)
void
accept(Level level, CharSequence message, @Nullable Throwable t)
default SimpleLogger
chain(SimpleLogger... logger)
Returns a newSimpleLogger
that logs to both the current logger and the loggers given as argument.default SimpleLogger
chain(org.slf4j.Logger... logger)
Deprecated.default void
debug(CharSequence message)
default void
debug(String format, Object... arg)
default void
debug(Supplier<CharSequence> message)
default void
debugOrInfo(boolean info, String format, Object... arg)
default void
error(CharSequence message)
default void
error(String format, Object... arg)
default void
error(Supplier<CharSequence> message)
default String
getName()
default void
info(CharSequence message)
default void
info(String format, Object... arg)
default void
info(Supplier<CharSequence> message)
default boolean
isDebugEnabled()
default boolean
isEnabled(Level level)
default boolean
isInfoEnabled()
static JULSimpleLogger
jul(Logger log)
default void
log(Level level, @Nullable CharSequence format, Object... arg)
default void
log(Level level, CharSequence message)
static NOPLogger
nop()
default SimpleLogger
shift(int shift)
Returns a newSimpleLogger
with shifted levels.static Slf4jSimpleLogger
slfj4(org.slf4j.Logger log)
Deprecated.static SimpleLogger
threadLocalOr(SimpleLogger logger)
static SimpleLogger
threadLocalOr(org.slf4j.Logger logger)
default void
trace(CharSequence message)
default void
trace(String format, Object... arg)
default void
trace(Supplier<CharSequence> message)
default SimpleLogger
truncated(Level maxLevel)
Returns a newSimpleLogger
which will never log higher thenmaxLevel
.default void
warn(CharSequence message)
default void
warn(String format, Object... arg)
default void
warn(Supplier<CharSequence> message)
static SimpleLogger.RemoveFromThreadLocal
withLogger(SimpleLogger logger)
-
Methods inherited from interface java.util.function.BiConsumer
andThen
-
-
-
-
Field Detail
-
THREAD_LOCAL
static final ThreadLocal<SimpleLogger> THREAD_LOCAL
-
-
Method Detail
-
withLogger
static SimpleLogger.RemoveFromThreadLocal withLogger(SimpleLogger logger)
-
threadLocalOr
static SimpleLogger threadLocalOr(SimpleLogger logger)
-
threadLocalOr
static SimpleLogger threadLocalOr(org.slf4j.Logger logger)
-
slfj4
@Deprecated static Slf4jSimpleLogger slfj4(org.slf4j.Logger log)
Deprecated.
-
nop
static NOPLogger nop()
-
jul
static JULSimpleLogger jul(Logger log)
-
getName
default String getName()
-
trace
default void trace(CharSequence message)
-
trace
default void trace(Supplier<CharSequence> message)
-
debug
default void debug(CharSequence message)
-
debug
default void debug(Supplier<CharSequence> message)
-
info
default void info(CharSequence message)
-
info
default void info(Supplier<CharSequence> message)
-
warn
default void warn(CharSequence message)
-
warn
default void warn(Supplier<CharSequence> message)
-
error
default void error(CharSequence message)
-
error
default void error(Supplier<CharSequence> message)
-
log
default void log(Level level, CharSequence message)
-
log
default void log(Level level, @Nullable CharSequence format, Object... arg)
-
isEnabled
default boolean isEnabled(Level level)
-
isInfoEnabled
default boolean isInfoEnabled()
-
isDebugEnabled
default boolean isDebugEnabled()
-
accept
default void accept(Level level, CharSequence message)
- Specified by:
accept
in interfaceBiConsumer<Level,CharSequence>
-
accept
void accept(Level level, CharSequence message, @Nullable Throwable t)
-
chain
default SimpleLogger chain(SimpleLogger... logger)
Returns a newSimpleLogger
that logs to both the current logger and the loggers given as argument.- Parameters:
logger
- The loggers to chain
-
chain
@Deprecated default SimpleLogger chain(org.slf4j.Logger... logger)
Deprecated.
-
truncated
default SimpleLogger truncated(Level maxLevel)
Returns a newSimpleLogger
which will never log higher thenmaxLevel
.- Since:
- 3.1
-
shift
default SimpleLogger shift(int shift)
Returns a newSimpleLogger
with shifted levels.- Parameters:
shift
- The amount to shift. Positive values will shift toLevel.TRACE
, negative values toLevel.ERROR
- Since:
- 3.1
-
-