Log4JLogger Class — netty Architecture
Architecture documentation for the Log4JLogger class in Log4JLogger.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD ea21873f_9411_9a50_115f_4afde36f3d05["Log4JLogger"] b6c39fea_36ae_7b7b_e493_8c07ea0d8a1c["Log4JLogger.java"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|defined in| b6c39fea_36ae_7b7b_e493_8c07ea0d8a1c 3b79b38c_85ea_0ae1_4ae5_a3b77c7aac07["Log4JLogger()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 3b79b38c_85ea_0ae1_4ae5_a3b77c7aac07 be209e3f_b671_9526_3bd3_8b00cf5e95e7["isTraceCapable()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| be209e3f_b671_9526_3bd3_8b00cf5e95e7 381c5115_d56b_f5df_1f82_4c9cb088baa4["isTraceEnabled()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 381c5115_d56b_f5df_1f82_4c9cb088baa4 54d6b5d3_808e_7a6f_83a1_f4995dffb4d8["trace()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 54d6b5d3_808e_7a6f_83a1_f4995dffb4d8 fca4c536_bf52_8adb_fd06_0139f5783bc4["isDebugEnabled()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| fca4c536_bf52_8adb_fd06_0139f5783bc4 380f9eca_7972_03a8_a2ca_ce37678ea6cb["debug()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 380f9eca_7972_03a8_a2ca_ce37678ea6cb 9d4c0b19_1ca2_4a1f_abba_ba20a0b7fb17["isInfoEnabled()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 9d4c0b19_1ca2_4a1f_abba_ba20a0b7fb17 666f585f_278d_6f6d_14f4_d4305ea2ee09["info()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 666f585f_278d_6f6d_14f4_d4305ea2ee09 91c1eb80_86e7_fcaa_6175_cb4499a5f3ae["isWarnEnabled()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 91c1eb80_86e7_fcaa_6175_cb4499a5f3ae 9a3f9605_01aa_2298_454f_894f68c74a2e["warn()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 9a3f9605_01aa_2298_454f_894f68c74a2e 92d9756e_0cfd_33f7_eb84_ee2dbe94c5a2["isErrorEnabled()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 92d9756e_0cfd_33f7_eb84_ee2dbe94c5a2 38c19b28_8a63_b1b0_254c_2fd7e66847ce["error()"] ea21873f_9411_9a50_115f_4afde36f3d05 -->|method| 38c19b28_8a63_b1b0_254c_2fd7e66847ce
Relationship Graph
Source Code
common/src/main/java/io/netty/util/internal/logging/Log4JLogger.java lines 49–597
class Log4JLogger extends AbstractInternalLogger {
private static final long serialVersionUID = 2851357342488183058L;
private final transient Logger logger;
/**
* Following the pattern discussed in pages 162 through 168 of "The complete
* log4j manual".
*/
static final String FQCN = Log4JLogger.class.getName();
// Does the log4j version in use recognize the TRACE level?
// The trace level was introduced in log4j 1.2.12.
final boolean traceCapable;
Log4JLogger(Logger logger) {
super(logger.getName());
this.logger = logger;
traceCapable = isTraceCapable();
}
private boolean isTraceCapable() {
try {
logger.isTraceEnabled();
return true;
} catch (NoSuchMethodError ignored) {
return false;
}
}
/**
* Is this logger instance enabled for the TRACE level?
*
* @return True if this Logger is enabled for level TRACE, false otherwise.
*/
@Override
public boolean isTraceEnabled() {
if (traceCapable) {
return logger.isTraceEnabled();
} else {
return logger.isDebugEnabled();
}
}
/**
* Log a message object at level TRACE.
*
* @param msg
* - the message object to be logged
*/
@Override
public void trace(String msg) {
logger.log(FQCN, traceCapable ? Level.TRACE : Level.DEBUG, msg, null);
}
/**
* Log a message at level TRACE according to the specified format and
* argument.
*
* <p>
* This form avoids superfluous object creation when the logger is disabled
* for level TRACE.
* </p>
*
* @param format
* the format string
* @param arg
* the argument
*/
@Override
public void trace(String format, Object arg) {
if (isTraceEnabled()) {
FormattingTuple ft = MessageFormatter.format(format, arg);
logger.log(FQCN, traceCapable ? Level.TRACE : Level.DEBUG, ft
.getMessage(), ft.getThrowable());
}
}
/**
* Log a message at level TRACE according to the specified format and
Source
Frequently Asked Questions
What is the Log4JLogger class?
Log4JLogger is a class in the netty codebase, defined in common/src/main/java/io/netty/util/internal/logging/Log4JLogger.java.
Where is Log4JLogger defined?
Log4JLogger is defined in common/src/main/java/io/netty/util/internal/logging/Log4JLogger.java at line 49.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free