美文网首页
2019-01-18 Log4net 连接SqlServer

2019-01-18 Log4net 连接SqlServer

作者: 竹子和刚仔 | 来源:发表于2019-01-18 18:59 被阅读0次

     最近由Winform转为WPF,日志记录采用Log4Net机制,具体操作为下:

    #1 下载log4net.dll,

    具体方法为从工具栏进入Nuget包管理器,直接输入Log4net进行下载安装即可;

    #2 下载好后,在App.config进行配置,节点配置如下

    ```

    <configSections>

        <!--log4net配置-->

        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>

      </configSections>

    ```

    #3  具体数据库和TXt文档配置

    ```

    <log4net >

    <appender name="DefaultFileAppender" type="log4net.Appender.RollingFileAppender">

          <LockingModel value="log4net.Appender.FileAppender.MinimalLock" />

          <file value="logfile\"/>

          <appendToFile value="true"/>

          <maxSizeRollBackups value="180"/>

          <maximumFileSize value="1MB"/>

          <rollingStyle value="Date"/>

          <datePattern value='yyyy-MM-dd/"Log.txt"' />

          <staticLogFileName value="false"/>

          <!--定义文件存放位置-->

          <!--file value="D://logfile.txt"/-->

          <!--放在Debug下-->

          <!--file value="log//logfile.txt"/-->

          <layout type="log4net.Layout.PatternLayout">

          <!--输出格式-->

          <!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->

          <conversionPattern value="记录时间:%date 日志级别:%-5level - 描述:%message%newline"/>

          </layout>

        </appender>

        <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">

          <bufferSize value="1" />

          <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>

          <connectionString value="Data source = EDP-IR137\sqlexpress; initial catalog=i-Reader_X;integrated security = true" />

          <commandText value="INSERT INTO Log([LogDate],[Level],[Message],[Exception]) VALUES (@log_date, @log_level, @message, @exception)"/>

          <parameter>

            <parameterName value="@log_date" />

            <dbType value="DateTime" />

            <layout type="log4net.Layout.RawTimeStampLayout" />

            <!--layout type="log4net.Layout.PatternLayout" value="%date"/-->

          </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="@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>

        <root>

        <level value="ALL" />

        <appender-ref ref="DefaultFileAppender"/>

        <appender-ref ref= "AdoNetAppender"/>

        </root>

      </log4net>

    ```

    #4 新建类,写入一个 静态变量

    ```

    class Logfornet

        {

            public static ILog Log { get; } = LogManager.GetLogger("Log");

        }

    ```

    #5  property里一定要加这句

    ```

    [assembly: log4net.Config.XmlConfigurator(Watch = true)]

    ```

    #6 使用方法

    ```

    Logfornet.Log.Info("00用户登录");

    ```

    相关文章

      网友评论

          本文标题:2019-01-18 Log4net 连接SqlServer

          本文链接:https://www.haomeiwen.com/subject/cuqodqtx.html