在工程目录下的App.config :
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!-- Register a section handler for the log4net section -->
<configSections>
<section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
</configSections>
<appSettings>
<!-- To enable internal log4net logging specify the following appSettings key -->
<!-- <add key="log4net.Internal.Debug" value="true"/> -->
</appSettings>
<!-- This section contains the log4net configuration settings -->
<log4net>
<!-- Define some output appenders -->
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="test.log" />
<param name="AppendToFile" value="true" />
<!-- An alternate output encoding can be specified -->
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value="[Header]\r\n" />
<param name="Footer" value="[Footer]\r\n" />
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}> - %m%n" />
</layout>
<!-- Alternate layout using XML
<layout type="log4net.Layout.XMLLayout" /> -->
</appender>
<!-- Setup the root category, add the appenders and set the default level -->
<root>
<level value="ALL" />
<appender-ref ref="LogFileAppender" />
</root>
<!-- Specify the level for some specific categories -->
<logger name="mylog">
<level value="ALL" />
<appender-ref ref="RollingLogFileAppender" />
</logger>
</log4net>
</configuration>
在AssemblyInfo.cs里面加了
[assembly: log4net.Config.DOMConfigurator(Watch=true)] 在Form1.cs 里:
public class Form1 : System.Windows.Forms.Form
{
private static readonly log4net.ILog log = log4net.LogManager.GetLogger("mylog");
...
private void button1_Click(object sender, System.EventArgs e)
{
log.Warn("ok");
}
}
点击button1后没生成test.log,这是为什么?
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!-- Register a section handler for the log4net section -->
<configSections>
<section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
</configSections>
<appSettings>
<!-- To enable internal log4net logging specify the following appSettings key -->
<!-- <add key="log4net.Internal.Debug" value="true"/> -->
</appSettings>
<!-- This section contains the log4net configuration settings -->
<log4net>
<!-- Define some output appenders -->
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="test.log" />
<param name="AppendToFile" value="true" />
<!-- An alternate output encoding can be specified -->
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value="[Header]\r\n" />
<param name="Footer" value="[Footer]\r\n" />
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}> - %m%n" />
</layout>
<!-- Alternate layout using XML
<layout type="log4net.Layout.XMLLayout" /> -->
</appender>
<!-- Setup the root category, add the appenders and set the default level -->
<root>
<level value="ALL" />
<appender-ref ref="LogFileAppender" />
</root>
<!-- Specify the level for some specific categories -->
<logger name="mylog">
<level value="ALL" />
<appender-ref ref="RollingLogFileAppender" />
</logger>
</log4net>
</configuration>
在AssemblyInfo.cs里面加了
[assembly: log4net.Config.DOMConfigurator(Watch=true)] 在Form1.cs 里:
public class Form1 : System.Windows.Forms.Form
{
private static readonly log4net.ILog log = log4net.LogManager.GetLogger("mylog");
...
private void button1_Click(object sender, System.EventArgs e)
{
log.Warn("ok");
}
}
点击button1后没生成test.log,这是为什么?
是不是应该动态得到该类的对象啊???
private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof(Form1));