1.引用程序集 log4net.dll
2.配置文件
<configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> 紧跟着 配置 <log4net> <appender name="RollingFile" type="log4net.Appender.RollingFileAppender"> <file value="E:\test\log4net.log"/> <appendToFile value="true"/> <maximumFileSize value="100KB"/> <maxSizeRollBackups value="2"/> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%level %thread %logger - %message%newline"/> </layout> </appender> <!--定义输出到文件中--> <appender name="LogFileAppender" type="log4net.Appender.FileAppender"> <!--定义文件存放位置--> <file value="E:\test\log4net.txt"/> <appendToFile value="true"/> <rollingStyle value="Date"/> <maximumFileSize value="100kb"/> <datePattern value="yyyy-MM-dd HH:mm:ss"/> <layout type="log4net.Layout.PatternLayout"> <!--每条日志末尾的文字说明 <footer value="=======================" />--> <conversionPattern value="记录时间:%date 线程ID:[%thread] 日志级别:%-5level 类:%logger property:[%property{NDC}] - 描述:%message%newline"/> </layout> </appender> <root> <!--文件形式记录日志--> <appender-ref ref="LogFileAppender"/> <appender-ref ref="RollingFile" /> </root> </log4net>
3.在应用程序启动时读取log4net的配置文件(可以写到Global的Application_Start中),也可以在要记录日志的类中读取(在记录日志前都可以的)。
log4net.Config.XmlConfigurator.Configure();
4.在要记录日志的类中using log4net;并声明private static readonly ILog logger = LogManager.GetLogger("可以自定义名字,一般写成是当前记录日志的类名");
5.记录日志
logger.Debug("记录一次");
try
{
int a = 0;
int b = 1 / a;
}
catch (Exception ex)
{
//logger.Debug(ex.Message);
logger.DebugFormat("异常:{0}{1}", ex.Message,ex.StackTrace);
}