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 Kevin Parkinson <de...@gmail.com> on 2007/07/12 20:48:45 UTC
How is Layout Read In Using The ADONetAppender?
Hello All:
Currently I am looking into extending some log4net capabilities around
using the AdoNETAppender to accommodate my table structure.
There is one thing I am having a hard time grasping and that is how the
values for the parameters in an AdnoNetAppender are read in.
Consider t he following declaration of an AdoNetAppender in t he
log4net.config:
<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
<bufferSize value="100" />
<connectionType value="System.Data.SqlClient.SqlConnection,
System.Data, Version=1.0.3300.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" />
<connectionString value="data source=[database server];initial
catalog=[database name];integrated security=false;persist security
info=True;User ID=[user];Password=[password]" />
<commandText value="INSERT INTO Log
([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES
(@log_date, @thread, @log_level, @logger, @message, @exception)" />
<parameter>
<parameterName value="@thread" />
<dbType value="String" />
<size value="255" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%thread" />
</layout>
</parameter>
...
...
...
</appender>
I understand that the <parameter> node is read in as an
AdoNetAppenderParameter, but I am not clear how the PatternLayout is
usesd to read the value of %thread. Can anyone offer an explanation of
this?
The end goal here is to have the value attrib of <layout> be a
property on one of my custom classes.
Thank you,
Kevin Parkinson