`
monkeyhero
  • 浏览: 28037 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

log4j-TraceLevel

阅读更多
Here's an example of how to create a  Level :

public class TraceLevel extends Level {
  public static final int TRACE_INT = 800;

  // We assimilate TRACE to DEBUG on Syslog
  private static final int SYSLOG_TRACE_INT = 7;

  public static final TraceLevel TRACE =
      new TraceLevel(TRACE_INT, "TRACE", SYSLOG_TRACE_INT);

  final static public Level ALL = new TraceLevel(ALL_INT, "ALL", 9);

  protected TraceLevel(int level, String strLevel, int syslogEquiv) {
    super(level, strLevel, syslogEquiv);
  }

  public static Priority toPriority(String sArg) {
    return toPriority(sArg, TraceLevel.TRACE);
  }

  public static Priority toPriority(int i) throws IllegalArgumentException {
    return toPriority(i, TraceLevel.TRACE);
  }

  public static Priority toPriority(int i, Priority priority) {
    Priority p = (i == TRACE_INT) ?
        TraceLevel.TRACE :
        Priority.toPriority(i, priority);

    return p;
  }

  public static Priority toPriority(String sArg, Priority priority) {
    Priority p = (sArg == null) ?
        TraceLevel.TRACE :
        ((sArg.equalsIgnoreCase("TRACE")) ?
        TraceLevel.TRACE :
        Priority.toPriority(sArg, priority));

    return p;
  }

  public static Level toLevel(String s) {
    return toLevel(s, TraceLevel.TRACE);
  }

  public static Level toLevel(int i) {
    return toLevel(i, TraceLevel.TRACE);
  }

  public static Level toLevel(int i, Level level) {
    Level l = (i == TRACE_INT) ?
        TraceLevel.TRACE :
        Level.toLevel(i, level);

    return l;
  }

  public static Level toLevel(String s, Level level) {
    Level l = (s == null) ?
        TraceLevel.TRACE :
        ((s.equalsIgnoreCase("TRACE")) ?
        TraceLevel.TRACE :
        Level.toLevel(s, level));

    return l;
  }

  /**
   * @deprecated
   */
  public static Priority[] getAllPossiblePriorities() {
    return new Priority[]{Priority.FATAL, Priority.ERROR, Level.WARN,
                          Priority.INFO, Priority.DEBUG, TRACE};
  }
}

The value of TRACE_INT affects what log level messages appear at. For example, setting TRACE_INT to LogLevel.DEBUG_INT +1 will make it equivalent to the DEBUG level statements. Setting a value of LogLevel.FATAL_INT + 10000 will set the level above any default level and allow you to only log those messages.

The way it would be used is:

if (LOG.isEnabledFor(TraceLevel.TRACE)) LOG.log(TraceLevel.TRACE, "Got here");
To get it to show in your logs, of course you need to tell your Logger to use the TRACE level and above. Because it's not a predefined Level, you have to specify the class name. Here's an example of how to set the root Logger in your log4j.properties file:

log4j.rootLogger=trace#my.package.TraceLevel, MAIN, STDERR
last edited 2005-11-22 09:24:30 by SeanMcAree
分享到:
评论

相关推荐

    log4j-2.8.2

    四、log4j2.xml配置 配置文件log4j2.xml是Log4j 2的核心,它定义了日志行为,包括日志级别、Appender、Layout、Filter等配置。例如: ```xml [%t] %-5level %logger{36} - %msg%n"/> ...

    log4j-core-2.5

    5. **日志分级**:遵循日志级别的标准(TRACE、DEBUG、INFO、WARN、ERROR、FATAL、OFF),Log4j-core-2.5可以方便地控制不同级别日志的输出。 二、SLF4J接口的集成 SLF4J(Simple Logging Facade for Java)是一个...

    apache-log4j-2.9.0-src.zip

    2. **日志级别**:Log4j支持TRACE、DEBUG、INFO、WARN、ERROR和FATAL等不同级别的日志记录,源码中的`Level`类定义了这些级别,并提供了比较和过滤功能。 3. **日志事件**:`LogEvent`是Log4j中的关键数据结构,它...

    log4j-2.15.0-rc2核心jar.7z

    《log4j-2.15.0-rc2核心jar在SpringBoot中的整合与应用》 Log4j是一款广泛使用的日志记录框架,它的最新版本log4j-2.15.0-rc2针对之前的版本进行了诸多优化和安全改进。SpringBoot,作为Spring框架的轻量级实现,以...

    apache-log4j-2.11.2-bin

    Apache Log4j是Java平台上的一个著名日志记录框架,其版本2.11.2是该库的一个稳定发行版,提供了丰富的日志功能和性能优化。在Java应用程序开发中,尤其是在Spring和Spring MVC框架中,Log4j是常用的日志解决方案之...

    log4j-1.2.8.jar包,在项目中直接导入即可。

    import org.apache.log4j.Level; public class Main { private static final Logger logger = Logger.getLogger(Main.class); public static void main(String[] args) { logger.setLevel(Level.DEBUG); // ...

    log4j-控制指定类,包的日志级别:log4j-demo.zip

    import org.apache.log4j.Level; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass.class); public static void main(String[] args) { // 设置MyClass的日志级别为...

    log4j 1.2.17版本jar包

    Log4j支持TRACE、DEBUG、INFO、WARN、ERROR和FATAL六级,其中TRACE和DEBUG级别用于调试,而WARN、ERROR和FATAL级别用于报告问题。 5. **Filter**: 过滤器,允许根据特定条件过滤日志事件。例如,只输出级别高于或...

    Log - Log4j - log4j.properties配置文件

    log4j.category.org.hibernate.type.descriptor.sql.BasicBinder=TRACE ``` 这样,Hibernate执行的每个SQL语句和参数绑定都会被记录下来。`TRACE`级别会输出更多详细信息,如参数值。 在实际应用中,`log4j....

    Java中Log4j 2日志框架的压缩包,版本是-2.23.0

    Java中的Log4j 2日志框架是一款广泛应用于企业级应用开发的日志处理工具,它在Log4j 1.x的基础上进行了大量的优化和改进,提供了更高效、更灵活的日志记录功能。Log4j 2.23.0是其最新的稳定版本,包含了对性能、安全...

    log4j.jar包

    - **API**:log4j-api-2.0-rc1.jar包含了Log4j的接口和抽象类,定义了如何创建和使用日志记录器,如Logger、Level、Appender等。开发者主要通过这些API来集成Log4j到他们的应用程序中。 - **Core**:log4j-core-...

    spring-boot-starter-log4j2

    1. 日志级别:Log4j2支持TRACE、DEBUG、INFO、WARN、ERROR、FATAL和OFF七个级别。通过配置文件,可以设置全局日志级别,也可以针对特定类或包设置不同级别。 2. Appenders:Appender是日志输出的目标,如控制台、...

    apache-log4j-1.2.16

    Apache Log4j 是一个广泛使用的Java日志框架,它的版本1.2.16是我们讨论的重点。Log4j 是Apache软件基金会(ASF)的一个开源项目,它为Java应用程序提供了强大的日志功能,允许开发者记录程序运行过程中的各种事件,...

    SpringBoot框架配置log4j和log4j2的配置代码

    Log4j和Log4j2是两种广泛使用的Java日志框架,它们提供了灵活的日志配置和高性能的日志处理能力。本文将详细介绍如何在SpringBoot项目中配置Log4j和Log4j2。 ### SpringBoot与Log4j Log4j是Apache的一个开源项目,...

    示范如何在android工程中使用log4j记录日志

    2. **配置Log4j**:在Android项目中,通常将Log4j的配置写入一个XML文件,如log4j2.xml,然后将其放在res/xml目录下。以下是一个基本配置示例: ```xml <?xml version="1.0" encoding="UTF-8"?> [%t] %-5...

    Log4j2学习log4j2.xml配置模板

    --Configuration 后面的 status,这个用于设置 log4j2 自身内部的信息输出,可以不设置,当设置成 trace 时,你会看到 log4j2 内部各种详细输出--> <!--monitorInterval:Log4j 能够自动检测修改配置 文件和重新配置...

    log4j2的配置.zip

    Log4j2是一款广泛使用的Java日志框架,它提供了丰富的日志记录功能,适用于各种规模的应用程序。在Java开发中,正确配置Log4j2对于调试、监控和问题排查至关重要。下面将详细介绍Log4j2的依赖包以及配置的相关知识点...

    slf4j日志,可以使用它代替LOG4J

    SLF4J(Simple Logging Facade for Java)是Java中的一种日志抽象层,它的设计目的是为各种日志框架提供一个统一的接口,使得开发者可以在不改变代码的情况下切换不同的日志实现,比如从Log4j切换到Logback,或者...

    log4j2.xml记录日志到到数据库

    Log4j2是一款广泛使用的日志框架,它提供了灵活且高效的日志记录功能。本示例将详细介绍如何配置并使用Log4j2将日志信息记录到MySQL数据库中。 首先,我们要理解Log4j2的核心概念。Log4j2主要包括以下几个组件: 1...

    log4j开发jar包

    4. **Level/Priority**: 这是控制日志输出级别的概念,包括TRACE, DEBUG, INFO, WARN, ERROR, FATAL和OFF,每个级别都有其特定的含义,可以控制哪些级别的日志会被记录。 5. **配置文件**: log4j的配置通常通过`log...

Global site tag (gtag.js) - Google Analytics