log4net 使用

1.web.config 
 <configSections>
    
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  
</configSections>


 
<log4net debug="false">
    
<appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
      
<file value="webapp-log.txt" />
      
<appendToFile value="true" />
      
<layout type="log4net.Layout.PatternLayout">
        
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
      
</layout>
    
</appender>

    
<appender name="HttpTraceAppender" type="log4net.Appender.AspNetTraceAppender" >
      
<layout type="log4net.Layout.PatternLayout">
        
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
      
</layout>
    
</appender>
    
<!--可以按照时间或文件大小等条件写入到多个文件-->
    
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      
<file value="log-data\rolling-log.txt" />
      
<appendToFile value="true" />
      
<maxSizeRollBackups value="10" />
      
<maximumFileSize value="5MB" />
      
<rollingStyle value="Size" />
      
<staticLogFileName value="true" />
      
<layout type="log4net.Layout.PatternLayout">
        
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
      
</layout>
    
</appender>

    
<appender name="ADONetAppender" type="log4net.Appender.ADONetAppender">
      
<bufferSize value="2" />
      
<connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      
<connectionString value="Data Source=localhost;user id=sa;password=sa;Database=MQDB" />
      
<commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />
      
<parameter>
        
<parameterName value="@log_date" />
        
<dbType value="DateTime" />
        
<layout type="log4net.Layout.RawTimeStampLayout" />
      
</parameter>

      
<parameter>
        
<parameterName value="@thread" />
        
<dbType value="String" />
        
<size value="255" />
        
<layout type="log4net.Layout.PatternLayout">
          
<conversionPattern value="%thread" />
        
</layout>
      
</parameter>

      
<parameter>
        
<parameterName value="@log_level" />
        
<dbType value="String" />
        
<size value="50" />
        
<layout type="log4net.Layout.PatternLayout">
          
<conversionPattern value="%level" />
        
</layout>
      
</parameter>

      
<parameter>
        
<parameterName value="@logger" />
        
<dbType value="String" />
        
<size value="255" />
        
<layout type="log4net.Layout.PatternLayout">
          
<conversionPattern value="%logger" />
        
</layout>
      
</parameter>

      
<parameter>
        
<parameterName value="@message" />
        
<dbType value="String" />
        
<size value="4000" />
        
<layout type="log4net.Layout.PatternLayout">
          
<conversionPattern value="%message" />
        
</layout>
      
</parameter>

      
<parameter>
        
<parameterName value="@exception" />
        
<dbType value="String" />
        
<size value="2000" />
        
<layout type="log4net.Layout.ExceptionLayout" />
      
</parameter>
    
</appender>


    
<logger name="App.Logging">
      
<level value="ALL"/>
      
<appender-ref ref="ADONetAppender" />
    
</logger>

    
<root>
      
<level value="DEBUG" />
      
<appender-ref ref="LogFileAppender" />
    
</root>
  
</log4net>

2.Global.asax
void Application_Start(object sender, EventArgs e) 
{
    log4net.Config.XmlConfigurator.Configure();
}


3. .cs
   ILog log = LogManager.Exists("App.Logging"); 
        log.Info(
"列出操作员信息"new Exception("OPer"));
原文地址:https://www.cnblogs.com/ant520/p/917348.html