Hi!

...
Someone else might have an application that they would like to send
DEBUG messages to the FileAppender
even though my application may only send FATAL
...

this is, why you have different logger.
from your first post:

<logger name="Invoicing">
...
</logger>

<logger name="Invoicing">
...
</logger>

this makes no sense. You configure the logger 'Invoicing' and later
you configure the SAME logger with different properties. How do you
want to access these 'two' loggers from your code?
LogManger.GetLogger("Invoicing, but please first version") ? ;-)

You can do this:

  <appender name="consoleTestAppender" type="log4net.Appender.ConsoleAppender" >
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date %-5level %logger - %message%newline" />
    </layout>
  </appender>

<logger name="Invoicing.Application1">
 <level value="ERROR" />
 <appender-ref ref="consoleTestAppender" />
</logger>

<logger name="Invoicing.Application2">
 <level value="WARN" />
 <appender-ref ref="consoleTestAppender" />
</logger>

now you have two different loggers  (one for each app), using the same
appender. And you can set the Level per Logger.

Perhaps you want to define another one:

<logger name="Invoicing">
 <level value="ALL" />
 <appender-ref ref="consoleTestAppender" />
</logger>

now you have also the root logger (Invoicing). So you can configure
global settings for all Invoicing loggers or for every single one ...


have fun!

Daniel

Reply via email to