`
youyu4
  • 浏览: 440111 次
社区版块
存档分类
最新评论

Spring Boot 之日志管理

 
阅读更多

Spring Boot 之日志管理

 

Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J, Log4J2Logback。每种Logger都可以通过配置使用控制台或者文件输出日志内容。

 

格式化日志

 

默认的日志输出如下:


 

输出内容元素具体如下:

 

      1. 时间日期 — 精确到毫秒

      2. 日志级别 — ERROR, WARN, INFO, DEBUG or TRACE

      3. 进程ID

      4. 分隔符 — --- 标识实际日志的开始

      5. 线程名 — 方括号括起来(可能会截断控制台输出)

      6. Logger名 — 通常使用源代码的类名

      7. 日志内容

 

 

 

控制台输出

 

在Spring Boot中默认配置了ERRORWARNINFO级别的日志输出到控制台。

 

我们可以通过两种方式切换至DEBUG级别:

 

      1. 在运行命令后加入--debug标志,如:$ java -jar myapp.jar --debug

 

      2. 在application.properties中配置debug=true,该属性置为true的时候,核心Logger(包含嵌入式容器、hibernate、spring)会输出更多内容,但是你自己应用的日志并不会输出为DEBUG级别。

 

多彩输出

 

如果你的终端支持ANSI,设置彩色输出会让日志更具可读性。通过在application.properties中设置spring.output.ansi.enabled参数来支持。

 

      1. NEVER:禁用ANSI-colored输出(默认项)

      2. DETECT:会检查终端是否支持ANSI,是的话就采用彩色输出(推荐项)

      3. ALWAYS:总是使用ANSI-colored格式输出,若终端不支持的时候,会有很多干扰信息,不推荐使用

 

 

 

文件输出

 

Spring Boot默认配置只会输出到控制台,并不会记录到文件中,但是我们通常生产环境使用时都需要以文件方式记录。

 

若要增加文件输出,需要在application.properties中配置logging.filelogging.path属性。

 

      1. logging.file,设置文件,可以是绝对路径,也可以是相对路径。如:logging.file=my.log

      2. logging.path,设置目录,会在该目录下创建spring.log文件,并写入日志内容,如:logging.path=/var/log

 

日志文件会在10Mb大小的时候被截断,产生新的日志文件,默认级别为:ERROR、WARN、INFO

 

 

 

级别控制

 

在Spring Boot中只需要在application.properties中进行配置完成日志记录的级别控制。

 

配置格式:logging.level.*=LEVEL

 

      1. logging.level:日志级别控制前缀,*为包名或Logger名

      2. LEVEL:选项TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF

 

举例:

 

      1. logging.level.com.didispace=DEBUG:com.didispace包下所有class以DEBUG级别输出

      2. logging.level.root=WARN:root日志以WARN级别输出

 

 

 

自定义日志配置

 

由于日志服务一般都在ApplicationContext创建前就初始化了,它并不是必须通过Spring的配置文件控制。因此通过系统属性和传统的Spring Boot外部配置文件依然可以很好的支持日志控制和管理。

 

根据不同的日志系统,你可以按如下规则组织配置文件名,就能被正确加载:

 

      1. Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy

      2. Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml

      3. Log4j2:log4j2-spring.xml, log4j2.xml

      4. JDK (Java Util Logging):logging.properties

 

Spring Boot官方推荐优先使用带有-spring的文件名作为你的日志配置(如使用logback-spring.xml,而不是logback.xml)

 

 

 

自定义输出格式

 

在Spring Boot中可以通过在application.properties配置如下参数控制输出格式:

 

      1. logging.pattern.console:定义输出到控制台的样式(不支持JDK Logger)

 

      2. logging.pattern.file:定义输出到文件的样式(不支持JDK Logger)

 

 

 

参考:

http://blog.didispace.com/categories/Spring-Boot/page/2/

  • 大小: 8.1 KB
分享到:
评论

相关推荐

    spring boot资料以及项目

    同时,Spring Boot与Spring Security的整合能帮助你快速实现应用的安全控制,如登录认证、权限管理。 实际项目部分,你可以通过代码学习Spring Boot如何应用于实际业务场景。这可能包括CRUD操作、用户管理、支付...

    spring boot 魔性日志

    将文件添加到resource 目录下,然后启动spring boot,会有另一番体验

    Spring Boot整合Spring Batch,实现批处理

    Spring Boot以其简洁的配置和快速的启动能力深受开发者喜爱,而Spring Batch作为Spring框架的一部分,专注于批量处理任务,提供了强大的数据处理能力和事务管理功能。下面我们将深入探讨这个主题。 首先,**Spring ...

    最新Spring Boot Admin 官方参考指南-中文版-2.x

    Spring Boot Admin的用户界面是一个建立在Spring Boot Actuator端点上的Vue.js应用程序,这使得它能够方便地展示和管理Spring Boot应用的健康状态、日志、环境变量等信息。 在开始使用Spring Boot Admin之前,你...

    Spring Boot实战派(源码)

    《Spring Boot实战派》源码提供了丰富的学习材料,旨在帮助开发者深入理解并熟练掌握Spring Boot这一流行的Java后端开发框架。Spring Boot简化了Spring应用程序的初始设置和配置,使得开发人员能够快速构建可运行的...

    基于spring boot的后台管理系统(java源码+数据库完整版)

    标题中的“基于Spring Boot的后台管理系统”是一个使用Spring Boot框架构建的企业级应用示例,它提供了对后端业务逻辑的管理功能。Spring Boot是Spring框架的一个扩展,旨在简化新Spring应用的初始搭建以及开发过程...

    Spring-Boot-Reference-Guide, Spring Boot Reference Guide中文翻译 -《Spring Boot参考指南》.zip

    《Spring Boot参考指南》是Spring Boot开发者的重要参考资料,它详细阐述了Spring Boot框架的核心特性、配置方式、自动配置原理以及如何构建微服务应用等关键知识点。Spring Boot是Java开发领域中一个极其流行的轻量...

    Spring Boot 2 Cookbook 第二版

    最后,你将学习到如何监控和管理Spring Boot应用,例如使用Actuator提供的健康检查、指标收集、审计日志等功能。 总的来说,《Spring Boot 2 Cookbook 第二版》是一本全面而实用的参考书,无论你是初学者还是有经验...

    spring boot管理系统后台

    【Spring Boot管理后台系统详解】 Spring Boot是一种基于Java的快速开发框架,旨在简化Spring应用程序的初始设置和常规配置。这个“spring boot管理系统后台”项目利用了Spring Boot的强大功能,为后台管理提供了一...

    Spring Boot 2.X 实战教程.pdf

    本课程内容包括Spring简介、Spring Boot简介、安装JDK、安装Maven、第一个Spring Boot程序(使用Spring Initializr构建、Spring Boot代码讲解、安装Notepad++)、构建系统、代码、配置、三种方式运行程序、安装...

    spring boot 相关技术

    5. **故障排查与日志分析**:提供关于如何调试和分析 Spring Boot 应用的技巧,以及日志管理和分析工具的使用。 6. **微服务治理**:讨论服务治理的相关概念,如熔断、限流、降级策略,以及 Spring Cloud Gateway ...

    Spring cloud spring boot spring boot admin

    Spring Cloud是基于Spring Boot构建的一套微服务治理框架,它为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群状态)操作...

    Spring Boot-实战

    6. **Actuator**:讲解如何使用Spring Boot Actuator进行应用监控,包括健康检查、指标收集、审计日志和端点安全。 7. **测试**:涵盖单元测试、集成测试的策略,以及Spring Boot提供的测试支持,如@Test标签和...

    Spring Boot 教程、技术栈示例代码,快速简单上手教程。

    Spring Boot 默认使用 Logback 作为日志系统,同时支持 Log4j2。Actuator 提供了监控应用的端点,如 `/health`、`/metrics` 等。 总之,Spring Boot 以其简洁的配置、快速的开发体验,成为了现代 Java 开发中的热门...

    基于Spring Boot和Elasticsearch的日志管理系统.zip

    基于Spring Boot和Elasticsearch的日志管理系统 项目简介 本项目是一个基于Spring Boot框架和Elasticsearch数据库的日志管理系统。它集成了ELK(Elasticsearch、Logstash、Kibana)技术栈,用于日志的收集、存储...

    Spring+Boot实战

    同时,Spring Boot对Actuator模块的介绍,将让读者了解到如何监控和管理运行中的应用,包括健康检查、指标收集、日志管理和端点安全控制。 微服务架构方面,Spring Boot提供了构建分布式系统的能力,如服务发现、...

    spring-boot-2.7.0.zip源码

    5. **Actuator模块**:Spring Boot Actuator提供了丰富的监控和管理端点,帮助开发者了解应用的健康状况、日志、指标等。源码中,这些端点由`Endpoint`接口定义,可以通过HTTP、JMX等方式访问。 6. **条件注解**:...

    基于Spring Boot的博客管理系统.zip

    基于Spring Boot的博客管理系统 欢迎使用基于Spring Boot的博客管理系统!本项目旨在提供一个功能齐全、易于扩展的博客平台,支持文章管理、分类、标签、用户管理等多种功能。 功能概览 核心功能 文章管理...

    后台管理源码spring boot版.rar

    【标题】"后台管理源码spring boot版.rar" 指的是一个基于Spring Boot框架的后台管理系统源代码压缩包。Spring Boot是Java生态系统中的一个核心框架,它简化了创建独立的、生产级别的基于Spring的应用程序的过程。这...

Global site tag (gtag.js) - Google Analytics