- java.lang.Object
-
- org.tentackle.log.slf4j.SLF4JLogger
-
- All Implemented Interfaces:
Logger
@Service(org.tentackle.log.Logger.class) public class SLF4JLogger extends Object implements Logger
Pluggable logger usingorg.slf4j.- Author:
- harald
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.tentackle.log.Logger
Logger.Level
-
-
Constructor Summary
Constructors Constructor Description SLF4JLogger(String name)Creates a logger.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoLog(Logger.Level level, String message, Throwable cause, Object... params)Logging workhorse.protected voiddoLog(Logger.Level level, Throwable cause, String message, Supplier<?>... paramSuppliers)Logging workhorse.protected voiddoLog(Logger.Level level, Throwable cause, String message, Supplier<String> messageSupplier)Logging workhorse.voidfine(String message)voidfine(String message, Object... params)voidfine(String message, Throwable cause)voidfine(String message, Supplier<?>... paramSuppliers)voidfine(Throwable cause, Supplier<String> messageSupplier)voidfine(Supplier<String> messageSupplier)voidfiner(String message)voidfiner(String message, Object... params)voidfiner(String message, Throwable cause)voidfiner(String message, Supplier<?>... paramSuppliers)voidfiner(Throwable cause, Supplier<String> messageSupplier)voidfiner(Supplier<String> messageSupplier)static SLF4JLoggergetLogger(String name)Gets the Log4JLogger for given name.ObjectgetLoggerImpl()MappedDiagnosticContextgetMappedDiagnosticContext()voidinfo(String message)voidinfo(String message, Object... params)voidinfo(String message, Throwable cause)voidinfo(String message, Supplier<?>... paramSuppliers)voidinfo(Throwable cause, Supplier<String> messageSupplier)voidinfo(Supplier<String> messageSupplier)booleanisFineLoggable()booleanisFinerLoggable()booleanisInfoLoggable()protected booleanisLocationAware()Returns whether this is a location aware logger.booleanisLoggable(Logger.Level level)booleanisSevereLoggable()booleanisWarningLoggable()voidlog(Logger.Level level, String message, Throwable cause)voidlog(Logger.Level level, Throwable cause, Supplier<String> messageSupplier)voidlogStacktrace(Throwable cause)Logs the stacktrace of a throwable with a logging level of SEVERE.voidlogStacktrace(Logger.Level level, Throwable cause)Logs the stacktrace of a throwable.voidsevere(String message)voidsevere(String message, Object... params)voidsevere(String message, Throwable cause)voidsevere(String message, Supplier<?>... paramSuppliers)voidsevere(Throwable cause, Supplier<String> messageSupplier)voidsevere(Supplier<String> messageSupplier)protected inttranslateLevel(Logger.Level level)Translate the tentackle logging level to the SLF4J level.voidwarning(String message)voidwarning(String message, Object... params)voidwarning(String message, Throwable cause)voidwarning(String message, Supplier<?>... paramSuppliers)voidwarning(Throwable cause, Supplier<String> messageSupplier)voidwarning(Supplier<String> messageSupplier)
-
-
-
Constructor Detail
-
SLF4JLogger
public SLF4JLogger(String name)
Creates a logger.- Parameters:
name- the name of the logger
-
-
Method Detail
-
getLogger
public static SLF4JLogger getLogger(String name)
Gets the Log4JLogger for given name. If a logger with that name already exists, it will be re-used.- Parameters:
name- the name of the logger- Returns:
- the logger
-
getLoggerImpl
public Object getLoggerImpl()
- Specified by:
getLoggerImplin interfaceLogger
-
isLoggable
public boolean isLoggable(Logger.Level level)
- Specified by:
isLoggablein interfaceLogger
-
log
public void log(Logger.Level level, String message, Throwable cause)
-
log
public void log(Logger.Level level, Throwable cause, Supplier<String> messageSupplier)
-
isFinerLoggable
public boolean isFinerLoggable()
- Specified by:
isFinerLoggablein interfaceLogger
-
isFineLoggable
public boolean isFineLoggable()
- Specified by:
isFineLoggablein interfaceLogger
-
isInfoLoggable
public boolean isInfoLoggable()
- Specified by:
isInfoLoggablein interfaceLogger
-
isWarningLoggable
public boolean isWarningLoggable()
- Specified by:
isWarningLoggablein interfaceLogger
-
isSevereLoggable
public boolean isSevereLoggable()
- Specified by:
isSevereLoggablein interfaceLogger
-
logStacktrace
public void logStacktrace(Logger.Level level, Throwable cause)
Logs the stacktrace of a throwable.- Specified by:
logStacktracein interfaceLogger- Parameters:
level- the logging levelcause- the Throwable to log the stacktrace for
-
logStacktrace
public void logStacktrace(Throwable cause)
Logs the stacktrace of a throwable with a logging level of SEVERE.- Specified by:
logStacktracein interfaceLogger- Parameters:
cause- the Throwable to log the stacktrace for
-
getMappedDiagnosticContext
public MappedDiagnosticContext getMappedDiagnosticContext()
- Specified by:
getMappedDiagnosticContextin interfaceLogger
-
translateLevel
protected int translateLevel(Logger.Level level)
Translate the tentackle logging level to the SLF4J level.- Parameters:
level- the tt level- Returns:
- one of org.slf4j.spi.LocationAwareLogger.XXX_INT
-
isLocationAware
protected boolean isLocationAware()
Returns whether this is a location aware logger.- Returns:
- true if location aware
-
doLog
protected void doLog(Logger.Level level, String message, Throwable cause, Object... params)
Logging workhorse.- Parameters:
level- the log levelmessage- the messagecause- the causeparams- optional parameters
-
doLog
protected void doLog(Logger.Level level, Throwable cause, String message, Supplier<?>... paramSuppliers)
Logging workhorse.- Parameters:
level- the log levelcause- the causemessage- the messageparamSuppliers- parameter suppliers
-
doLog
protected void doLog(Logger.Level level, Throwable cause, String message, Supplier<String> messageSupplier)
Logging workhorse.- Parameters:
level- the log levelcause- the cause, null if nonemessage- the message, null if messageSuppliermessageSupplier- the message supplier, null if message
-
-