logback 实现给变量指定默认值

网友投稿 1203 2022-12-14

logback 实现给变量指定默认值

logback 实现给变量指定默认值

目录logback 实现给变量指定默认值格式是 ${变量名:-默认值}logback变量定义变量在 logback.xml 中定义变量在命令行定义变量引入properties文件变量的作用域变量的默认值变量使用

logback 实现给变量指定默认值

格式是 ${变量名:-默认值}

**光有冒号还不够,再加条短线后面才是默认值**

/logs${log.folder:-/imeth}/info.log

/logs${log.folder:-/imeth}/info.%d{yyyy-MM-dd}.log

30

${log.file.size.max:-50}MB

INFO

ACCEPT

DENY

[%d{yyyy-MM-dd HH:mm:ss}] [%thread] [%-5level] %logger{35} - %msg%n

logback变量

定义变量

在 logback.xml 中定义

在命令行定义

引入properties文件

在 logback.xml 中定义变量

...

在命令行定义变量

在命令行通过大D参数来定义

java -DHOME="/home/logstore" xxx.jar

引入properties文件

在properties文件定义变量。logback引http://入properties文件后,获得变量。

通过文件路径引入properties文件:

...

通过classpath引入properties文件:

...

properties文件的格式是 key-value 型:

HOME=/logs

变量的作用域

变量有三个作用域:

local 作用域在配置文件内有效

context 作用域的有效范围延伸至 logger context

system 作用域的范围最广,整个 JVM 内都有效

logback 在替换变量时,首先搜索 local 变量,然后搜索 context,然后搜索 system。

如何为变量指定 scope ?

/${home}/myApp.log

...

...

变量的默认值

在引用一个变量时,如果该变量未定义,需要为其指定默认值,写法是:

${变量名:-默认值}

示例

${logBase}/log.%d{yyyy-MM-dd}.log

60

%d{yy/MM/dd HH:mmhttp://:ss.SSS} %-5level %line %logger{15} - %msg %n

UTF-8

...

&http://lt;/configuration>

变量使用

使用方式:

${变量名}

示例:参见前面示例中用法

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:logback配置中变量和include的应用方式
下一篇:logback如何自定义日志存储
相关文章

 发表评论

暂时没有评论,来抢沙发吧~