Spring日志

Spring日志的作用:

1.定位和发现问题
2.系统监控
3.数据采集

4.日志审计
 

打印日志步骤:
1.定义日志对象2.打印日志


@RestController
public class LoggerController {


    private static Logger  logger= LoggerFactory.getLogger(LoggerController.class);

    @PostConstruct
    public void print(){

        System.out.println("打印日志");
        logger.info("日志框架****************88");
    }
}

其显示地方与平常打印的地方有很大差别

上述红色字就代表了其的具体信息,日志对象的名称,可能为缩写。通常情况下,是当前类

Spring 默认的日志级别是info
可以在配置中去控制日志级别

门面模式(外观模式)
slf4j是门面模式的典型的应用.

日志框架: SLF4J
他不是一个真实的日志框架,只是一个日志框架的代表(门面模式)框架里面的具体内容是由log4j/log4j2/logback/jul实现的。

SLF4J提供了一个简单的、统一的API,用于在Java应用程序中进行日志记录。它允许开发人员使用统一的代码编写日志记录语句,而不需要关心底层日志框架的具体实现。SLF4J充当了一个门面(Facade),隐藏了底层日志框架(如Logback、Log4j、java.util.logging等)的细节,使得开发人员可以在不改变代码的情况下轻松地切换和配置不同的日志实现。

SLF4J的设计符合门面模式的核心思想:提供一个简单的接口,隐藏底层复杂性。通过SLF4J,开发人员可以在应用程序中使用统一的日志API,而不需要关心具体的日志实现,这样就降低了应用程序的耦合度,并且使得日志记录变得更加灵活和易于管理。因此,SLF4J被认为是门面模式在Java日志记录领域的典型应用。

日志持久化
数据保存在数据库中,是一种持久化的方式

曰志保存在文件中,也是一种持久化的方式

日志保存到文件中的话可以用相对路径,也可以使用绝对路径

name既可以设置路径,又可以设置名称path只能设置路径,默认名称是: spring.log

如果二者同时存在, path 就失效了
name的优先级要高于path
 

logging:
  file:
#    name: logger/ioc.log
     path: logger1

日志文件分割的名称定义规则日志最大文件

logging: 
 logback:
    rollingpolicy:
      max-file-size: 1KB

不是达到1KB就立刻进行分割的以行来分割,不是以字符分割的


企业中,通常日志分割大小为200M或者500M

         

修改控制台日志格式
 

logging: 
 pattern:
    console: "%d{HH : mm : ss.SSS} %c %H %L[%thread]%m%n"

修改日志格式

logging:
  pattern:
    file: "%d{HH : mm : ss.SSS} %c %H %L [%thread] %m%n"

加上@slfj4注解

在类中打印日志不用重复写写log对象的创建,之后会自动进行创建一个log对象来书写日志

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Dos慢速攻击

这里写自定义目录标题 Dos慢速攻击 Dos慢速攻击 测试结果为“Exit status: No open connections left",代表无此漏洞。 如果测试结束后connected数量较多,closed数量很少或0,说明之前建立的慢速攻击测试连接没有关闭&#…

最佳三款员工电脑行为监控软件评选

企业对员工生产力和数据安全的关注不断增加,员工电脑行为监控软件成为了许多企业不可或缺的工具。 这些软件不仅可以帮助企业管理者实时监测员工的电脑使用情况,还可以防止数据泄露和滥用公司资源。 然而,市面上有数不胜数的员工电脑行为监控…

【前端缓存】localStorage是同步还是异步的?为什么?

写在开头 点赞 收藏 学会 首先明确一点,localStorage是同步的 一、首先为什么会有这样的问题 localStorage 是 Web Storage API 的一部分,它提供了一种存储键值对的机制。localStorage 的数据是持久存储在用户的硬盘上的,而不是内存。这意…

海外盲盒APP开发:探索海外盲盒市场的商机

随着娱乐消费的流行,盲盒在我国可以说是非常火热,消费群体和市场规模逐年增加。在盲盒热潮下,不少潮玩企业也纷纷加入到了盲盒赛道中,市场竞争非常激烈! 此外,我国盲盒出海也成为了一个大趋势。盲盒不仅在…

如何用 Llama 3 免费本地 AI 分析数据和可视化?

帮助你消除调用大模型 API 带来的数据安全烦恼。 模型 今天我们来探讨一个有趣的话题 —— 如何使用 Llama 3 免费地进行数据分析和可视化。 Meta 团队在 2024 年 4 月发布了两款 Llama 3 新模型,一款是 8B,即 80 亿参数;另一款则是 70B&…

鸿蒙arkui 也支持热重载了 我不允许你不会

历史背景 因为鸿蒙出的ark ui 很多人说很像flutter,但是能不能做到跟flutter一样支持热重载呢 。答案是可以的 我们喜就教大家如何操作。 构建工程 选择这个空的模版 next finish 点击file 找到setting 找到 Tools Actions on Save 我们把 Perform hor reload 勾上…

