2016-04-20 70 views
3

是否可以在日誌記錄返回xml中訪問spring引導的應用程序屬性。訪問logback.xml中的應用程序屬性

application.properties中

dummy.property=hello 

logback.xml

${dummy.property} 

這沒有奏效。

有沒有人知道它是否可以工作。

回答

6

如果你命名你的配置文件logback-spring.xml,而不是logback.xml,你可以使用<springProperty>從Spring的環境,包括那些在application.properties配置的訪問性能。這是described in the documentation

該標記允許您在Spring Log中使用Spring Environment中的屬性。如果你想從你的application.properties文件訪問您的logback配置值這是有用的。標籤採用類似方式的logback的標準標籤,而不是指定一個直接值指定屬性的源(來自環境)。如果你需要存儲比在本地範圍內的其他財產的地方,您可以使用scope屬性。

<springProperty scope="context" name="fluentHost" source="myapp.fluentd.host"/> 
<appender name="FLUENT" class="ch.qos.logback.more.appenders.DataFluentAppender"> 
    <remoteHost>${fluentHost}</remoteHost> 
    ... 
</appender> 
+0

正是我在找的東西。謝謝。有效 – Patan

0

按照http://logback.qos.ch/manual/configuration.html#variableSubstitution

變量可以在配置文件本身在一個時間被定義的一個或加載批發從外部屬性文件或外部資源。
...
屬性沒有在配置文件中聲明,這樣的logback將尋找它在系統性能。

的logback可以使用顯式地定義的系統特性或性質。所以,你需要告訴的logback使用application.properties文件

<property resource="application.properties" /> 
相關問題