log4j.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <!-- 日志输出到控制台 --> <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"> <param name="Encoding" value="UTF-8"/> <!-- 日志输出格式 --> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m {%F:%L} \n" /> </layout> </appender> <!--过滤器设置输出的级别--> <!-- <filter class="org.apache.log4j.varia.LevelRangeFilter"> <!– 设置日志输出的最小级别 –> <param name="levelMin" value="INFO"/> <!– 设置日志输出的最大级别 –> <param name="levelMax" value="ERROR"/> </filter> </appender>--> <!-- 输出日志到文件 --> <!-- <appender name="fileAppender" class="org.apache.log4j.FileAppender"> <!– 输出文件全路径名–> <param name="File" value="/data/applogs/own/fileAppender.log"/> <!–是否在已存在的文件追加写:默认时true,若为false则每次启动都会删除并重新新建文件–> <param name="Append" value="false"/> <param name="Threshold" value="INFO"/> <!–是否启用缓存,默认false–> <param name="BufferedIO" value="false"/> <!–缓存大小,依赖上一个参数(bufferedIO), 默认缓存大小8K –> <param name="BufferSize" value="512"/> <!– 日志输出格式 –> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%p][%d{yyyy-MM-dd HH:mm:ss SSS}][%c]-[%m]%n"/> </layout> </appender>--> <!-- 输出日志到文件,当文件大小达到一定阈值时,自动备份 --> <!-- FileAppender子类 --> <!-- <appender name="rollingAppender" class="org.apache.log4j.RollingFileAppender"> <!– 日志文件全路径名 –> <param name="File" value="/data/applogs/RollingFileAppender.log" /> <!–是否在已存在的文件追加写:默认时true,若为false则每次启动都会删除并重新新建文件–> <param name="Append" value="true" /> <!– 保存备份日志的最大个数,默认值是:1 –> <param name="MaxBackupIndex" value="10" /> <!– 设置当日志文件达到此阈值的时候自动回滚,单位可以是KB,MB,GB,默认单位是KB,默认值是:10MB –> <param name="MaxFileSize" value="10KB" /> <!– 设置日志输出的样式 –>` <layout class="org.apache.log4j.PatternLayout"> <!– 日志输出格式 –> <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss:SSS}] [%-5p] [method:%l]%n%m%n%n" /> </layout> </appender>--> <!-- 日志输出到文件,可以配置多久产生一个新的日志信息文件 --> <!-- <appender name="dailyRollingAppender" class="org.apache.log4j.DailyRollingFileAppender"> <!– 文件文件全路径名 –> <param name="File" value="/data/applogs/own/dailyRollingAppender.log"/> <param name="Append" value="true" /> <!– 设置日志备份频率,默认:为每天一个日志文件 –> <param name="DatePattern" value="'.'yyyy-MM-dd'.log'" /> <!–每分钟一个备份–> <!–<param name="DatePattern" value="'.'yyyy-MM-dd-HH-mm'.log'" />–> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%p][%d{HH:mm:ss SSS}][%c]-[%m]%n"/> </layout> </appender>--> <!-- 1. 指定logger的设置,additivity是否遵循缺省的继承机制 2. 当additivity="false"时,root中的配置就失灵了,不遵循缺省的继承机制 3. 代码中使用Logger.getLogger("logTest")获得此输出器,且不会使用根输出器 --> <logger name="java.sql" additivity="false"> <level value ="debug"/> </logger> <!--这里additivity设置为true,表示关于ibatis中的日志只显示info以及info的,不会匹配<root>标签中的配置.默认additivity为true--> <logger name="org.apache.ibatis" additivity="true"> <level value="info"/> </logger> <!-- 根logger的设置,若代码中未找到指定的logger,则会根据继承机制,使用根logger--> <root> <level value="debug"/> <appender-ref ref="STDOUT"/> </root> </log4j:configuration>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)