log4Net配置

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- log4net的定义配置节 -->
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>
  <log4net>
    <!--日志保存到文件里面Log.txt-->
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="Log\Log.txt"/>
      <param name="AppendToFile" value="true"/>
      <param name="MaxSizeRollBackups" value="100"/>
      <param name="MaximumFileSize" value="2MB"/>
      <param name="RollingStyle" value="Size"/>
      <param name="StaticLogFileName" value="true"/>
      <!--<param name="Encoding" value="utf-8" />-->
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%-5p %d [%c] %m%n"/>
      </layout>
    </appender>
    <!--日志输出到Console-->
    <appender name="ColoredConsoleAppender" type="log4net.Appender.ColoredConsoleAppender">
      <mapping>
        <level value="ERROR"/>
        <foreColor value="White"/>
        <backColor value="Red,HighIntensity"/>
      </mapping>
      <mapping>
        <level value="DEBUG"/>
        <backColor value="Green"/>
      </mapping>
      <mapping>
        <level value="Info"/>
        <backColor value="Yellow"/>
      </mapping>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="Debug"/>
        <param name="LevelMax" value="Fatal"/>
      </filter>
    </appender>
    <!--日志输出到数据库-->
    <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
      <!--数据表创建脚本-->
      <!--CREATE TABLE LOG(Id integer primary KEY AUTOINCREMENT,Date datetime NOT NULL,UserId varchar(20) NOT NULL,UserName varchar(50) NOT NULL,Message varchar(4000) NOT NULL,Exception varchar(2000) NULL);-->
      <!--日志缓存写入条数-->
      <!--bufferSize表示批处理的日志事件,可以避免每次日志事件都访问数据库,原本是<bufferSize value="100" />一百条才插入-->
      <bufferSize value="1"/>
      <!--日志数据库连接串-->
      <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      <connectionString value="DATABASE=EvMS;SERVER=192.168.1.234;UID=evms;PWD=123456;Connect Timeout=15;" />
      <!--System.Data.SQLite, Version=1.0.65.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139-->
      <!--<connectionType value="System.Data.SQLite.SQLiteConnection, System.Data, Version=1.0.65.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"/>-->
      <!--<connectionString value="Data source=F:\Person\Longteng\LongtengSln\SendEvaluateDataToProvinceConsole\Data\mysqlite.db;Connect Timeout=15"/>-->
      <!--日志数据库脚本-->
      <commandText value="INSERT INTO LOG([Date],[UserId],[UserName],[Message],[Exception]) VALUES (@Date,@UserId,@UserName,@Message,@Exception)"/>
      <!--日志时间Date -->
      <parameter>
        <parameterName value="@Date"/>
        <dbType value="DateTime"/>
        <layout type="log4net.Layout.RawTimeStampLayout"/>
      </parameter>
      <!--自定义UserId -->
      <parameter>
        <parameterName value="@UserId"/>
        <dbType value="String"/>
        <size value="20"/>
        <layout type="log4net.Layout.PatternLayout"/>
      </parameter>
      <!--自定义UserName -->
      <parameter>
        <parameterName value="@UserName"/>
        <dbType value="String"/>
        <size value="50"/>
        <layout type="log4net.Layout.PatternLayout"/>
      </parameter>
      <!--日志信息Message -->
      <parameter>
        <parameterName value="@Message"/>
        <dbType value="String"/>
        <size value="4000"/>
        <layout type="log4net.Layout.PatternLayout"/>
      </parameter>
      <!--异常信息Exception -->
      <parameter>
        <parameterName value="@Exception"/>
        <dbType value="String"/>
        <size value="2000"/>
        <layout type="log4net.Layout.PatternLayout"/>
      </parameter>
    </appender>
    <root>
      <level value="all"/>
      <appender-ref ref="RollingLogFileAppender"/>
      <appender-ref ref="ColoredConsoleAppender"/>
      <appender-ref ref="AdoNetAppender"/>
    </root>
  </log4net>
  <startup>
    <supportedRuntime version="v2.0.50727"/>
  </startup>
</configuration>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容