SpringBoot项目中日志写入数据库,最主要的核心类就是DBAppender。

我使用的MySQL数据库,创建auge_log数据库,执行以下内容建表。

BEGIN;

DROP TABLE IF EXISTS logging_event_property;

DROP TABLE IF EXISTS logging_event_exception;

DROP TABLE IF EXISTS logging_event;

COMMIT;

BEGIN;

CREATE TABLE logging_event

(

timestmp BIGINT NOT NULL,

formatted_message TEXT NOT NULL,

logger_name VARCHAR(254) NOT NULL,

level_string VARCHAR(254) NOT NULL,

thread_name VARCHAR(254),

reference_flag SMALLINT,

arg0 VARCHAR(254),

arg1 VARCHAR(254),

arg2 VARCHAR(254),

arg3 VARCHAR(254),

caller_filename VARCHAR(254) NOT NULL,

caller_class VARCHAR(254) NOT NULL,

caller_method VARCHAR(254) NOT NULL,

caller_line CHAR(4) NOT NULL,

event_id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY

);

COMMIT;

BEGIN;

CREATE TABLE logging_event_property

(

event_id BIGINT NOT NULL,

mapped_key VARCHAR(254) NOT NULL,

mapped_value TEXT,

PRIMARY KEY(event_id, mapped_key),

FOREIGN KEY (event_id) REFERENCES logging_event(event_id)

);

COMMIT;

BEGIN;

CREATE TABLE logging_event_exception

(

event_id BIGINT NOT NULL,

i SMALLINT NOT NULL,

trace_line VARCHAR(254) NOT NULL,

PRIMARY KEY(event_id, i),

FOREIGN KEY (event_id) REFERENCES logging_event(event_id)

);

COMMIT;

然后在pom中添加的dbcp的依赖

commons-dbcp

commons-dbcp

之后在logback.xml中添加写入数据库的配置信息(这里设置了写入数据库的日志级别为error,root日志级别为INFO)

com.mysql.jdbc.Driver

jdbc:mysql://localhost:3306/auge_log?characterEncoding=UTF-8

root

123456

error

ACCEPT

DENY

示例:

Logger logger = LoggerFactory.getLogger(UserController.class);

@RequestMapping("/login")

@LogApi(info = "用户登陆")

public String login(String loginName, String password, Model model){

User user = userService.getUserByLogin(loginName,password);

if(user==null){

//在此试验是否写入数据库

logger.error("用户名或密码错误,请重新登录");

model.addAttribute("emg","用户名或密码错误,请重新登录");

return "login";

}

logger.info("测试info级别是否也能写入数据库");

session.setAttribute("user",user);

return "index";

}

查看数据库记录如下:

说明配置成功了(只有error才会写入数据库)

