簡體   English   中英

如何使用屬性文件在 log4j.xml 中設置值?

[英]How to set value in log4j.xml using property file?

我想知道是否有可能通過使用屬性文件在 log4j.xml 中設置屬性。 例如 log4j.xml:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration>
 <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
    <param name="target" value="System.out" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{ISO8601} %-5p [%c{1}] - %l - %m%n "/>
    </layout>        
</appender>
   <appender name="FILE" class="org.apache.log4j.FileAppender">
<param name="File" value="\D:\ReadText_File\log4jlogss.txt"/>
<param name="Append" value="true"/>
         <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="%d{ISO8601} %-5p [%c{1}]- %l - %m%n"/>
        </layout>
</appender>
<logger name="org.apache">
<level value="WARN"/>
</logger>
<root>
    <level value="DEBUG"/>
    <appender-ref ref="FILE"/>
    <appender-ref ref="CONSOLE"/>
    </root>
   </log4j:configuration>

我想使用屬性文件指定文件的路徑知道我們該怎么做嗎????

關於 log4j,當前版本不支持這種嵌入屬性文件的 XML 配置的配置。

詳情可以查看log4j的源碼。 XML 解析詳細信息在類 DOMConfigurator.configure 中

您可以將 Log4j LookupsPropertySubstitution一起使用:

請參閱http://logging.apache.org/log4j/2.x/manual/configuration.html#PropertySubstitutionhttp://logging.apache.org/log4j/2.x/manual/lookups.html

這是 StackOverflow 上的一個示例: Log4J2 屬性替換 - 默認(為了簡短起見,據我所知,您可以使用 System Property using -Dkey=value

您還可以嘗試使用${bundle:com.package.Messages:MyKey}語法來使用屬性文件(使用 log4j 2.0-rc1 或更高版本),請參閱https://stackoverflow.com/a/19303208/1149528

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM