我已經爲我的應用程序實現了記錄器,並且我想在.NET Core Console Application上以XML格式(XmlLayout)記錄活動。 Log4Net配置包括FileAppender和XmlFileAppender,如下所示。Log4Net Layout.XmlLayout不會在.NET核心平臺中創建日誌
<log4net>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C:\Log4NetLogs\UaGatewayText.log.txt"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date{dd.MM.yyyy}] [%date{ABSOLUTE}] [%thread]
%level %property{TEST - Ua.Gateway} %message%newline" />
</layout>
</appender>
<appender name="ConsolAppender"
type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%dae{DATE}] [%date{ABSOLUTE}] [%thread]
[%level] %message%newline" />
</layout>
</appender>
<appender name="XmlFileAppender"
type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString"
value="C:\Log4NetLogs\UaGatewayXml.log.xml" />
<appendToFile value= "true" />
<rollingStyle value="size"/>
<maximumFileSize value ="50MB"/>
<maxSizeRollBackups value ="10"/>
<layout type="log4net.Layout.XmlLayout" />
</appender>
<root>
<level value="ALL" />
<appender-ref ref="FileAppender" />
<appender-ref ref="XmlFileAppender" />
</root>
</log4net>
在.NET核心控制檯應用程序,XmlAppender在目錄中創建UaGatewayXml.log.xml文件,不寫任何日誌。但是,它對FileAppender非常有用。
對於XmlFileAppender和FileAppender,上述配置對.NET Framework(4.5。*)均按預期工作。
我必須在配置文件中進行任何更改嗎? 由於
你有[看了一下log4net的調試輸出(http://haacked.com/archive/2006/09/27/Log4Net_Troubleshooting.aspx /)? – stuartd
我以前見過。 .NET Core項目不包含App.config文件,所以我不能這樣做。 – JayeshThamke
這只是一種啓用調試的方法 - 您也可以在log4net配置中使用',或者您可以在代碼中使用'log4net.Util.LogLog.InternalDebugging = true;' –
stuartd