Question

I have created a sample program and every time I run this program, it is creating a dummy entry in the event log as below. How to avoid without creating a logger?

2014-02-24 18:04:53,557 [8] ERROR Log4NetSample.Program [(null)] - Error message

My Code:

using log4net;
using log4net.Config;
namespace Log4NetSample
{
    class Program
    {
        static void Main(string[] args)
        {
            Program pg= new Program();
            pg.Log4netCode();
        }

        private void Log4netCode()
        {
            XmlConfigurator.Configure();
            ILog log = LogManager.GetLogger(typeof(Program));
            log.Debug("Debug message");
            log.Info("Info message");
            log.Warn("Warning message");
            log.Error("Error message");
            log.Fatal("Fatal message");
        }
    }
}

Config file:

<log4net>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="C:\Log\MyFirstLogger.log"/>
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <maxSizeRollBackups value="2" />
      <maximumFileSize value="2KB" />
      <staticLogFileName value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="DEBUG" />
        <levelMax value="WARN" />
      </filter>
    </appender>
    <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
      <Eventid value="100"/>
      <LogName value="Log4NetSample" />
      <applicationName value="Log4NetSample" source="Api" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="ERROR" />
        <levelMax value="ERROR" />
      </filter>
    </appender>
    <root>
      <level value="ERROR" />
      <appender-ref ref="LogFileAppender" />
      <appender-ref ref="EventLogAppender" />
    </root>
  </log4net>

No correct solution

OTHER TIPS

You message is the actual to message from the line log.Error. You do not need to log or test you logger right after init the config.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top