当前位置:编程学习 > C#/ASP.NET >>

log4net写入多个日志表

log4net 怎么通过 webConfig写入  多个日志表 --------------------编程问答-------------------- 快来人啊,别沉了 --------------------编程问答-------------------- log4net?你不会用了codesmith吧? --------------------编程问答-------------------- 没啊

这是我的配置文件
<log4net debug="false">

    <root>

      <level value="ALL" />

      <appender-ref ref="ADONetAppender" />

    </root>

    <!--

     定义loger的名称和使用的appender

    -->

    <logger name="AA">

      <level value="ALL"/>

      <appender-ref ref="ADONetAppender" />

    </logger>

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

      <!--

     定义几条存入数据库 有2条时才写入数据库,没有两条叫缓存

    -->

      <bufferSize value="2" />

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

      <connectionString value="Data Source=.;Initial Catalog=Test;User ID=sa;password=123456" />

      <commandText value="INSERT INTO [Log] ([Date],[Thread],[Level],[Logger],[Message],[Excepstion]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />

      <!--<parameter>

        <parameterName value="@Log" />

        <dbType value="string" />

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

      </parameter>-->
      
      <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>

  </log4net>


这只能插入固定的表,我有4个表,有没有办法把表名变为一个参数? --------------------编程问答-------------------- 找到方法了,改用存储过程  --------------------编程问答--------------------
   <param name="CommandType" value="StoredProcedure" />

      <param name="CommandText" value="spLog_Create" />
--------------------编程问答--------------------
引用 4 楼 weiwei6v7v 的回复:
找到方法了,改用存储过程

哈哈刚看完log4net中用的insert,想让你试试存储过程呢,结果自己想起来了啊哈哈
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,