java - 如何在没有 Spring 和 hibernate 日志的情况下使用 log4j 登录文件

标签 java logging log4j

我想使用 log4j 库来记录我的应用程序中的内容。 我正在没有 xml 的情况下初始化它(通过 java 代码)。 有代码:

public static void initLogger() {
        try {
          String filePath = "mylog.log";
          PatternLayout layout = new PatternLayout("%-5p %d %m%n");
          RollingFileAppender appender = new RollingFileAppender(layout, filePath);
          appender.setName("myFirstLog");
          appender.setMaxFileSize("1MB");
          appender.activateOptions();
          Logger.getRootLogger().addAppender(appender);
        } catch (IOException e) {
          e.printStackTrace();
        }
    }

当我想在类里面记录一些内容时,我使用这个:

public static final Logger log = Logger.getLogger(Main.class);

一切正常,但记录器附加文件 spring 和 hibernate 日志。如何在没有 spring 和 hibernate 日志的情况下将信息记录到文件中?我需要创建一个新的 log4j 实例吗?

最佳答案

而不是

Logger.getRootLogger().addAppender(appender);

尝试

Logger.getLogger("myrootpackage").addAppender(appender);

例如

Logger.getLogger("com.mycompany").addAppender(appender);

关于java - 如何在没有 Spring 和 hibernate 日志的情况下使用 log4j 登录文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33616082/

相关文章:

c# - 如何使用 App.config 和 System.Diagnostics 动态设置日志文件?

java - Kafka Log4j 附加程序中的延迟

java - 找不到符号 System.console().readInt();

c++ - 使用 log4cxx 记录 C++ 中的特定类

python - python 中的消息传递

java - 如何将特定类的日志信息记录到特定文件中?

java - Log4j2 自定义附加程序 : ERROR Attempted to append to non-started appender

java - 对于某些类,使用 JRuby 中的 Mahout 会引发 "missing class or uppercase package name"

java - 数据无法保存到数据库(Spring MVC+T​​hymeleaf)

java - 无法使用 TERMS QUERY 从 ELASTIC SEARCH 查询字母数字字段