热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

springboot2.1版本使用logback日志(自己已经验证)

https:blog.csdn.netweixin_40593587articledetails86622009版权声明:本文为博主原创文章,遵循CC4

https://blog.csdn.net/weixin_40593587/article/details/86622009

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_40593587/article/details/86622009

昨天找了很多的logback的博客发现写的都是很旧的版本根本就用不了,今天自己测试了出来了;下面开始代码:


pom文件如下:

  1. xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns&#61;"http://maven.apache.org/POM/4.0.0" xmlns:xsi&#61;"http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation&#61;"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4. <modelVersion>4.0.0modelVersion>
  5. <parent>
  6. <groupId>org.springframework.bootgroupId>
  7. <artifactId>spring-boot-starter-parentartifactId>
  8. <version>2.1.2.RELEASEversion>
  9. <relativePath/>
  10. parent>
  11. <groupId>com.example.phonegroupId>
  12. <artifactId>demoartifactId>
  13. <version>0.0.1-SNAPSHOTversion>
  14. <name>demoname>
  15. <description>Demo project for Spring Bootdescription>
  16. <properties>
  17. <java.version>1.8java.version>
  18. properties>
  19. <dependencies>
  20. <dependency>
  21. <groupId>org.springframework.bootgroupId>
  22. <artifactId>spring-boot-starter-webartifactId>
  23. dependency>
  24. <dependency>
  25. <groupId>org.springframework.bootgroupId>
  26. <artifactId>spring-boot-starter-freemarkerartifactId>
  27. dependency>
  28. <dependency>
  29. <groupId>org.mybatis.spring.bootgroupId>
  30. <artifactId>mybatis-spring-boot-starterartifactId>
  31. <version>1.3.2version>
  32. dependency>
  33. <dependency>
  34. <groupId>com.alibabagroupId>
  35. <artifactId>fastjsonartifactId>
  36. <version>1.2.46version>
  37. dependency>
  38. <dependency>
  39. <groupId>mysqlgroupId>
  40. <artifactId>mysql-connector-javaartifactId>
  41. <scope>runtimescope>
  42. dependency>
  43. <dependency>
  44. <groupId>org.springframework.bootgroupId>
  45. <artifactId>spring-boot-starter-testartifactId>
  46. <scope>testscope>
  47. dependency>
  48. dependencies>
  49. <build>
  50. <plugins>
  51. <plugin>
  52. <groupId>org.springframework.bootgroupId>
  53. <artifactId>spring-boot-maven-pluginartifactId>
  54. plugin>
  55. plugins>
  56. build>
  57. project>

接下来我们需要在resources目录下建立一个xml文件&#xff0c;就叫做logback-spring.xml;为什么要起这个名字呢&#xff0c;因为起这个名字springboot2.1会自己去找该文件&#xff0c;里面内容如下&#xff1a;

  1. xml version&#61;"1.0" encoding&#61;"UTF-8" ?>
  2. <configuration>
  3. <appender name&#61;"consoleApp" class&#61;"ch.qos.logback.core.ConsoleAppender">
  4. <layout class&#61;"ch.qos.logback.classic.PatternLayout">
  5. <pattern>
  6. %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
  7. pattern>
  8. layout>
  9. appender>
  10. <appender name&#61;"fileInfoApp" class&#61;"ch.qos.logback.core.rolling.RollingFileAppender">
  11. <filter class&#61;"ch.qos.logback.classic.filter.LevelFilter">
  12. <level>ERRORlevel>
  13. <onMatch>DENYonMatch>
  14. <onMismatch>ACCEPTonMismatch>
  15. filter>
  16. <encoder>
  17. <pattern>
  18. %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
  19. pattern>
  20. encoder>
  21. <rollingPolicy class&#61;"ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  22. <fileNamePattern>app_log/log/app.info.%d.logfileNamePattern>
  23. rollingPolicy>
  24. appender>
  25. <appender name&#61;"fileErrorApp" class&#61;"ch.qos.logback.core.rolling.RollingFileAppender">
  26. <filter class&#61;"ch.qos.logback.classic.filter.ThresholdFilter">
  27. <level>ERRORlevel>
  28. filter>
  29. <encoder>
  30. <pattern>
  31. %date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg%n
  32. pattern>
  33. encoder>
  34. <rollingPolicy class&#61;"ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  35. <fileNamePattern>app_log/log/app.err.%d.logfileNamePattern>
  36. <MaxHistory>1MaxHistory>
  37. rollingPolicy>
  38. appender>
  39. <root level&#61;"INFO">
  40. <appender-ref ref&#61;"consoleApp"/>
  41. <appender-ref ref&#61;"fileInfoApp"/>
  42. <appender-ref ref&#61;"fileErrorApp"/>
  43. root>
  44. configuration>

