在下面的app.config中使用log4net和我的XML配置时,我遇到登录文件的问题。日志文件没有出现在文件系统上,因此可能出现了问题,但我无法弄清楚它可能是什么。
代码和配置如下所示。
的App.config
</configSections>
<log4net>
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<!-- Pattern to output the caller's file name and line number -->
<conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
</layout>
</appender>
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="example.log" />
<appendToFile value="true" />
<maximumFileSize value="100KB" />
<maxSizeRollBackups value="2" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %thread %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="Console" />
<appender-ref ref="RollingFile" />
<appender-ref ref="LogFileAppender" />
</root>
</log4net>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<system.serviceModel>
<bindings />
<client />
</system.serviceModel>
<applicationSettings>
<NetSuiteClient.Properties.Settings>
<setting name="NetSuiteClient_com_netsuite_webservices_NetSuiteService"
serializeAs="String">
<value>https://webservices.netsuite.com/services/NetSuitePort_2016_1</value>
</setting>
</NetSuiteClient.Properties.Settings>
</applicationSettings>
</configuration>
声明:
private static readonly ILog _Log = LogManager.GetLogger(typeof(Form));
通话:
private void Form1_Load(object sender, EventArgs e)
{
_Log.Info("Info");
_Log.Debug("Debug");
_Log.Error("Error");
}
答案 0 :(得分:1)
您是否指示Log4Net在app.config文件中查找其配置?您可以使用以下程序集级属性来执行此操作:
[assembly: log4net.Config.XmlConfigurator(Watch=true)]
取自here
的示例