gpt4 book ai didi

java - Log4j2 没有像指定的那样格式化输出/appender 没有添加我认为

转载 作者:太空宇宙 更新时间:2023-11-04 09:08:22 24 4
gpt4 key购买 nike

我正在学习在我的应用程序中使用 log4j2。为此,我添加了一个附加程序和带有格式说明符的模式布局。但是,输出不符合规范。甚至 INFO 级别的语句也没有被打印。代码:

 public static void main(String[] args) {
ConfigurationBuilder<BuiltConfiguration> builder=ConfigurationBuilderFactory.newConfigurationBuilder();
AppenderComponentBuilder appenderBuilder = builder.newAppender("Stdout", "CONSOLE");
appenderBuilder.add(builder.newLayout("PatternLayout").addAttribute("pattern", "[%c{1}] %m\\n"));
builder.add(appenderBuilder);

Logger logger = LogManager.getLogger();
logger.log(Level.INFO, "This is a first Info log");
logger.log(Level.INFO, "This is a second Info log");
logger.log(Level.ERROR, "This is a first Error log");
logger.log(Level.FATAL, "This is a first fatal log");

}
  • 我面临的问题是:

    1. 日志输出不遵循我指定的模式。我有尝试更改图案,但仍然以相同的格式打印。
    2. 我添加了四个日志记录语句,其中仅打印了两个(ERROR 和 FATAL)。

输出:

  Logging output for pattern ("%m\\n"): 
14:42:06.046 [main] ERROR loghelper.log4j.Log2Helper - This is a first Error log
14:42:06.049 [main] FATAL loghelper.log4j.Log2Helper - This is a first fatal log

Logging output for pattern ("%d [%t] %-5level: %msg%n%throwable"):
14:41:23.555 [main] ERROR loghelper.log4j.Log2Helper - This is a first Error log
14:41:23.557 [main] FATAL loghelper.log4j.Log2Helper - This is a first fatal log

最佳答案

首先,未配置根记录器(默认为错误级别)因此会打印错误和以上级别的日志。

其次,添加附加程序后不会构建构建器。

    builder.add(appenderBuilder);        

应该更新为

    builder.add(appenderBuilder);
builder.build();

关于java - Log4j2 没有像指定的那样格式化输出/appender 没有添加我认为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59944643/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com