【问题标题】:Declare variables in xml在xml中声明变量
【发布时间】:2018-10-16 01:29:44
【问题描述】:

我在 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

【问题讨论】:

  • 向我们展示您的logback.xml
  • 我添加了它。 :) 如何更改零件? $ {spring.zipkin.service.name: $ {spring.application.name:-}}
  • 也显示ur application.properties
  • 我添加了它。 :) 谢谢你的帮助。

标签: xml spring spring-boot


【解决方案1】:

你需要至少有 3 个班级

请看下面的例子:

application.properties

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-file

<?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>

【讨论】:

    猜你喜欢
    • 2016-07-30
    • 1970-01-01
    • 2014-04-10
    • 2013-03-24
    • 2011-12-18
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多