public class Log4JLogger extends Object implements IgniteLogger, LoggerNodeIdAware
Here is a typical example of configuring log4j logger in Ignite configuration file:
<property name="gridLogger">
<bean class="org.apache.ignite.grid.logger.log4j.GridLog4jLogger">
<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-log4j.xml");
IgniteLogger log = new Log4JLogger(xml);
...
cfg.setGridLogger(log);
Please take a look at Apache Log4j 1.2
for additional information.
It's recommended to use Ignite logger injection instead of using/instantiating
logger in your task/job code. See LoggerResource annotation about logger
injection.
| Constructor and Description |
|---|
Log4JLogger()
Creates new logger and automatically detects if root logger already
has appenders configured.
|
Log4JLogger(boolean init)
Creates new logger.
|
Log4JLogger(File cfgFile)
Creates new logger with given configuration
cfgFile. |
Log4JLogger(org.apache.log4j.Logger impl)
Creates new logger with given implementation.
|
Log4JLogger(String path)
Creates new logger with given configuration
path. |
Log4JLogger(URL cfgUrl)
Creates new logger with given configuration
cfgUrl. |
| Modifier and Type | Method and Description |
|---|---|
static void |
addAppender(org.apache.log4j.FileAppender a)
Adds file appender.
|
void |
debug(String msg) |
void |
error(String msg) |
void |
error(String msg,
Throwable e) |
String |
fileName() |
Log4JLogger |
getLogger(Object ctgr)
Gets
IgniteLogger wrapper around log4j logger for the given
category. |
UUID |
getNodeId() |
void |
info(String msg) |
static boolean |
isConfigured()
Checks if Log4j is already configured within this VM or not.
|
boolean |
isDebugEnabled() |
boolean |
isInfoEnabled() |
boolean |
isQuiet() |
boolean |
isTraceEnabled() |
static Collection<String> |
logFiles()
Gets files for all registered file appenders.
|
static void |
removeAppender(org.apache.log4j.FileAppender a)
Removes file appender.
|
void |
setLevel(org.apache.log4j.Level level)
Sets level for internal log4j implementation.
|
void |
setNodeId(UUID nodeId) |
String |
toString() |
void |
trace(String msg) |
void |
updateFilePath(IgniteClosure<String,String> filePathClos)
Sets closure that later evaluate file path.
|
void |
warning(String msg) |
void |
warning(String msg,
Throwable e) |
public Log4JLogger()
Log4JLogger(boolean)
with parameter true, otherwise, existing appenders will be used (analogous
to calling Log4JLogger(boolean)
with parameter false).public Log4JLogger(boolean init)
true the Log4j
logger will be initialized with default console appender and INFO
log level.init - If true, then a default console appender with
following pattern layout will be created: %d{ABSOLUTE} %-5p [%c{1}] %m%n.
If false, then no implicit initialization will take place,
and Log4j should be configured prior to calling this
constructor.public Log4JLogger(org.apache.log4j.Logger impl)
impl - Log4j implementation to use.public Log4JLogger(String path) throws IgniteCheckedException
path.path - Path to log4j configuration XML file.IgniteCheckedException - Thrown in case logger can't be created.public Log4JLogger(File cfgFile) throws IgniteCheckedException
cfgFile.cfgFile - Log4j configuration XML file.IgniteCheckedException - Thrown in case logger can't be created.public Log4JLogger(URL cfgUrl) throws IgniteCheckedException
cfgUrl.cfgUrl - URL for Log4j configuration XML file.IgniteCheckedException - Thrown in case logger can't be created.public static boolean isConfigured()
True if log4j was already configured, false otherwise.public void setLevel(org.apache.log4j.Level level)
level - Log level to set.@Nullable public String fileName()
fileName in interface IgniteLoggerpublic static void addAppender(org.apache.log4j.FileAppender a)
a - Appender.public static void removeAppender(org.apache.log4j.FileAppender a)
a - Appender.public void setNodeId(UUID nodeId)
setNodeId in interface LoggerNodeIdAwarepublic UUID getNodeId()
getNodeId in interface LoggerNodeIdAwarepublic static Collection<String> logFiles()
public Log4JLogger getLogger(Object ctgr)
IgniteLogger wrapper around log4j logger for the given
category. If category is null, then root logger is returned. If
category is an instance of Class then (Class)ctgr).getName()
is used as category name.getLogger in interface IgniteLoggerctgr - IgniteLogger wrapper around log4j logger.public void trace(String msg)
trace in interface IgniteLoggerpublic void debug(String msg)
debug in interface IgniteLoggerpublic void info(String msg)
info in interface IgniteLoggerpublic void warning(String msg)
warning in interface IgniteLoggerpublic void warning(String msg, @Nullable Throwable e)
warning in interface IgniteLoggerpublic void error(String msg)
error in interface IgniteLoggerpublic void error(String msg, @Nullable Throwable e)
error in interface IgniteLoggerpublic boolean isTraceEnabled()
isTraceEnabled in interface IgniteLoggerpublic boolean isDebugEnabled()
isDebugEnabled in interface IgniteLoggerpublic boolean isInfoEnabled()
isInfoEnabled in interface IgniteLoggerpublic boolean isQuiet()
isQuiet in interface IgniteLoggerpublic void updateFilePath(IgniteClosure<String,String> filePathClos)
filePathClos - Closure that generates actual file path.
Follow @ApacheIgnite
Ignite Fabric : ver. 1.1.0-incubating Release Date : May 20 2015