springboot日志写入mysql_springboot运用logback将日志写入数据库相关推荐

  1. 【【SpringBoot系列】最详细demo--自定义日志脱敏组件,简单3 步完成 Spring Boot 的日志脱敏

    在我们书写代码的时候,会书写许多日志代码,但是有些敏感数据是需要进行安全脱敏处理的. 对于日志脱敏的方式有很多,常见的有①使用conversionRule标签,继承MessageConverter②书 ...

  2. logback - 自定义日志脱敏组件,一种不错的脱敏方案

    前言 在我们书写代码的时候,会书写许多日志代码,但是有些敏感数据是需要进行安全脱敏处理的. 对于日志脱敏的方式有很多,常见的有①使用conversionRule标签,继承MessageConverte ...

  3. SpringBoot 项目使用 SLF4J+logback 进行日志记录,来增强可维护性

    点击上方 好好学java ,选择 星标 公众号重磅资讯,干货,第一时间送达 今日推荐:推荐19个github超牛逼项目!个人原创100W +访问量博客:点击前往,查看更多 作者:云深不知处 blog. ...

  4. SpringBoot通过logback将日志写到本地文件里面

    准备一个SpringBoot空的项目 pom.xml <dependencies><dependency><groupId>org.springframework. ...

  5. springboot 打印乱码_Springboot中使用logback输出日志中文乱码

    在Springboot中使用logback输出日志时,中文变成了?乱码,第一反应是编码问题. 解决方法: 设置charset, 在encoder 中增加一行 UTF-8,重新启动系统,日志中中文显示正 ...

  6. springboot日志按照天自动输出_SpringBoot使用logback实现日志按天滚动-阿里云开发者社区...

    SpringBoot使用logback实现日志按天滚动 需求 日志按天滚动分割 info和error日志输出到不同文件 为什么使用Logback 在这里,我不去深究的讨论各个日志框架的优劣,网上的对比 ...

  7. SpringBoot集成logback彩色日志配置以及banner启动设置(炫酷到爆炸!)

    文章目录 前言 一.banner配置 1.1 banner图像在线生成工具 1.2 banner配置颜色 1.3 banner启动状态控制 二.logback彩色日志配置 2.1 引入依赖 2.2 l ...

  8. springboot 控制台输出错误信息_Spring boot使用logback实现日志配置

    前言 日志是我们系统必备的功能之一,可以帮助我们开发人员定位系统的异常.错误以及运行流程的重要的工具.今天老顾就来介绍一下Spring boot的默认的logback日志框架. 常用日志组件 java ...

  9. SpringBoot+logback实现日志打印

    SpringBoot+logback 一.日志简介 1.SLF4J介绍 二.SpringBoot集成logback 1.配置文件详解 1.彩色日志 2.appender 3.root和logger详解 ...

  10. Spring Boot 使用 Log4j2 Logback 输出日志到 EKL

    文章目录 1.ELK 介绍 2.环境.软件准备 3.ELK 环境搭建 4.Spring Boot 配置示例 4.1.Log4j2 方式配置 4.2.Logback 方式配置 1.ELK 介绍 ELK ...

最新文章

  1. Cocos2dx小技巧 单例
  2. php配置默认index.php,Apache的vhost中配置默认访问入口index-test.php的方法(Yii)
  3. Vue.js插槽slot和作用域插槽slot-scope学习小结
  4. 在Linux系统下防火墙开放所需要访问的端口号
  5. 【C++】静态成员 static
  6. CrossPHP--在我们用ajax,js取不到指定数据时,我们可以换一种方式
  7. DataGridView插入图片
  8. 中国移动路由器怎么设置虚拟服务器,中国移动宽带无线wifi设置方法【图】
  9. 5个最佳的Android测试框架(带示例)
  10. [OpenCV+VS2015]火焰检测算法(HSI判据)
  11. gnome 如何自定义样式_在Gnome 3中自定义字体
  12. 如何看apk支持的最低Android版本,目标Android版本?
  13. 怎么登录163邮箱?TOMvip邮箱登录详情介绍
  14. MySQL中关于字符编码的配置
  15. 微博模拟登陆之验证码的解决方法
  16. IRAP 的安装以及运行的实例 主要就是瞎调让程序能跑,,,
  17. kuka机器人报电源管理报错_KUKA机器人故障信息与故障处理_中文版.pdf
  18. Hibernate_基于Annotation的使用_OneToOne_Demo(不维护关系那方(mappedBy=person))
  19. MINIO使用说明(附文件上传下载)
  20. 计算机网络验证性实验

热门文章

  1. 卡耐基梅隆大学一些关于人机交互中未来接口人研究
  2. 190525每日一句
  3. 190404每日一句
  4. Atitit 简历外语版 英语 日语 1.经历了很多项目实践,具备较为宽广的IT从业与信息化工作背景,具备若干创业历程,道路曲折,初心不改。在相关领域累计了较深的深度(细化度)与高度(抽象度)与广度
  5. Atitit.软件仪表盘(4)--db数据库子系统-监测
  6. paip.java OutOfMemoryError 解决方法o33
  7. paip.文件读写api php java python总结.txt
  8. paip.python错误解决2
  9. paip.提升用户体验---c++ gcc 命令语法着色搭配方案
  10. paip.提升用户体验---上传文件图片命名