log4j的配置和使用详解

    技术2022-07-11  76

    导入jar包

    导入log4j相关的jar包:log4j.jar、log4j-core.jar、log4j-api.jar

    log4j配置

    #日志记录的优先级,分为off、fatal、error、warn、info、debug、all或者自定义的级别。 #Log4j建议使用四个级别。优先级从高到底error、warn、info、debug #配置根Logger #如果配置为debug,则会打印error、warn、info、debug级别的信息 #如果配置为error,则只会打印error错误级别的信息 log4j.rootLogger =debug,stdout,D ##输出的四种形式: #org.apache.log4j.ConsoleAppender(控制台) #org.apache.log4j.FileAppender(文件) #org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件) #org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件) ### 输出日志的位置:控制台 org.apache.log4j.ConsoleAppender ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender ### 用流的方式输出 log4j.appender.stdout.Target = System.out ##输出样式布局 布局模式:包名.类名。 %p:输出级别 %c:包名.类名 %m:输出代码中指定的消息 %L:输出的代码位置(第几行)## ###日志布局 log4j.appender.stdout.layout = org.apache.log4j.PatternLayout ###日志内容的编码 log4j.appender.stdout.Encoding = UTF-8 ###规则 ## 2020-05-09 14:18:16 [INFO]-[com.qf.test.Log4jTest]:11 这是info级别 log4j.appender.stdout.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} [%p]-[%c]\:%L %m%n ### 输出到日志文件 :org.apache.log4j.DailyRollingFileAppender ### log4j.appender.D = org.apache.log4j.DailyRollingFileAppender ###日志文件的路径:当前项目下 当前项目根目录下:/logs/log.log(如果项目在D盘某个文件夹下,则日志文件输出在D盘下) log4j.appender.D.File =logs/log.log ###日志是否追加 log4j.appender.D.Append = true ##它的作用是输出INFO级别以上的内容到logs/log.log中,所以info.log文件中包含了ERROR级别的文件。 log4j.appender.D.Threshold = INFO ###布局 ###org.apache.log4j.HTMLLayout(以HTML表格形式布局) ###org.apache.log4j.PatternLayout(可以灵活地指定布局模式) ###org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串) ###org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息) log4j.appender.D.layout = org.apache.log4j.PatternLayout log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} [%p]-[%c]\:%L %m%n

    测试

    总结

    log4j:日志框架 1)级别:error>warn>info>debug 说明:如果配置了debug,则会打印error、warn、info、debug级别信息,如果配置了error,则只会打印error级别信息。 2)开发阶段用debug,线上用info 3)在web项目中: 一般我们直接将log4j.properties放置在src目录下(resource),这样系统自动会去resource下找,其实就是放在WEB-INF/classes文件下。这个路径在classpath下,所以直接就能找到。 如果现在我们想把log4j.properties文件放置在其它目录下,例如:放在src目录的resource目录的properties目录下。这时候就需要我们手动指定log4j配置文件的路径,否则系统是找不到的。

    Processed: 0.009, SQL: 9