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 Dean Fiala <df...@celadonlabs.com> on 2006/04/26 15:51:04 UTC

Adding A Memory Appender at Runtime

I'm trying to add a memory appender to root via code, like so...
 
Private Sub SetUpLogging()
  Dim RootLog As ILog = LogManager.GetLogger("root")
  Dim connectionAppender As IAppenderAttachable = RootLog.Logger
  Dim MemoryApp As MemoryAppender = New MemoryAppender()
  MemoryApp.Name = "ThanksForTheMemories"
  MemoryApp.ActivateOptions()
  connectionAppender.AddAppender(MemoryApp)
End Sub
 
The code adds the appender fine (it shows up in
RootLog.Logger.Repository.GetAppenders()), but after running some code that
generates events,  MemoryApp.GetEvents() returns 0 events.  
 
If I create a memory appender via the config file like so...
    <appender name="ConfigFileMemoryAppender"
type="log4net.Appender.MemoryAppender">
      <level value="ERROR" />
    </appender>

.GetEvents() returns the expected number of events.  So obviously I am
forgetting something in the setup code. Any hints or pointers would be
appreciated.
 
Thanks,

Dean Fiala

Chief Technology Officer
Celadon Laboratories, Inc.
http://www.celadonlabs.com <http://www.celadonlabs.com/> 
301-395-1129

Microsoft MVP <http://mvp.support.microsoft.com/>