The ADONetAppender is able to buffer events before writing them to the
DB.
The buffer size is controlled the following configuration:

<param name="bufferSize" value="100" />

This means that the appender will not write anything to the DB until it
has buffered 100 events, it will then write all the events in the buffer
in one go. When log4net shuts down the appender will try to write
anything still in its buffer.

If you want the appender to write immediately to the DB then set the
bufferSize to 0.

Nicko

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
> Sent: 19 July 2004 13:54
> To: [email protected]
> Subject: ADONETAPPENDER
> 
> 
> 
> Hello,
> I want to use the appender ADOnetappender to write messages 
> in a sqlserver database.  I use this appender configuration:
> 
> <appender name="ADONetAppender_SqlServer"
> type="log4net.Appender.ADONetAppender">
>                 <param name="bufferSize" value="100" />
>                 <param name="ConnectionType"
> value="System.Data.SqlClient.SqlConnection,
> System.Data, Version=1.0.3300.0, Culture=neutral, 
> PublicKeyToken=b77a5c561934e089" />
>                 <param name="ConnectionString" value="data 
> source=SERV-ANTENNA1;initial catalog=LOG;integrated 
> security=SSPI;persist security info=False;User 
> ID=TOTO;Password=TOTO" />
>                 <param name="CommandText" value="INSERT INTO LOG
> ([Date],[Thread],[Level],[Logger],[Message],[Exception]) 
> VALUES (@log_date, @thread, @log_level, @logger, @message, 
> @exception)" />
>                 <param name="Parameter">
>                         <param name="ParameterName" 
> value="@log_date" />
>                         <param name="DbType" value="DateTime" />
>                         <param name="Layout"
> type="log4net.Layout.PatternLayout">
>                                 <param name="ConversionPattern"
> value="%d{yyyy'-'MM'-'dd
> HH':'mm':'ss'.'fff}" />
>                         </param>
>                 </param>
>                 <param name="Parameter">
>                         <param name="ParameterName" value="@thread" />
>                         <param name="DbType" value="String" />
>                         <param name="Size" value="255" />
>                         <param name="Layout"
> type="log4net.Layout.PatternLayout">
>                                 <param 
> name="ConversionPattern" value="%t" />
>                         </param>
>                 </param>
>                 <param name="Parameter">
>                         <param name="ParameterName" 
> value="@log_level" />
>                         <param name="DbType" value="String" />
>                         <param name="Size" value="50" />
>                         <param name="Layout"
> type="log4net.Layout.PatternLayout">
>                                 <param 
> name="ConversionPattern" value="%p" />
>                         </param>
>                 </param>
>                 <param name="Parameter">
>                         <param name="ParameterName" value="@logger" />
>                         <param name="DbType" value="String" />
>                         <param name="Size" value="255" />
>                         <param name="Layout"
> type="log4net.Layout.PatternLayout">
>                                 <param 
> name="ConversionPattern" value="%c" />
>                         </param>
>                 </param>
>                 <param name="Parameter">
>                         <param name="ParameterName" 
> value="@message" />
>                         <param name="DbType" value="String" />
>                         <param name="Size" value="4000" />
>                         <param name="Layout"
> type="log4net.Layout.PatternLayout">
>                                 <param 
> name="ConversionPattern" value="%m" />
>                         </param>
>                 </param>
>                 <param name="Parameter">
>                         <param name="ParameterName" 
> value="@exception" />
>                         <param name="DbType" value="String" />
>                         <param name="Size" value="2000" />
>                         <param name="Layout"
> type="log4net.Layout.ExceptionLayout"></param>
>                 </param>
> 
> But I am confronted with several problems:
> 
> - first problem: I use Windows services, and message from 
> these services are not written in database .
> - Second probleme: Messages are written only when the user 
> quit application.
> 
> If you could help me to solve these problem, thank you for 
> your assistance.
> 

Reply via email to