原文: https://howtodoinjava.com/log4j/how-to-configure-log4j-using-properties-file/

Log4j 是一个简单而灵活的日志记录框架。 日志记录为开发人员提供了有关应用故障的详细上下文。 使用 log4j 可以在运行时启用日志记录,而无需修改应用二进制文件。 log4j 包的设计目的是使这些语句可以保留在出厂代码中,而不会造成高昂的性能成本。

这篇 log4j 属性文件教程,我展示了使用log4j.properties文件配置 log4j 的示例代码。

1. Log4j Maven 依赖项

创建一个 maven java 项目并更新 log4j maven 依赖项。

  1. <dependency>
  2. <groupId>log4j</groupId>
  3. <artifactId>log4j</artifactId>
  4. <version>1.2.17</version>
  5. </dependency>

2. log4j.properties文件

这是主要属性文件,具有 log4j 使用的所有运行时配置。 该文件将具有 log4j 附加器信息,日志级别信息和文件附加器的输出文件名。

  1. log4j.rootLogger=DEBUG, consoleAppender, fileAppender
  2. log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender
  3. log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout
  4. log4j.appender.consoleAppender.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
  5. log4j.appender.fileAppender=org.apache.log4j.RollingFileAppender
  6. log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout
  7. log4j.appender.fileAppender.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
  8. log4j.appender.fileAppender.File=demoApplication.log

3. log4j.properties示例

  1. package com.howtodoinjava;
  2. import org.apache.log4j.Logger;
  3. import org.apache.log4j.PropertyConfigurator;
  4. public class Log4jPropertiesConfigurationExample
  5. {
  6. static Logger logger = Logger.getLogger(Log4jPropertiesConfigurationExample.class);
  7. public static void main(String[] args)
  8. {
  9. //PropertiesConfigurator is used to configure logger from properties file
  10. PropertyConfigurator.configure("log4j.properties");
  11. //Log in console in and log file
  12. logger.debug("Log4j appender configuration is successful !!");
  13. }
  14. }

在控制台中输出,在项目根文件夹中输出demoApplication.log

  1. [main] DEBUG com.howtodoinjava.Log4jPropertiesConfigurationExample&nbsp; - Log4j appender configuration is successful !!

现在,我们来看一些log4j.properties示例,用于将日志消息输出到特定位置。

4. Log4j ConsoleAppender – 记录到控制台

将日志输出到控制台的 Java 程序。

  1. # Root logger
  2. log4j.rootLogger=INFO, console
  3. log4j.appender.console=org.apache.log4j.ConsoleAppender
  4. log4j.appender.console.Target=System.out
  5. log4j.appender.console.layout=org.apache.log4j.PatternLayout
  6. log4j.appender.consoleAppender.layout.ConversionPattern=[%t] %-5p %c %x - %m%n

Log4j RollingFileAppender – 记录到文件

将日志输出到文件的 Java 程序。

  1. # Root logger
  2. log4j.rootLogger=INFO, file
  3. # Direct log messages to a log file
  4. log4j.appender.file=org.apache.log4j.RollingFileAppender
  5. log4j.appender.file.File=C:\\temp\info.log
  6. log4j.appender.file.MaxFileSize=10MB
  7. log4j.appender.file.MaxBackupIndex=10
  8. log4j.appender.file.layout=org.apache.log4j.PatternLayout
  9. log4j.appender.file.layout.ConversionPattern=[%t] %-5p %c %x - %m%n

让我知道是否有任何问题。

学习愉快!