簡體   English   中英

web.config轉換不適用於log4net

[英]web.config transforms not working for log4net

我有以下

<log4net debug="true"> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="D:\\projects\\Code\\log.txt" /> <appendToFile value="true" /> <rollingStyle value="Size" /> <maxSizeRollBackups value="10" /> <maximumFileSize value="10MB" /> <staticLogFileName value="true" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n" /> </layout> </appender> <root> <level value="DEBUG" /> <appender-ref ref="RollingLogFileAppender" /> </root> </log4net>

對於發行版,我想更改文件路徑,但是它似乎不起作用,這是我在web.release.config中擁有的文件

<log4net xdt:Transform="RemoveAttributes(debug)" > <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="c:\\temp.txt" xdt:Transform="Replace" xdt:Locator="Match(value)" />
</appender> </log4net>

這是結果

<log4net> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="D:\\projects\\Code\\log.txt" /> <appendToFile value="true" /> <rollingStyle value="Size" /> <maxSizeRollBackups value="10" /> <maximumFileSize value="10MB" /> <staticLogFileName value="true" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n" /> </layout> </appender> <root> <level value="DEBUG" /> <appender-ref ref="RollingLogFileAppender" /> </root> </log4net>

它應刪除調試部分,但不能修復文件路徑。

我認為您應該嘗試這樣的事情。

`<log4net>
    <appender name="InfoRollingLogFileAppender"   type="log4net.Appender.RollingFileAppender,log4net">
  <file type="log4net.Util.PatternString" value="%property{ProgramDataPath}\errorLog" />    

...

`

當您初始化記錄器時,

var path = ConfigurationManager.AppSettings["LogLocation"];
        // Directory.SetCurrentDirectory(path);
        GlobalContext.Properties["ProgramDataPath"] = path;
        XmlConfigurator.Configure();

        log = LogManager.GetLogger(typeof(Logger));

最后,只需更改LogLocation中的值即可。 希望對您有所幫助。 謝謝

暫無
暫無

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

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