Hello,

I have configured an AdoNetAppender in code (see below). I do end up with a 
record inserted into the table. The values inserted into the Date, Message 
and Exception columns are correct. However, the Thread, Level and Logger 
columns all contain the contents of "%message. If I use any of the other 
appenders (such as FileAppender), all values are logged correctly.

I’ve been searching for a couple of hours now and cannot find where anyone 
else has had this issue. Any help would be appreciated!

var dbAppender = new AdoNetAppender
            {
                Layout = layout,
                BufferSize = 1,
                ConnectionType = "System.Data.SqlClient.SqlConnection, 
System.Data, Version=1.0.3300.0, Culture=neutral, 
PublicKeyToken=b77a5c561934e089",
               ConnectionString = string.Format("data source='{0}';initial 
catalog={1};integrated security=false;persist security info=True;User ID=
{2};Password={3}", dbConfig.ServerName, dbConfig.DatabaseName, 
dbConfig.UserId, dbConfig.Password),
                CommandText = "INSERT INTO Log ([Date],[Thread],[Level],
[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, 
@logger, @message, @exception)"          
            };

            dbAppender.AddParameter(new AdoNetAppenderParameter { 
ParameterName = "@log_date", DbType = DbType.DateTime, Layout = new 
RawTimeStampLayout() });
            dbAppender.AddParameter(new AdoNetAppenderParameter { 
ParameterName = "@thread", DbType = DbType.String, Size = 255, Layout = new 
Layout2RawLayoutAdapter(new PatternLayout { ConversionPattern = "%thread" }) 
});
            dbAppender.AddParameter(new AdoNetAppenderParameter { 
ParameterName = "@log_level", DbType = DbType.String, Size = 50, Layout = 
new Layout2RawLayoutAdapter(new PatternLayout { ConversionPattern = "%level" 
}) });
            dbAppender.AddParameter(new AdoNetAppenderParameter { 
ParameterName = "@logger", DbType = DbType.String, Size = 255, Layout = new 
Layout2RawLayoutAdapter(new PatternLayout { ConversionPattern = "%logger" }) 
});
            dbAppender.AddParameter(new AdoNetAppenderParameter { 
ParameterName = "@message", DbType = DbType.String, Size = 4000, Layout = 
new Layout2RawLayoutAdapter(new PatternLayout { ConversionPattern = 
"%message" }) });
            dbAppender.AddParameter(new AdoNetAppenderParameter { 
ParameterName = "@exception", DbType = DbType.String, Size = 2000, Layout = 
new Layout2RawLayoutAdapter(new ExceptionLayout()) });

            dbAppender.ActivateOptions();

Thank you,
Brian


Reply via email to