日志级别_SpringBoot实战(十三):Admin动态修改日志级别

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan

【前言】

之前关于线上输出日志一直有个困惑:如何可以动态调整的日志级别,来保证系统在正常运行时性能同时又能在出现问题时打印详细的信息来快速定位问题;最近研究一下Spring Boot Admin中动态日志级别调整,并集成项目中,在此与大家共享;

【动态修改日志级别】

一、生产环境日志输出的状况

1、生产环境日志输出的困惑

A.设置日志输出级别为info;

(1)优点:可以详细的打印日志,有利于排错;

(2)缺点:日志消耗系统的性能较大;只能针对整个系统整体设置日志输出较多,定位具体类或方法日志效率较低;

B.设置日志输出级别为error;

(1)优点:日志消耗系统性能较小;

(2)缺点:当遇到bug时,无法追踪到详细信息难以定位问题;

2、解决办法:

A.比较被动的妥协解决方案:项目发布时设置日志输出级别为error,当线上遇到问题时,再重启项目修改日志的输出级别为info;

(1)优点:无需改造现有项目,无需增加监控系统管理日志级别;

(2)缺点:每次都需要重启项目,项目多不利于统一管理;

B.动态配置日志级别:通过Spring Boot Admin的日志级别管理来动态调整日志级别;

(1)优点:动态更新日志级别,细粒度控制(项目,包,类)日志级别,便于快速定位问题;

(2)缺点:需要对现有系统进行改造,增加Spring Boot Admin监控系统;

二、项目集成

参考上篇博文《SpringBoot实战(十二):集成 Spring Boot Admin 监控》

三、效果展示

1、查看项目启动时日志级别

96ad0f44cfa87f9cfb298e6fca44e053.png

2、访问系统接口,查看日志

16fdb859c17eb8a8bfb5bc2b2426367c.png

​ 3、在Admin管理控制台修改类 com.zhanghan.zhboot.controller.CheckMobileController 的日志级别为Info

b59048c315e86e065865e30c03779682.png

​ 4、再次访问接口,查看日志(很显然,已经将修改为info)

f5bf51563c903da9c63d9a541c25e648.png

四、项目地址:

1、地址:https://github.com/dangnianchuntian/springboot

2、代码版本:1.5.0-Release

【总结】

1、动态修改日志级别将大大提高我们排错的效率,尽快定位问题,减少损失;

2、接下来会为大家共享更多关于SpringBootAdmin的特性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/475324.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 293. 翻转游戏

文章目录1. 题目2. 解题1. 题目 你和朋友玩一个叫做「翻转游戏」的游戏,游戏规则:给定一个只有 和 - 的字符串。 你和朋友轮流将 连续 的两个 “” 反转成 “–”。 当一方无法进行有效的翻转时便意味着游戏结束,则另一方获胜。 请你写出一…

Android学习笔记(八)XML文档的解析

一、废话 最近几天四川一直下雨,冷!今天到成都的时候,下午3点多的天和晚上天差不多,黑呼呼的... ...难道传说的2012来了?哈哈哈... ... 二、正文   在上一篇笔记中提到过说在Android系统中,存储数据的方式除了SQLite外&#xf…

LeetCode 1196. 最多可以买到的苹果数量(贪心)

文章目录1. 题目2. 解题1. 题目 楼下水果店正在促销,你打算买些苹果,arr[i] 表示第 i 个苹果的单位重量。 你有一个购物袋,最多可以装 5000 单位重量的东西,算一算,最多可以往购物袋里装入多少苹果。 示例 1&#x…

3点 刚体运动 opencv_模态法动力学分析中的刚体模态

01—概述在对汽车结构进行动力学有限元分析时,无论是瞬态问题还是频响问题,都经常使用模态叠加法。模态叠加法动力学分析是常规模态分析的自然扩展,它利用结构振型来缩减问题求解规模,从而使数值求解更为高效。模态叠加法首先计算…

简单实用的铁道部12306.cn网站自动化登录

铁道部网站登录难点分析 必须使用微软IE浏览器 铁道部网站只支持IE在线付款网站使用Https协议 客户端不允许跨域访问 技术解析 使用微软IE开发者工具栏即可破解自动化登录过程开始步骤 使用IE8及其以上的版本,IE7及以下版本需要另外下载微软官方的IE开发者工具栏&a…

LeetCode 1064. 不动点(二分查找)

文章目录1. 题目2. 解题2.1 暴力搜2.2 二分查找1. 题目 给定已经按升序排列、由不同整数组成的数组 A,返回满足 A[i] i 的最小索引 i。 如果不存在这样的 i,返回 -1。 示例 1: 输入:[-10,-5,0,3,7] 输出:3 解释&…

vue 接口节流_vue输入节流,避免实时请求接口的实例代码

