该org.apache.log4j.Level水平。您还可以通过对Level类进行子类化来定义您的自定义级别。
等级 | 描述 |
---|---|
全部 | 所有级别,包括自定义级别。 |
调试 | 指定对调试应用程序最有用的细粒度信息事件。 |
信息 | 指定在粗粒度级别突出显示应用程序进度的信息性消息。 |
警告 | 表示潜在的有害情况。 |
错误 | 指定可能仍允许应用程序继续运行的错误事件。 |
致命的 | 指定可能会导致应用程序中止的非常严重的错误事件。 |
离开 | 可能的最高等级,旨在关闭日志记录。 |
痕迹 | 指定比 DEBUG 更细粒度的信息事件。 |
如果 p >= q,则启用级别为q的记录器中级别为p的日志请求。这个规则是 log4j 的核心。它假设级别是有序的。对于标准级别,我们有 ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF。
以下示例显示了我们如何过滤所有 DEBUG 和 INFO 消息。该程序使用记录器方法 setLevel(Level.X) 来设置所需的日志记录级别:
此示例将打印除 Debug 和 Info 之外的所有消息:
import org.apache.log4j.*;
public class LogClass {
private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class);
public static void main(String[] args) {
log.setLevel(Level.WARN);
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
}
}
当您编译并运行LogClass程序时,它会生成以下结果
Warn Message!
Error Message!
Fatal Message!
log4j 为您提供基于配置文件的级别设置,当您想要更改调试级别时,它使您无需更改源代码。
以下是一个示例配置文件,它将执行与我们在上面的示例中使用log.setLevel(Level.WARN)方法所做的相同的任务。
# Define the root logger with appender file
log = /usr/home/log4j
log4j.rootLogger = WARN, FILE
# Define the file appender
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=${log}/log.out
# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n
现在让我们使用我们的以下程序
import org.apache.log4j.*;
public class LogClass {
private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class);
public static void main(String[] args) {
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
}
}
现在编译并运行上面的程序,你会在/usr/home/log4j/log.out文件中得到以下结果
Warn Message!
Error Message!
Fatal Message!
以上就是关于“Log4j日志级别介绍”,如果大家想了解更相关知识,不妨来关注一下极悦的Java极悦在线学习,里面的课程内容丰富,通俗易懂,适合小白学习,希望对大家能够有所帮助。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习