xml - 在xml中声明变量
问题描述
我在 Spring Boot 属性中定义了 spring.application.name,在 logback.xml 中写了 $ {spring.application.name:-},但它说的是 spring.application.name_IS_UNDEFINED。你知道为什么吗?
如何在 xml 中使用“主机名”之类的东西?
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%5p [${spring.zipkin.service.name:${spring.application.name:-}},%X{X-B3-TraceId:-},%X{X-B3-SpanId:-},%X{X-Span-Export:-}] aaaaaaaaaaaaaaaaaa %d{HH:mm} %-5level %logger{36} - %msg%n</Pattern>
</layout>
</appender>
<logger name="example.logback.level.grandparents" level="TRACE"/>
<logger name="example.logback.level.grandparents.parents.children" level="INFO"/>
<root level="DEBUG">
<appender-ref ref="STDOUT" />
</root>
</configuration>
我的'application.properties'
spring.application.name=elasticsearch-monitering
spring.kafka.consumer.group-id=foo
spring.kafka.consumer.auto-offset-reset=earliest
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
#elasticsearch server info
server.elasticsearch.host=my.i.p
server.elasticsearch.port=9200
解决方案
您需要至少有 3 个课程
请参见下面的示例:
应用程序属性
logback.appender.FILE-AUDIT.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss, GMT+8} - %msg%n
logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
..........
<springProperty name="fileAppenderPattern" source="logback.appender.FILE-AUDIT.ConversionPattern"/>
..........
<include resource="logback-appender-file.xml"/>
..........
</configuration>
logback-appender-文件
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>${fileAppenderPattern}</Pattern>
</layout>
</appender>
<logger name="example.logback.level.grandparents" level="TRACE"/>
<logger name="example.logback.level.grandparents.parents.children" level="INFO"/>
<root level="DEBUG">
<appender-ref ref="STDOUT" />
</root>
</configuration>
推荐阅读
- reactjs - 如何在反应打字稿中使用 getInitialProps 和 NextPageContext 在参数中声明两个“res”?
- mysql - 如何获取两个表连接数据排除mysql中一个表的一些条件数据?
- python - 如何在 Python 中为具有随机长度和字符顺序的字符串创建搜索词?
- performance - Scrapy web 抓取:如何消除解析作为瓶颈
- javascript - eventListener 总是在第一个元素上触发
- android - findFirstVisibleItemPosition() 总是返回 -1
- delphi - 如何使 GLPlane 始终具有前置摄像头方向(Delphi,GLScene)
- reactjs - 在反应中导入的 js-yaml 未按预期运行
- html - 如何确定大滚动条的宽度?
- javascript - 有没有办法在 React Native 中替换组件 onPress?