spring boot自带logback作为其日志新系统,但是在实际工作中,常常需要对日志进行管理或分析,
如果只是单纯的将日志导入文本文件,则在查询时操作过于繁琐,
如果将其导入mysql等关系型数据库进行存储,又太影响系统性能,同时由于Mysql其结构化的信息存储结构,导致在存储时不够灵活。
因此,在此考虑将springboot系统中产出的日志(logback) 存入mongodb中
1.pom.xml 引入依赖
注意排除掉log4j的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<version>1.5.8.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-core -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
<!-- log4j 记录日志-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j</artifactId>
<version>1.3.8.RELEASE</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--AOP-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
<version>1.5.7.RELEASE</version>
</dependency>
2.创建实体类: logback.MyLog.java
package com.wutongshu.springboot.logback; import java.io.Serializable; import java.util.Date; public class MyLog implements Serializable { private String id; private String msg; private Date time; private String threadName; private String level; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } public Date getTime() { return time; } public void setTime(Date time) { this.time = time; } public String getThreadName() { return threadName; } public void setThreadName(String threadName) { this.threadName = threadName; } public String getLevel() { return level; } public void setLevel(String level) { this.level = level; } }