日志技术-Logback

2023-09-15 12:45:57

日志技术

  • 将系统执行的信息,方便的记录到指定位置(控制台、文件、数据库)
  • 可以随时以开关的形式开关日志,无需入侵到源代码去修改
    在这里插入图片描述
    日志接口:设计日志框架的统一标准
    注:有人对JCL接口不满意,就有了SLF4J。有人对log4j性能不满意,就有了LogBack,LogBack是基于SLF4J开发的

依赖:

下载:下载时注意不同版本JDK不同
在这里插入图片描述

  • logback-classic-1.3.8.jar
  • logback-core-1.3.8.jar
  • slf4j-api-2.0.3.jar

配置文件 logback.xml(src下)

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- CONSOLE :表示当前的日志信息是可以输出到控制台的 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <!--输出流对象 默认 System.out 改为 System.err  其中err:控制台输出日志为红色,而out为黑色-->
        <target>System.out</target>
        <encoder>
            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %msg:日志消息,%n是换行符-->
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %c [%thread] : %msg%n</pattern>
        </encoder>
    </appender>

    <!-- File:表示当前的日志信息是可以输出到文件的 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
            <charset>utf-8</charset>
        </encoder>
        <!--日志输出路径(output.log是文档名,下方还有一处文件名(不用写.log))-->
        <file>D:/output.log</file>
        <!--指定日志文件拆分和压缩规则(防止文件过大)-->
        <rollingPolicy
                class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!--通过指定压缩文件名称,来确定分割文件方式-->
            <fileNamePattern>D:/output-%d{yyyy-MMdd}.log%i.gz</fileNamePattern>
            <maxFileSize>1MB</maxFileSize> <!--文件拆分大小-->
        </rollingPolicy>
    </appender>

    <!--
    level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALLOFF (关掉), 默认debug(可忽略大小写)
    <root>可以包含零个或多个<appender-ref>元素,标识这个输出位置将会被本日志级别控制。
    -->
    <root level="INFO"> <!--打印规则:只打印不低于当前级别的日志-->
        <appender-ref ref="CONSOLE"/> <!--如果这个地方不配置关联打印的位置,改位置将不会记录日志-->
        <appender-ref ref="FILE"/>
    </root>
</configuration>

使用

public class Test {

    public static  final Logger LOGGER=LoggerFactory.getLogger(Test.class);
    public static void main(String[] args) {
            LOGGER.info("11111111");
            try {
                LOGGER.debug("debug");
                LOGGER.warn("warn");
            int i=1/0;


            }catch (Exception e){
            LOGGER.error("测试");
            }
    }
}
更多推荐

Python工程师Java之路(p)Maven聚合和继承

文章目录依赖管理依赖传递可选依赖和排除依赖继承与聚合依赖管理指当前项目运行所需的jar,一个项目可以设置多个依赖<!--设置当前项目所依赖的所有jar--><dependencies><!--设置具体的依赖--><dependency><!--依赖所属群组id--><groupId>org.springframewor

Java中ArrayList 和 LinkedList 的区别

ArrayList和LinkedList都是Java中常见的集合类,它们用于存储和操作数据。它们之间的主要区别在于其底层数据结构和性能特征:底层数据结构:ArrayList使用动态数组作为其底层数据结构。动态数组的容量会根据需要自动扩展。LinkedList使用双向链表作为其底层数据结构。每个元素都包含对前一个和后一个

【基础篇】四、SpringBoot整合第三方技术

文章目录1、SpringBoot整合Junit2、SpringBoot整合MyBatis3、SpringBoot整合MyBatisPlus4、SpringBoot整合Druid1、SpringBoot整合Junit步骤:导入测试对应的starter测试类使用@SpringBootTest修饰使用自动装配的形式添加要测试

Hexo在多台电脑上提交和更新

文章目录1.博客搭建2.创建一个新文件夹new,用于上传hexo博客目录3.github上创建hexo分支并设置为默认分支创建hexo分支将hexo分支设置为默认分支4.进入新建的文件夹中gitclone,再上传相关文件至hexo分支1.clone下来的文件夹内应该有个.gitignore文件,用来忽略一些不需要的文件

Docker安装ElasticSearch/ES 7.10.0

目录前言安装ElasticSearch/ES安装步骤1:准备1.安装docker2.搜索可以使用的镜像。3.也可从dockerhub上搜索镜像。4.选择合适的redis镜像。安装步骤2:拉取ElasticSearch镜像1拉取镜像2查看已拉取的镜像安装步骤3:创建容器创建容器方式1:快速创建容器安装步骤4:运行容器安装

ELT in ByteHouse 实践与展望

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群谈到数据仓库,一定离不开使用Extract-Transform-Load(ETL)或Extract-Load-Transform(ELT)。将来源不同、格式各异的数据提取到数据仓库中,并进行处理加工。传统的数据转换过程一般采用Extra

活动报名 | Modern Data Stack Meetup 北京首站启动!与三大开源社区共同探索现代数据栈的最佳实践

相信对于“现代数据堆栈(ModernDataStack)”这个名词,大家早已不陌生。但若问及其真正含义,往往又很难快速、准确地阐明。事实上,对于我们的团队组织而言,吃透并灵活应用“现代数据栈”所能带来的价值与收益,将会是深远且符合发展趋势的。Q1:什么是现代数据堆栈?现代数据堆栈的流行伴随着云计算和云数据仓库的崛起,本

【算法基础】数学知识

质数质数的判定866.试除法判定质数-AcWing题库时间复杂度是logN#include<bits/stdc++.h>usingnamespacestd;intn;boolisprime(intx){if(x<2)returnfalse;for(inti=2;i<=x/i;i++){if(x%i==0)returnf

华为云云耀云服务器L实例评测|部署前后端分离项目

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉🍎个人主页:Leo的博客💞当前专栏:学习测评✨特色专栏:MySQL学习🥭本文内容:华为云云耀云服务器L实例评测|部署前后端分离项目🖥️个人小站:个人博客,欢迎大家访问📚个人知识库:Leo知识库,欢迎大家访问大家好,我是

华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 STREAM 深度测评华为云云耀云服务器L实例的内存性能

本文收录在专栏:#云计算入门与实践-华为云专栏中,本系列博文还在更新中相关华为云云耀云服务器L实例评测文章列表如下:华为云云耀云服务器L实例评测|从零开始:云耀云服务器L实例的全面使用解析指南华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于Geekbench深度测评华为云云耀云服务器L实例的处理器性能华为云云耀

【2023研电赛】西北赛区商业计划书赛道二等奖:“越光宝盒”-基于LoRa多跳网络的户外信息共享系统

本文为2023年第十八届中国研究生电子设计竞赛西北赛区商业计划书赛道二等奖分享,参加极术社区的【有奖活动】分享2023研电赛作品扩大影响力,更有丰富电子礼品等你来领!,分享2023研电赛作品扩大影响力,更有丰富电子礼品等你来领!“越光宝盒”-基于LoRa多跳网络的户外信息共享系统参赛单位:西安邮电大学指导老师:姚引娣参

热文推荐