SpringBoot启动时如何通过启动参数指定logback的位置
作者:wgslucky
SpringBoot启动时通过启动参数指定logback的位置
虽然springboot可以通过简单的配置使用日志系统,但是由于业务往往很复杂,对日志的多样性配置要求比较高,还是习惯于依赖于logback框架本身的配置文件。在spring boot中,使用logback配置的方式常用的有以下几种:
第一种:
- 将配置文件命名为logback-spring.xml
- 将配置文件放在项目的resouce目录,启动时会自动加载
第二种:
指定日志配置文件的具体位置,在服务启动时加载
因为使用第一种方式时,logback文件会被打包到jar包之中,没有办法根据实际的运行环境修改,解决办法是,我们将项目打包成jar包之后运行时,可以通过命令行启动参数,指定日志配置文件:
java -server -jar xinyue-game-web-gateway-0.0.1-SNAPSHOT.jar --logging.config=/home/game-cluster-server/web-gateway/config/logback.xml
这里使用–name=value的方式,它的作用是替换application.yml中的字段。
springboot logback 按 java 启动 参数 springboot指定logback路径
1.在springboot中指定启动环境有几种方式
命令行启动springboot jar包,java -jar xxx.jar 后面跟上 “--spring.profiles.active=prod”
idea “Run/debug Configration"中 "vm Option"选项添加 “-Dspring.profiles.active=prod”
“application.yml"配置文件指定当前环境 "srping.profiles.active: prod"
在资源文件夹下除了application.yml外,不同环境配置文件对应application-xxx.yml,比如dev开发环境配置logback日志文件路径为 /Users/xxx/logs ,在prod生产环境中配置日志文件路径为 /root/logs
2.logback.xml需要加载不同环境配置文件中“logback.home”变量
<!-- 读取application.yml中配置的日志文件路径,没有这一步的话取不到logback.home的值 --> <springProperty scope="context" name="LOG_HOME" source="logback.home"/>
到此这篇关于SpringBoot启动时如何通过启动参数指定logback的位置的文章就介绍到这了,更多相关SpringBoot指定logback的位置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!