log4j.xml文件配置

log4j.xml文件配置:在控制台打印出操作数据库的日志(包括SQL和参数等)


# 1. 定义日志信息控制器 DEBUG >> INFO >> ERROR
log4j.rootLogger = DEBUG,CONSOLE

# 2. 配置日志信息输出目的地Appender
log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender  (输出到控制台)
log4j.appender.CONSOLE = org.apache.log4j.FileAppender  (输出到文件)
log4j.appender.CONSOLE = org.apache.log4j.DailyRollingFileAppender  (每天产生一个日志文件)
log4j.appender.CONSOLE = org.apache.log4j.RollingFileAppender  (文件大小到达指定尺寸的时候产生一个新的文件)
log4j.appender.CONSOLE = org.apache.log4j.WriterAppender  (将日志信息以流格式发送到任意指定的地方)

# 3. 配置生成的日志信息文件的文件类型(布局)
log4j.appender.CONSOLE.layout = org.apache.log4j.HTMLLayout  (以HTML表格形式布局)
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout  (可以灵活地指定布局模式)
log4j.appender.CONSOLE.layout = org.apache.log4j.SimpleLayout  (包含日志信息的级别和信息字符串)
log4j.appender.CONSOLE.layout = org.apache.log4j.TTCCLayout  (包含日志产生的时间、线程、类别等等信息)

# 4. 配置日志信息的打印格式
#log4j.appender.CONSOLE.layout.ConversionPattern = [Log] %d [%t] %-5p [%c] - %m%n

============================================

# 举例:
# 日志控制器:(名称自定义)
# Console:将日志信息打印到控制台
# File:保存日志到本地
# DailyRollingFile:每天生成一个日志文件到本地
# RollingFile:限制单个日志文件大小,超过则生成新的文件
log4j.rootLogger = DEBUG, Console, File, DailyRollingFile, RollingFile

# Console 打印日志到控制台
log4j.appender.Console = org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern = [Log] %d [%t] %-5p [%c] - %m%n

# File 保存到本地文件(输出格式选择了html)
log4j.appender.File = org.apache.log4j.FileAppender
log4j.appender.File.File = D://wnkj/logs/File_log.html
log4j.appender.File.layout = org.apache.log4j.HTMLLayout
log4j.appender.File.layout.ConversionPattern = [Log] %d [%t] %-5p [%c] - %m%n

# DailyRollingFile 每天生成一个日志文件
# 由于每天生成一个文件,是自动在文件名称后面加日期,因此如果是html的话,则不行,所以只能选择文本
log4j.appender.DailyRollingFile = org.apache.log4j.DailyRollingFileAppender
log4j.appender.DailyRollingFile.File = D://wnkj/logs/DailyRollingFile.log
log4j.appender.DailyRollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.DailyRollingFile.layout.ConversionPattern =  [Log] %d [%t] %-5p [%c] - %m%n

# RollingFile 当单个文件大小超过1KB的时候会另外生成新的日志文件
log4j.appender.RollingFile = org.apache.log4j.RollingFileAppender
log4j.appender.RollingFile.File = D://wnkj/logs/RollingFile.log
log4j.appender.RollingFile.MaxFileSize=1KB
log4j.appender.RollingFile.MaxBackupIndex=3
log4j.appender.RollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.RollingFile.layout.ConversionPattern =  [Log] %d [%t] %-5p [%c] - %m%n

log4j2是一个流行的Java日志框架,可以通过log4j2.xml文件进行配置。下面是log4j2.xml文件配置详解: 1. 配置文件动态刷新配置 可以使用monitorInterval属性来设置配置文件的动态刷新间隔,单位为秒。例如: ```xml <Configuration monitorInterval="30"> ``` 2. Configuration的status属性 Configuration标签有一个status属性,用于指定日志记录器的状态。可以设置为debug、info、warn、error、fatal。例如: ```xml <Configuration status="warn"> ``` 3. 日志级别 可以使用属性level来指定日志级别,可以设置为trace、debug、info、warn、error、fatal、off。例如: ```xml <Logger name="com.foo.Bar" level="trace"> ``` 4. Logger与Root标签 Logger标签用于指定特定的类或包的日志级别,而Root标签用于指定所有日志记录器的默认日志级别。例如: ```xml <Root level="error"> <AppenderRef ref="Console"/> </Root> <Logger name="com.foo.Bar" level="trace"> <AppenderRef ref="RollingFile"/> </Logger> ``` 5. Logger的additivity属性 Logger标签还有一个additivity属性,用于指定是否将日志事件传递给父记录器。默认情况下,Logger的additivity属性为true。例如: ```xml <Logger name="com.foo.Bar" level="trace" additivity="false"> ``` 6. appender-ref的ref属性 可以使用appender-ref标签来引用appender。例如: ```xml <Logger name="com.foo.Bar" level="trace"> <AppenderRef ref="RollingFile"/> </Logger> ``` 7. appender 可以使用appender标签来指定日志输出的目的地,例如控制台或文件。常用的appender有Console、File、RollingFile等。例如: ```xml <Appenders> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> </Console> <RollingFile name="RollingFile" fileName="logs/app.log" filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz"> <PatternLayout pattern="%d %p %c{1.} [%t] %m%n"/> <Policies> <TimeBasedTriggeringPolicy/> <SizeBasedTriggeringPolicy size="250 MB"/> </Policies> </RollingFile> </Appenders> ``` 8. Patterns 可以使用PatternLayout标签来指定日志输出的格式。例如: ```xml <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> ``` 9. Java使用Log4j2 可以使用以下步骤在Java中使用Log4j2: 1)导入pom依赖 ```xml <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.14.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.14.1</version> </dependency> ``` 2)配置Log4j2.xml 3)使用日志 ```java import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; public class MyClass { private static final Logger logger = LogManager.getLogger(MyClass.class); public void doSomething() { logger.debug("Debug message"); logger.info("Info message"); logger.warn("Warn message"); logger.error("Error message"); logger.fatal("Fatal message"); } } ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值