在做搜索的时候,当搜索页面只有一个输入框、没有确定按钮的时候,只能在用户输入时请求服务端,查询数据。这样会导致频繁的发送请求,造成服务端压力。解决这个问题,可以使用vue做输入节流。1、创建一个工具类&#xff0…

如何获取JavaCard剩余空间

0x01应用场景 获取JavaCard卡内剩余空间,一方面是在评估一张卡的时候需要用到,另一方面是在应用个人化或者运行时需要用到。 例如:应用提供商为了保证自己的应用在卡内运行期间能够不受空间影响,一般会在个人化(安装应用)的时候先…

LeetCode 1474. 删除链表 M 个节点之后的 N 个节点

文章目录1. 题目2. 解题1. 题目 给定链表 head 和两个整数 m 和 n. 遍历该链表并按照如下方式删除节点: 开始时以头节点作为当前节点. 保留以当前节点开始的前 m 个节点. 删除接下来的 n 个节点. 重复步骤 2 和 3, 直到到达链表结尾. 在删除了指定结点之后, 返回修改过后的链…

mac找不到mysql_mac找不到mysql

出现问题:macbook安装好mysql,并按照各路大神的说明进行了以下配置。打开Terminal,输入:vim .bash_profile进入编辑界面,添加以下内容:export PATH$PATH:/usr/local/mysql/bin按下esc键,输入 :w…

一个 SQL 同时验证帐号是否存在、密码是否正确

出处:http://www.cnblogs.com/jacklondon/archive/2012/01/13/2321686.html近日偶尔看到一个很巧妙的 SQL 技巧,一个简单的 SQL 同时验证帐号是否存在、密码是否正确。之前从未曾想过这么做,也未曾见过别人这么做。虽是奇技淫巧,却…

LeetCode 1427. 字符串的左右移

文章目录1. 题目2. 解题1. 题目 给定一个包含小写英文字母的字符串 s 以及一个矩阵 shift,其中 shift[i] [direction, amount]: direction 可以为 0 (表示左移)或 1 (表示右移)。 amount 表示 s 左右移的…

修改mysql数据库字符集_修改及查看mysql数据库的字符集

Liunx下修改MySQL字符集:1.查找MySQL的cnf文件的位置find / -iname *.cnf -print/usr/share/mysql/my-innodb-heavy-4G.cnf/usr/share/mysql/my-large.cnf/usr/share/mysql/my-small.cnf/usr/share/mysql/my-medium.cnf/usr/share/mysql/my-huge.cnf/usr/share/texm…

生成简单的Makefile文件(Python实现)

在linux下写几个测试程序,还要一行行的输入g命令进行编译,当经常改测试代码的时候,那一次次的敲(或者一次次的上线箭头选)也感觉不爽,不如make来的快。用Makefile的好处就不用多说了,这里我写了…

LeetCode 800. 相似 RGB 颜色

文章目录1. 题目2. 解题2.1 暴力枚举2.2 独立枚举1. 题目 RGB 颜色用十六进制来表示的话,每个大写字母都代表了某个从 0 到 f 的 16 进制数。 RGB 颜色 “#AABBCC” 可以简写成 “#ABC” 。例如,"#15c" 其实是 “#1155cc” 的简写。 现在&a…

mysql 图片base64_关于图片的Base64编码

什么是Base64编码Base64编码是一种图片处理格式,通过特定的算法将图片编码成一长串字符串,在页面上显示的时候,可以用该字符串来代替图片的url属性。base64编码就是长得像下面这样子的代码:thunder://QUFodHRwOi8vd3d3LmJhaWR1LmN…

LeetCode 243. 最短单词距离

文章目录1. 题目2. 解题1. 题目 给定一个单词列表和两个单词 word1 和 word2,返回列表中这两个单词之间的最短距离。 示例: 假设 words ["practice", "makes", "perfect", "coding", "makes"] 输入: word1 “…

mysql load character_mysql load data Invalid utf8mb4 character string: ”

使用mysql的 load data 导入数据到 数据库中:LOAD DATA LOCAL INFILE /tmp/2982/20200424/user.csvINTO TABLE t_user CHARACTER SET utf8mb4 FIELDS TERMINATED BY ,LINES TERMINATED BY \r\nIGNORE 1 LINES(userName, userNo, age, homeAddr)SET province 浙江省…

LeetCode 1426. 数元素(哈希set)

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 arr, 对于元素 x ,只有当 x 1 也在数组 arr 里时,才能记为 1 个数。 如果数组 arr 里有重复的数,每个重复的数单独计算。 示例 1: 输入:arr [1,2,3] …

mysql 默认page大小_MySQL innodb_page_size

原标题:MySQL innodb_page_size墨墨导读:Page是MySQL Innodb存储的最基本结构,也是Innodb磁盘管理的最小单位,了解page的一些特性,可以更容易理解MySQL。innodb_page_size作为innodb和OS交互单位。文件系统对文件的buf…