Michelle Weber | 5 Sep 2006 15:43
Picon

Uncaught exception: System.IndexOutOfRangeException

I'm using log4net 1.2.9 and got these uncaught exceptions thrown from
my application causing it to crash this past weekend:

System.IndexOutOfRangeException: Probable I/O race condition detected
while copying memory.

I am using log4net with an asp.net 1.1 web service, and am writing
entries to the log for every request. This is on a windows 2003
server, using iis6, and web gardening is turned on, so multiple
instances of w3wp.exe are running and processing requests.

Here is the full stack trace:
System.Web.Services.Protocols.SoapException: Server was unable to
process request. ---> System.IndexOutOfRangeException: Probable I/O
race condition detected while copying memory. The I/O package is not
thread safe by default. In multithreaded applications, a stream must
be accessed in a thread-safe way, such as a thread-safe wrapper
returned by TextReader's or TextWriter's Synchronized methods. This
also applies to classes like StreamWriter and StreamReader. at
System.Buffer.InternalBlockCopy(Array src, Int32 srcOffset, Array dst,
Int32 dstOffset, Int32 count) at System.IO.StreamWriter.Write(Char[]
buffer, Int32 index, Int32 count) at
System.IO.TextWriter.WriteLine(String value) at
System.IO.SyncTextWriter.WriteLine(String value) at
log4net.Util.LogLog.Error(String message, Exception exception) at
log4net.Util.AppenderAttachedImpl.AppendLoopOnAppenders(LoggingEvent
loggingEvent) at
log4net.Repository.Hierarchy.Logger.CallAppenders(LoggingEvent
loggingEvent) at log4net.Repository.Hierarchy.Logger.ForcedLog(Type
callerStackBoundaryDeclaringType, Level level, Object message,
(Continue reading)

harry.douglass | 6 Sep 2006 21:04
Picon

How to pass data to custom ADONetAppender parameters?

Hello,

I am trying to find a way to write my own custom parameters that I would
log
to a SQL Server Database.   I am a newbie to this, so I got the
"out-of-the-box" implementation of logging an exception, message, dates
that
writes to SQL Server using the ADONetAppender.  However, I want to pass my
own custom data variables to the database.  So, my DB table would have
these
fields:

Table name = CustomStuff

Custom Log Fields:

MyCustomMessage

MyCustomContactName

MyCustomPhoneNumber

I found code that creates a custom ADONetAppender, but there's more to it
and I can seem to bridge even how that would translate into C# code on how
to pass this data in the parameters.

I hope what I am asking makes sense, but if not I can provide more details.

Thanks in advance,

(Continue reading)


Gmane