这样子就可以了&#xff0c;这样我们在控制器就可以使用了&#xff1a;

import org.slf4j.LoggerFactory;、//注意导包的时候是导进去这个包&#xff1b;

private org.slf4j.Logger logger&#61;LoggerFactory.getLogger(this.getClass());

调用接口如下&#xff1a;

  1. &#64;RequestMapping("/addInformation")
  2. public Map addUser(&#64;RequestBody Information information) {
  3. System.out.println("开始新增...");
  4. System.out.println(information);
  5. System.out.println(information.getImei());
  6. System.out.println(information.getKey());
  7. boolean flag&#61; informationService.addInformation(information);
  8. // return flag;
  9. logger.info(" i am info");
  10. logger.error("i am error");
  11. logger.warn(" i am warn");
  12. logger.debug(" i am debug");
  13. return jsonCommon.SucessRequest();

接下来访问的时候就会显示

 并会将info和error的信息打印到了我们指定的文件中&#xff0c;文件是自动生成的&#xff1a;我们在logback-spring.xml中配置了error的信息放在了

app_log/log/app.err.%d.log这个文件&#xff0c;info的信息会放在这个文件

app_log/log/app.info.%d.log

访问接口的时候就会自动生成这些目录和文件&#xff1b;目录如下所示&#xff1a;

 

 

 

运行访问成功。

 


推荐阅读
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • mysql-cluster集群sql节点高可用keepalived的故障处理过程
    本文描述了mysql-cluster集群sql节点高可用keepalived的故障处理过程,包括故障发生时间、故障描述、故障分析等内容。根据keepalived的日志分析,发现bogus VRRP packet received on eth0 !!!等错误信息,进而导致vip地址失效,使得mysql-cluster的api无法访问。针对这个问题,本文提供了相应的解决方案。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • 基于Socket的多个客户端之间的聊天功能实现方法
    本文介绍了基于Socket的多个客户端之间实现聊天功能的方法,包括服务器端的实现和客户端的实现。服务器端通过每个用户的输出流向特定用户发送消息,而客户端通过输入流接收消息。同时,还介绍了相关的实体类和Socket的基本概念。 ... [详细]
  • 使用eclipse创建一个Java项目的步骤
    本文介绍了使用eclipse创建一个Java项目的步骤,包括启动eclipse、选择New Project命令、在对话框中输入项目名称等。同时还介绍了Java Settings对话框中的一些选项,以及如何修改Java程序的输出目录。 ... [详细]
  • Android系统移植与调试之如何修改Android设备状态条上音量加减键在横竖屏切换的时候的显示于隐藏
    本文介绍了如何修改Android设备状态条上音量加减键在横竖屏切换时的显示与隐藏。通过修改系统文件system_bar.xml实现了该功能,并分享了解决思路和经验。 ... [详细]
  • PHPMailer邮件类邮件发送功能的使用教学及注意事项
    本文介绍了使用国外开源码PHPMailer邮件类实现邮件发送功能的简单教学,同时提供了一些注意事项。文章涵盖了字符集设置、发送HTML格式邮件、群发邮件以及避免类的重定义等方面的内容。此外,还提供了一些与PHP相关的资源和服务,如传奇手游游戏源码下载、vscode字体调整、数据恢复、Ubuntu实验环境搭建、北京爬虫市场、进阶PHP和SEO人员需注意的内容。 ... [详细]
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 本文介绍了一种轻巧方便的工具——集算器,通过使用集算器可以将文本日志变成结构化数据,然后可以使用SQL式查询。集算器利用集算语言的优点,将日志内容结构化为数据表结构,SPL支持直接对结构化的文件进行SQL查询,不再需要安装配置第三方数据库软件。本文还详细介绍了具体的实施过程。 ... [详细]
author-avatar
Cindere丷lla_茹满
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有