2009-07-12 6 views
2

Gibt es eine Möglichkeit, den AdoNetAppender zu konfigurieren, jedes Mal zu protokollieren, wenn ein Wert des Typs 'Error' erreicht wird, und nur die letzten 10 Anweisungen des unteren Schwellenwerts (dh info) vor dieser Anweisung zu protokollieren .Log4Net ADO.net Info Puffer

Ist das möglich? Ich lief Hunderte von .Info-Anweisungen für jeden einzelnen Fehler und ich brauche nicht viele ... gerade genug, um zu sehen, was genau vorher passiert ist.

bearbeiten - hier ist meine aktuelle appender Konfiguration:

<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender"> 
    <bufferSize value="10" /> 
    <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=XXXXXXXXXXXXXX" /> 
    <connectionString value="Data Source=XXXXXXX; Database=XXXXXXXXXXX; User Id=XXXXXXX; Password=XXXXXXXX; Connection Timeout=30; Min Pool Size=10; Max Pool Size=200;" /> 
    <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="%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> 
<root> 
    <level value="ALL" /> 
    <appender-ref ref="AdoNetAppender" /> 
    <appender-ref ref="AspNetTraceAppender" /> 
</root> 

Danke, Kyle

Antwort

Verwandte Themen