日志组件Sl4j 介绍,xml配置文件 参数详解 |
您所在的位置:网站首页 › xml的配置文件整形变量 › 日志组件Sl4j 介绍,xml配置文件 参数详解 |
文章目录
前言一、Slf4j 日志使用1. 老式用法2. @Sl4j注解a. maven依赖b. 使用示例
3. 注意
二 、日志级别三、日志的xml文件配置1. 直接拿走使用的xml配置2. xml配置的详解(一)3. xml配置的详解(二)
前言
日志 是程序运行过程中所打印出来的信息。 我们可以通过日志来实时了解程序运行的情况,在每一个时刻的各种情况。当出现问题时,可以快速的进行定位。 java程序员在学习java之后就会知道日志对于任何一个Java应用程序尤其是服务端程序是至关重要的。日志有很多的框架,如java.util.logging、Apache log4j、logback。 当我学习了springboot后,更加常用的就是SLF4J(Simple logging facade for Java) SLF4J不同于其他日志类库,与其它日志类库有很大的不同。SLF4J不是一个真正的日志实现,而是一个抽象层( abstraction layer),它允许你在后台使用任意一个日志类库。如果是在编写供内外部都可以使用的API或者通用类库,那么你真不会希望使用你类库的客户端必须使用你选择的日志类库。 使用是比较简单的,下面也简单写了一下,但是xml的配置却是有点麻烦,我也来记录一下。也是本博客最重要的,也是我最想记录的。 一、Slf4j 日志使用 1. 老式用法自己写日志的时候,肯定需要: private final Logger logger = LoggerFactory.getLogger(LoggerTest.class); logger.debug("debug");//默认日志级别为info logger.info("info"); logger.error("error"); logger.warn("warn");每次写新的类,就需要重新写logger 2. @Sl4j注解 a. maven依赖lombok 插件中,包含了对sl4j的依赖 org.projectlombok lombok true b. 使用示例 在类上使用@Sl4j注解 进行标注然后直接使用即可,如下: /** * Created with IntelliJ IDEA. * User: 冯安晨. * Date: 2018/1/8. * Time: 下午 8:05. * Explain:日志测试 */ @RunWith(SpringRunner.class) @SpringBootTest @Slf4j public class LoggerTest { private final Logger logger = LoggerFactory.getLogger(LoggerTest.class); /** * 传统方式实现日志 */ @Test public void test1(){ logger.debug("debug");//默认日志级别为info logger.info("info"); logger.error("error"); logger.warn("warn"); } /** * Slf4j注解方式实现日志 */ @Test public void test2(){ log.fatal("这是fatal信息"); log.error("这是error信息"); log.warn("这是warn信息"); log.info("这是info信息");//默认日志级别为info log.debug("这是debug信息"); } } 3. 注意如果注解@Slf4j注入后找不到变量log,需要IDEA安装lombok插件, File → settings → Plugins 二 、日志级别 级别中文名称级别等级详解OFF关闭1Level 是最高等级的,用于关闭所有日志记录。FATAL致命的错误2level 指出每个严重的错误事件将会导致应用程序的退出。ERROR错误3level 指出虽然发生错误事件,但仍然不影响系统的继续运行。WARN警告4level 表明会出现潜在错误的情形。INFO信息5level 表明 消息在粗粒度级别上突出强调应用程序的运行过程。DEBUG调试6Level 指出细粒度信息事件对调试应用程序是非常有帮助的。TRACE7与DEBUG 相比更细致化的记录事件消息。ALL8Level 是最低等级的,用于打开所有日志记录。从高到地低 OFF 、 FATAL 、 ERROR 、 WARN 、 INFO 、 DEBUG 、 TRACE 、 ALL 一般使用这5个:FATAL、 ERROR 、 WARN、 INFO、 DEBUG 三、日志的xml文件配置 1. 直接拿走使用的xml配置springboot项目可以直接拿走使用: logback-spring.xml ${APP_NAME} ${ENCODER_PATTERN} INFO /var/log/imoslog/airport-objidentifytomq-s/info.log utf-8 ${ENCODER_PATTERN} ${LOG_DIR}/info.%d{yyyy-MM-dd}-%i.log 40MB 5 ERROR /var/log/imoslog/airport-objidentifytomq-s/error.log utf-8 ${ENCODER_PATTERN} ${LOG_DIR}/error.%d{yyyy-MM-dd}-%i.log 40MB 7 2. xml配置的详解(一)logback-spring.xml ${APP_NAME} ${ENCODER_PATTERN} INFO /var/log/imoslog/airport-objidentifytomq-s/info.log utf-8 ${ENCODER_PATTERN} ${LOG_DIR}/info.%d{yyyy-MM-dd}-%i.log 40MB 5 ERROR /var/log/imoslog/airport-objidentifytomq-s/error.log utf-8 ${ENCODER_PATTERN} ${LOG_DIR}/error.%d{yyyy-MM-dd}-%i.log 40MB 7 ${LOG_HOME}/sync.%d{yyyy-MM-dd}.log 7 ${ENCODER_PATTERN} 3. xml配置的详解(二) appender元素 定义一个日志输出目的地。name [#REQUIRED attribute] : 定义appender的名字,以便被后文引用 class [#REQUIRED attribute] : 定义appender对象所属的类的全名 param [* child] : 创建appender对象时传递给类构造方法的参数 layout [? child] : 该appender使用的layout对象 输出方式appender一般有5种:即appender中的 class属性值 org.apache.log4j.RollingFileAppender(滚动文件,自动记录最新日志) org.apache.log4j.ConsoleAppender (控制台) org.apache.log4j.FileAppender (文件) org.apache.log4j.DailyRollingFileAppender (每天产生一个日志文件) org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方) layout元素定义与某一个appender相联系的日志格式化器。 class [#REQUIRED attribute] : 定义layout对象所属的类的全名 param [* child] : 创建layout对象时传递给类构造方法的参数 logger元素定义一个日志输出器。 name [#REQUIRED attribute] : 定义logger的名字,以便被后文引用 additivity [#ENUM attribute] : 取值为"true"(默认)或者"false",是否继承父logger的属性 level [? child] : 定义该logger的日志级别 appender-ref [* child] : 定义该logger的输出目的地 root元素定义根日志输出器root logger。 param [* child] : 创建root logger对象时传递给类构造方法的参数 level [? child] : 定义root logger的日志级别 appender-ref [* child] : 子标签。定义root logger的输出目的地 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |