You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4net-user@logging.apache.org by raysefo <ce...@yahoo.com> on 2010/12/16 12:42:04 UTC

How to add multiple AdoNetAppender?

Hi,

I m using one AdoNetAppender and it works great. But i need to log into
another table so i would like to add another AdoNetAppender. I added another
one with appropriate configurations but no logging occured for the new
table.

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

<log4net>
    <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
      <bufferSize value="1"/>
      <connectionType value="System.Data.SqlClient.SqlConnection,
System.Data, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=B77A5C561934E089"/>
      <connectionString value="Data Source=xxx;Initial Catalog=xxx;Persist
Security Info=True;User ID=xxx;Password=xxx"/>
      <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="type:%class thread:%thread"/>
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@log_level"/>
        <dbType value="String"/>
        <size value="50"/>
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="identity:%identity"/>
          <!--<conversionPattern value="%-5level %logger ${COMPUTERNAME}
[%property{UserID}]" />-->
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@logger"/>
        <dbType value="String"/>
        <size value="255"/>
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%logger filename:%file
linenumber:%line"/>
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@message"/>
        <dbType value="String"/>
        <size value="4000"/>
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="location:%location methodname:%method
message:%message"/>
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@exception"/>
        <dbType value="String"/>
        <size value="2000"/>
        <layout type="log4net.Layout.ExceptionLayout"/>
      </parameter>
    </appender>
    <appender name="AdoNetSAPAppender"
type="log4net.Appender.AdoNetAppender">
      <bufferSize value="1"/>
      <connectionType value="System.Data.SqlClient.SqlConnection,
System.Data, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=B77A5C561934E089"/>
      <connectionString value="Data Source=xxx;Initial Catalog=xxx;Persist
Security Info=True;User ID=xxx;Password=xxx"/>
      <commandText value="INSERT INTO LogSAP (Date, Logger,EFormID, Message,
Exception) VALUES (@log_date, @logger,@eformID, @message, @exception)"/>
      <parameter>
        <parameterName value="@log_date"/>
        <dbType value="DateTime"/>
        <layout type="log4net.Layout.RawTimeStampLayout"/>
      </parameter>
      <parameter>
        <parameterName value="@logger"/>
        <dbType value="String"/>
        <size value="255"/>
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%logger filename:%file
linenumber:%line"/>
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@eformID"/>
        <dbType value="String"/>
        <size value="255"/>
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="[%property{EFormID}]"/>
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@message"/>
        <dbType value="String"/>
        <size value="4000"/>
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="location:%location methodname:%method
message:%message"/>
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@exception"/>
        <dbType value="String"/>
        <size value="2000"/>
        <layout type="log4net.Layout.ExceptionLayout"/>
      </parameter>
    </appender>
    <appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
      <to value="xxx@xxx.com"/>
      <from value="xxx@xxx.com"/>
      <subject value="There is an Error Occurred."/>
      <smtpHost value="111.11.1.11"/>
      <authentication value="1"/>
      <username value="xxx"/>
      <password value="xxx"/>
      <port value="25"/>
      <bufferSize value="1"/>
      <lossy value="false"/>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%newline%date [%thread] %-5level %logger
[%property] - %message%newline%newline%newline"/>
      </layout>
    </appender>
    <root>
      <level value="WARN"/>
      <appender-ref ref="AdoNetAppender"/>
      <appender-ref ref="AdoNetSAPAppender"/>
      <appender-ref ref="SmtpAppender"/>
    </root>

And here is my code sample: (It works fine for the existing AdoNetAppender -
the first one in the web.config file -)
Public Shared loggerDB As log4net.ILog
...
loggerDB =
log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)

...
...
 Catch ex As Exception
                Console.WriteLine(ex.Message)

                loggerDB.Error(ex.Message, ex)
...
-- 
View this message in context: http://old.nabble.com/How-to-add-multiple-AdoNetAppender--tp30471858p30471858.html
Sent from the Log4net - Users mailing list archive at Nabble.com.