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引入properties文件后,获得变量。
通过文件路径引入properties文件:
...
通过classpath引入properties文件:
...
properties文件的格式是 key-value 型:
HOME=/logs
变量的作用域
变量有三个作用域:
local
作用域在配置文件内有效context
作用域的有效范围延伸至 logger contextsystem
作用域的范围最广,整个 JVM 内都有效logback
在替换变量时,首先搜索 local 变量,然后搜索 context,然后搜索 system。
【logback|logback 实现给变量指定默认值】 /${home}/myApp.log ......
变量的默认值
在引用一个变量时,如果该变量未定义,需要为其指定默认值,写法是:
${变量名:-默认值}示例:
${logBase}/log.%d{yyyy-MM-dd}.log 60 %d{yy/MM/dd HH:mm:ss.SSS} %-5level %line %logger{15} - %msg %n ...UTF-8
变量使用
使用方式:
${变量名}示例:参见前面示例中用法。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
推荐阅读
- 喂,你结婚我给你随了个红包
- 成交的种子咖啡冥想
- 一百二十三夜,请嫁给我
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- MybatisPlus使用queryWrapper如何实现复杂查询
- python学习之|python学习之 实现QQ自动发送消息
- 每日一话(49)——一位清华教授在朋友圈给大学生的9条建议
- 孩子不是实现父母欲望的工具——林哈夫
- 历史教学书籍
- opencv|opencv C++模板匹配的简单实现