wordpress能做手机站么,进网站后台显示空白,资金盘网站开发多少钱,服务器有哪些Log4j的配置与使用详解
Log4j介绍
Log4j是Apache的一个开源项目#xff0c;通过使用Log4j#xff0c;我们可以控制日志信息输送的目的地是控制台、文件、GUI组件#xff0c;我们可以控制每条日志的输出格式#xff1b;只需要通过一个配置文件就可以灵活的配置#xff0c…Log4j的配置与使用详解
Log4j介绍
Log4j是Apache的一个开源项目通过使用Log4j我们可以控制日志信息输送的目的地是控制台、文件、GUI组件我们可以控制每条日志的输出格式只需要通过一个配置文件就可以灵活的配置而不需要修改任何代码。
日志级别
Log4j中的日志级别及优先级ALL DEBUG(调试) INFO(消息) WARN(警告) ERROR(错误) FATAL OFF 通过定义每一条日志信息的级别我们能更加细致地控制日志的生成过程。
log4j.properties配置文件
# Global logging configuration
# 设置日志输出级别以及输出目的地可以设置多个输出目的地开发环境下日志级别要设置成DEBUG或者ERROR
# 前面写日志级别逗号后面写输出目的地我自己下面设置的目的地相对应以逗号分开
# log4j.rootLogger [level],appenderName1,appenderName2,…
log4j.rootLoggerDEBUG,CONSOLE,LOGFILE#### 控制台输出 ####
log4j.appender.CONSOLEorg.apache.log4j.ConsoleAppender
# 输出到控制台
log4j.appender.CONSOLE.Target System.out
# 指定控制台输出日志级别
log4j.appender.CONSOLE.Threshold DEBUG
# 默认值是 true, 表示是否立即输出
log4j.appender.CONSOLE.ImmediateFlush true
# 设置编码方式
log4j.appender.CONSOLE.Encoding UTF-8
# 日志输出布局
log4j.appender.CONSOLE.layoutorg.apache.log4j.PatternLayout
# 如果日志输出布局为PatternLayout 自定义级别需要使用ConversionPattern指定输出格式
log4j.appender.CONSOLE.layout.ConversionPattern%d{yyyy-MM-dd HH:mm:ss} %5p (%c:%L) - %m%n#### 输出错误信息到文件 ####
log4j.appender.LOGFILEorg.apache.log4j.FileAppender
# 指定输出文件路径
#log4j.appender.LOGFILE.File F://Intellij idea/logs/error.log
log4j.appender.LOGFILE.File ./logs/error.log #日志输出到文件默认为true
log4j.appender.LOGFILE.Append true
# 指定输出日志级别
log4j.appender.LOGFILE.Threshold ERROR
# 是否立即输出默认值是 true,
log4j.appender.LOGFILE.ImmediateFlush true
# 设置编码方式
log4j.appender.LOGFILE.Encoding UTF-8
# 日志输出布局
log4j.appender.LOGFILE.layout org.apache.log4j.PatternLayout
# 如果日志输出布局为PatternLayout 自定义级别需要使用ConversionPattern指定输出格式
log4j.appender.LOGFILE.layout.ConversionPattern %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n测试查询操作-
Log4j三大组件
Logger: 日志记录器日志记录的核心类用于输出不同日志级别的消息。Appender: 日志输出目标用于指定日志输出的目的地如控制台、文件等等。Layout: 日志格式化器用于指定日志按照什么格式输出是日志输出的格式化器。
Appender Log4j中用于控制日志输出的目的地每一个Appender就表示一个输出目标有以下几种
ConsoleAppender输出到控制台FileAppender输出到指定文件DailyRollingFileAppender每天产生一个单独的日志文件RollingFileAppender限制日志文件大小每当达到大小限制时生成一个新的日志文件WriterAppender将日志信息以流格式发送到任意指定的地方
Layout 日志输出格式Log4j提供的layout有以下几种
org.apache.log4j.HTMLLayout以HTML表格形式布局org.apache.log4j.PatternLayout可以灵活地指定布局模式org.apache.log4j.SimpleLayout包含日志信息的级别和信息字符串org.apache.log4j.TTCCLayout包含日志产生的时间、线程、类别等等信息
Logger 日志记录器是Log4j使用的核心类通过Logger类可以设置日志消息的输出级别、输出目的地以及输出格式
基本使用
1. 引入相关依赖log4j
dependencygroupIdlog4j/groupIdartifactIdlog4j/artifactIdversion1.2.12/version
/dependency2.导入包org.apache.log4j.Logger
3.创建日志对象 static final Logger logger Logger.getLogger(XXX.class); //参数为当前所在类的类文件
测试代码
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.junit.Test;public class Log4jTest {//创建日志对象 Loggerstatic final Logger logger Logger.getLogger(Log4jTest.class);Testpublic void testLog4j(){//显示警告级别以上的信息logger.setLevel(Level.WARN);// debug levellogger.debug(DEBUG(调试));// info levellogger.info(INFO(消息));// warning levellogger.warn(WARN(警告));// error levellogger.error(ERROR(错误));}}输出结果-