Package org.apache.ignite.logger.log4j2
Class Log4J2Logger
- java.lang.Object
-
- org.apache.ignite.logger.log4j2.Log4J2Logger
-
- All Implemented Interfaces:
IgniteLogger,org.apache.ignite.internal.logger.IgniteLoggerEx
public class Log4J2Logger extends Object implements org.apache.ignite.internal.logger.IgniteLoggerEx
Log4j2-based implementation for logging. This logger should be used by loaders that have prefer log4j2-based logging.Here is a typical example of configuring log4j2 logger in Ignite configuration file:
<property name="gridLogger"> <bean class="org.apache.ignite.logger.log4j2.Log4J2Logger"> <constructor-arg type="java.lang.String" value="config/ignite-log4j.xml"/> </bean> </property>and from your code:IgniteConfiguration cfg = new IgniteConfiguration(); ... URL xml = U.resolveIgniteUrl("config/custom-log4j2.xml"); IgniteLogger log = new Log4J2Logger(xml); ... cfg.setGridLogger(log);Please take a look at Apache Log4j 2 for additional information.It's recommended to use Ignite logger injection instead of using/instantiating logger in your task/job code. See
LoggerResourceannotation about logger injection.
-
-
Field Summary
-
Fields inherited from interface org.apache.ignite.IgniteLogger
DEV_ONLY
-
-
Constructor Summary
Constructors Constructor Description Log4J2Logger()Creates new logger and automatically detects if root logger already has appenders configured.Log4J2Logger(File cfgFile)Creates new logger with given configurationcfgFile.Log4J2Logger(String path)Creates new logger with given configurationpath.Log4J2Logger(URL cfgUrl)Creates new logger with given configurationcfgUrl.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddConsoleAppender(boolean clearOutput)Adds console appender to the logger.org.apache.logging.log4j.LoggerconfigureConsoleAppender(boolean clearOutput)Creates console appender with some reasonable default logging settings.voiddebug(@Nullable String marker, String msg)Logs out debug message.voiddebug(String msg)Logs out debug message.voiderror(@Nullable String marker, String msg, @Nullable Throwable e)Logs error message with optional exception.voiderror(String msg, @Nullable Throwable e)Logs error message with optional exception.@Nullable StringfileName()Gets name of the file being logged to if one is configured ornullotherwise.voidflush()Flush any buffered output.Log4J2LoggergetLogger(Object ctgr)GetsIgniteLoggerwrapper around log4j logger for the given category.voidinfo(@Nullable String marker, String msg)Logs out information message.voidinfo(String msg)Logs out information message.static booleanisConfigured()Checks if Log4j is already configured within this VM or not.booleanisDebugEnabled()Tests whetherdebuglevel is enabled.booleanisInfoEnabled()Tests whetherinfolevel is enabled.booleanisQuiet()Tests whether Logger is in "Quiet mode".booleanisTraceEnabled()Tests whethertracelevel is enabled.voidsetApplicationAndNode(@Nullable String application, @Nullable UUID nodeId)Sets application name and node ID.StringtoString()voidtrace(@Nullable String marker, String msg)Logs out trace message.voidtrace(String msg)Logs out trace message.voidwarning(@Nullable String marker, String msg, @Nullable Throwable e)Logs out warning message with optional exception.voidwarning(String msg, @Nullable Throwable e)Logs out warning message with optional exception.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.ignite.IgniteLogger
error, warning
-
-
-
-
Constructor Detail
-
Log4J2Logger
public Log4J2Logger()
Creates new logger and automatically detects if root logger already has appenders configured. If it does not, the root logger will be configured with default appender, otherwise, existing appenders will be used.
-
Log4J2Logger
public Log4J2Logger(String path) throws IgniteCheckedException
Creates new logger with given configurationpath.- Parameters:
path- Path to log4j2 configuration XML file.- Throws:
IgniteCheckedException- Thrown in case logger can't be created.
-
Log4J2Logger
public Log4J2Logger(File cfgFile) throws IgniteCheckedException
Creates new logger with given configurationcfgFile.- Parameters:
cfgFile- Log4j configuration XML file.- Throws:
IgniteCheckedException- Thrown in case logger can't be created.
-
Log4J2Logger
public Log4J2Logger(URL cfgUrl) throws IgniteCheckedException
Creates new logger with given configurationcfgUrl.- Parameters:
cfgUrl- URL for Log4j configuration XML file.- Throws:
IgniteCheckedException- Thrown in case logger can't be created.
-
-
Method Detail
-
fileName
@Nullable public @Nullable String fileName()
Gets name of the file being logged to if one is configured ornullotherwise.- Specified by:
fileNamein interfaceIgniteLogger- Returns:
- Name of the file being logged to if one is configured or
nullotherwise.
-
addConsoleAppender
public void addConsoleAppender(boolean clearOutput)
Adds console appender to the logger.- Specified by:
addConsoleAppenderin interfaceorg.apache.ignite.internal.logger.IgniteLoggerEx- Parameters:
clearOutput- Iftruethen console output must be configured without any additional info like time, message level, thread info, etc.
-
flush
public void flush()
Flush any buffered output.- Specified by:
flushin interfaceorg.apache.ignite.internal.logger.IgniteLoggerEx
-
configureConsoleAppender
public org.apache.logging.log4j.Logger configureConsoleAppender(boolean clearOutput)
Creates console appender with some reasonable default logging settings.- Parameters:
clearOutput- Iftruethen console output must be configured without any additional info like time, message level, thread info, etc.- Returns:
- Logger with auto configured console appender.
-
isConfigured
public static boolean isConfigured()
Checks if Log4j is already configured within this VM or not.- Returns:
Trueif log4j was already configured,falseotherwise.
-
setApplicationAndNode
public void setApplicationAndNode(@Nullable @Nullable String application, @Nullable @Nullable UUID nodeId)Sets application name and node ID.- Specified by:
setApplicationAndNodein interfaceorg.apache.ignite.internal.logger.IgniteLoggerEx- Parameters:
application- Application.nodeId- Node ID.
-
getLogger
public Log4J2Logger getLogger(Object ctgr)
GetsIgniteLoggerwrapper around log4j logger for the given category. If category isnull, then root logger is returned. If category is an instance ofClassthen(Class)ctgr).getName()is used as category name.- Specified by:
getLoggerin interfaceIgniteLogger- Parameters:
ctgr- Category for new logger.- Returns:
IgniteLoggerwrapper around log4j logger.
-
trace
public void trace(String msg)
Logs out trace message.- Specified by:
tracein interfaceIgniteLogger- Parameters:
msg- Trace message.
-
trace
public void trace(@Nullable @Nullable String marker, String msg)Logs out trace message. The default implementation callsthis.trace(msg).- Specified by:
tracein interfaceIgniteLogger- Parameters:
marker- Name of the marker to be associated with the message.msg- Trace message.
-
debug
public void debug(String msg)
Logs out debug message.- Specified by:
debugin interfaceIgniteLogger- Parameters:
msg- Debug message.
-
debug
public void debug(@Nullable @Nullable String marker, String msg)Logs out debug message. The default implementation callsthis.debug(msg).- Specified by:
debugin interfaceIgniteLogger- Parameters:
marker- Name of the marker to be associated with the message.msg- Debug message.
-
info
public void info(String msg)
Logs out information message.- Specified by:
infoin interfaceIgniteLogger- Parameters:
msg- Information message.
-
info
public void info(@Nullable @Nullable String marker, String msg)Logs out information message. The default implementation callsthis.info(msg).- Specified by:
infoin interfaceIgniteLogger- Parameters:
marker- Name of the marker to be associated with the message.msg- Information message.
-
warning
public void warning(String msg, @Nullable @Nullable Throwable e)
Logs out warning message with optional exception.- Specified by:
warningin interfaceIgniteLogger- Parameters:
msg- Warning message.e- Optional exception (can benull).
-
warning
public void warning(@Nullable @Nullable String marker, String msg, @Nullable @Nullable Throwable e)Logs out warning message with optional exception. The default implementation callsthis.warning(msg).- Specified by:
warningin interfaceIgniteLogger- Parameters:
marker- Name of the marker to be associated with the message.msg- Warning message.e- Optional exception (can benull).
-
error
public void error(String msg, @Nullable @Nullable Throwable e)
Logs error message with optional exception.- Specified by:
errorin interfaceIgniteLogger- Parameters:
msg- Error message.e- Optional exception (can benull).
-
error
public void error(@Nullable @Nullable String marker, String msg, @Nullable @Nullable Throwable e)Logs error message with optional exception. The default implementation callsthis.error(msg).- Specified by:
errorin interfaceIgniteLogger- Parameters:
marker- Name of the marker to be associated with the message.msg- Error message.e- Optional exception (can benull).
-
isTraceEnabled
public boolean isTraceEnabled()
Tests whethertracelevel is enabled.- Specified by:
isTraceEnabledin interfaceIgniteLogger- Returns:
truein case whentracelevel is enabled,falseotherwise.
-
isDebugEnabled
public boolean isDebugEnabled()
Tests whetherdebuglevel is enabled.- Specified by:
isDebugEnabledin interfaceIgniteLogger- Returns:
truein case whendebuglevel is enabled,falseotherwise.
-
isInfoEnabled
public boolean isInfoEnabled()
Tests whetherinfolevel is enabled.- Specified by:
isInfoEnabledin interfaceIgniteLogger- Returns:
truein case wheninfolevel is enabled,falseotherwise.
-
isQuiet
public boolean isQuiet()
Tests whether Logger is in "Quiet mode".- Specified by:
isQuietin interfaceIgniteLogger- Returns:
true"Quiet mode" is enabled,falseotherwise
-
-