说说你对二分查找的理解?如何实现?应用场景?

一、是什么 在计算机科学中,二分查找算法,也称折半搜索算法,是一种在有序数组中查找某一特定元素的搜索算法 想要应用二分查找法,则这一堆数应有如下特性: 存储在数组中有序排序 搜索过程从数组的中间元素开始&…

招商画册不会制作?这个教程收藏好

在制作招商画册过程中可能对于一些小型企业或刚刚起步的企业来说,招商画册的制作也不是一个难以克服的难题。本文将为您提供一些制作招商画册的技巧和建议。在制作招商画册前肯定是需要选择一款合适的在线制作工具,如FLBOOK 这个平台本就有海量的模板和设…

vue快速入门(四十四)自定义组件

注释很详细,直接上代码 上一篇 新增内容 全局注册自定义组件并应用局部注册自定义组件并应用 此篇使用了axios模块没有安装导入的先看这一篇 axios模块下载与导入 源码 main.js import Vue from vue import App from ./App.vue//全局引入axios // 引入axios impor…

超市火灾烟雾蔓延及人员疏散的matlab模拟仿真,带GUI界面

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 出口在人员的视野范围内时,该元胞选择朝向引导点的方向运动。出口不在人员的视野范围内时,作随机运动,8个方向的运动概率相等。…

网工交换基础——Qinq技术

一、Qinq的概述 QinQ(802.1Q-in-802.1Q),也叫做VLAN Stacking或Double VLAN,由IEEE 802.1ad标准定义,是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的Tag来达到扩展VLAN空间的目…

Linux驱动开发——(六)按键中断实验

目录 一、简介 二、修改设备树 2.1 添加pinctrl节点 2.2 添加KEY设备节点 2.3 检查是否被其他外设使用 三、代码 3.1 驱动代码 3.2 测试代码 3.3 平台测试 一、简介 以I.MX6U-MINI为例,实现KEY0按下后,设备识别到并将数据发送到平台。 二、修…

40-数组 _ 数组越界

40-1 数组的下标是有范围限制的 数组的下标规定是从0开始的,如果数组有n个元素,最后一个元素的下标就是n-1。所以数组的下标如果小于0,或者大于n-1,就是数组越界访问了,超出了数组合法空间的访问。 C语言本身不做数组…

VUE2版本的仿微信通讯录侧滑列表

<template><!-- Vue模板部分 --><div><div v-for"(group, index) in groupedArray" :key"index" ref"indexcatch"><h2>{{ letter[index] }}</h2><ul><li v-for"item in group" :key&quo…

python基础--文件操作

目标 文件操作的作用文件的基本操作 打开读写关闭 文件备份文件和文件夹的操作 一. 文件操作的作用 思考&#xff1a;什么是文件&#xff1f; 思考&#xff1a;文件操作包含什么&#xff1f; 答&#xff1a;打开、关闭、读、写、复制… 思考&#xff1a;文件操作的的作用…

聚类分析字符串数组

聚类分析字符串数组 对多个字符串进行聚类分析旨在根据它们之间的相似度将这些字符串划分成若干个类别&#xff0c;使得同一类别内的字符串彼此相似度高&#xff0c;而不同类别间的字符串相似度低 小结 数据要清洗。清洗的足够准确&#xff0c;可能不需要用聚类分析了数据要…

45. 【Android教程】内容提供者 - Content Provider

本节学习最后一个 Android 组件——内容提供者。顾名思义&#xff0c;它可以用来给其他的 App 提供各种内容&#xff0c;比如 Android 自带的短信、联系人、日历等等都是一个普通的 App&#xff0c;当你需要这些内容的时候&#xff0c;就可以向它们的 Content Provider 发起请求…

C/C++ 入门(7)vector类(STL)

个人主页&#xff1a;仍有未知等待探索-CSDN博客 专题分栏&#xff1a;C 请多多指教&#xff01; 目录 一、标准库中的vector 1、了解 2、vector常用接口 二、vector的实现 1、框架 2、构造、析构函数 3、操作函数 三 、问题 1、由于赋值而引起的浅拷贝 2、因为类没…

【linux】多路径|Multipath I/O 技术

目录 简略 详细 什么是多路径? Multipath安装与使用 安装 使用 Linux下multipath软件介绍 附录 配置文件说明 其他解 简略 略 详细 什么是多路径? 普通的电脑主机都是一个硬盘挂接到一个总线上&#xff0c;这里是一对一的关系。 而到了分布式环境&#xff0c;主机和存储网络连…

普冉PY32F071单片机简单介绍,QFN64 48封装,支持 8 * 36 / 4 * 40 LCD

PY32F071单片机是一款基于32 位 ARM Cortex - M0内核的微控制器&#xff0c;由普冉半导体推出。PY32F071可广泛应用于各种嵌入式系统中&#xff0c;包括消费类电子产品、工业自动化、医疗设备等领域。PY32F071系列单片机具有低功耗、高性能和丰富的外设接口等特点&#xff0c;适…