문제

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>

올바른 솔루션이 없습니다

다른 팁

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.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top