日志学习
程序员文章站
2024-03-24 09:12:04
...
日志学习
一、引言
1.1日志介绍
- 用于记录系统中发生的各种事件。记录的位置常见的有∶控制台、磁盘文件等
1.2日志级别
- 日志级别从低到高∶】
TRACE、DEBUG(用在开发和调试过程中,细节化的日志)、INFO(常规的日志级别,在部署、运行之后长期观测的)、WARN(隐患)、ERROR(已经发生的错误)、FATAL (严重的错误,容易项目崩溃)
1.3日志作用
- 通过日志观察、分析项目的运行情况(项目维护)
- 通过日志分析用户的使用情况(大数据分析)
二、解决方案1
2.1Log4j+Commons-Logging
2.1.1导入依赖
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<!-- https://mvnrepository.com/artifact/commons-logging/commons-logging -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
2.1.2基本使用
package com.lang.test;
import org.apache.commons.logging.*;
import org.junit.Test;
public class LogTest {
private Log log= LogFactory.getLog(LogTest.class);
@Test
public void test1(){
log.trace("trace");
log.debug("debug");
log.info("info");
log.warn("warn");
log.error("error");
log.fatal("fatal");
}
}
2.1.3配置信息
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration PUBLIC "-//LOGGER"
"http://org/apache/log4j/xml/log4j.dtd">
<log4j:configuration>
<!-- org.apache.log4j.ConsoleAppender 输出到控制台 -->
<appender name="myConsole" class="org.apache.log4j.ConsoleAppender">
<!--输出格式-->
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="%-d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n"/>
</layout>
</appender>
<!-- 输出到文件 -->
<appender name="myFile1" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="d:/log/hello.log"/><!--文件位置-->
<param name="Append" value="true"/><!--是否选择追加-->
<param name="MaxFileSize" value="1kb"/><!--文件最大字节数-->
<param name="MaxBackupIndex" value="2" /><!--新文件数量-->
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n" />
</layout>
</appender>
<!-- 输出到文件 -->
<appender name="myFile2" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="d:/log/world.log"/><!--文件位置-->
<param name="Append" value="true"/><!--是否选择追加-->
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="%-d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n"/>
</layout>
</appender>
<!-- 根logger的设置-->
<root>
<!--优先级设置,all < trace < debug < info < warn < error < fatal < off -->
<priority value="all"/>
<appender-ref ref="myConsole"/>
<appender-ref ref="myFile1"/>
<appender-ref ref="myFile2"/>
</root>
</log4j:configuration>
三、Logback+SLF4j
3.1.1导入依赖
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
3.1.2 基本使用
上一篇: Android自定义数字键盘
推荐阅读
-
OpenCV3学习(11.4)斑点检测 SimpleBlobDetector
-
日志学习
-
JMS学习之active mq
-
linux学习第五十二篇: exportfs命令,NFS客户端问题,FTP介绍,使用vsftpd搭建ftp服务
-
android动画学习之属性动画ObjectAnimator
-
基于Aspect的日志记录参数 博客分类: Java java
-
HTML学习笔记 博客分类: JavaWeb开发之前端基础 htmlcss
-
《汇编语言第三版》王爽学习历程——实验10(3)
-
Android animation学习笔记之propery animation
-
进程间通信学习系列(二)——简单了解Binder机制