본문 바로가기
C# 기술

[log4net] Visual Studio 2019 에서 log4net 사용하기

by bryan.oh 2020. 11. 3.
반응형

Visual Studio 2019
C# log4net 사용

 

C# winform 프로젝트는 이미 생성 되어있는 상태에서

NuGet 패키지 관리를 실행합니다.

 

log4net 을 검색하고 설치합니다.

 

코드에 초기화 소스를 작성 합니다.

 

그리고 프로젝트 root folder 에 log4net.xml 파일을 작성합니다.

log4net.xml

<log4net>
  <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
    <file value="logs//log"/>
    <immediateFlush>true</immediateFlush>
    <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
    <appendToFile value="true"/>
    <datePattern value="-yyyy-MM-dd-HH'.log'" />
    <rollingStyle value="Composite" />
    <filter type="log4net.Filter.LevelRangeFilter">
      <acceptOnMatch value="true"/>
      <levelMin value="DEBUG"/>
      <levelMax value="FATAL"/>
    </filter>
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="[%-23d] %-5p %c %M: %m %n"/>
    </layout>
  </appender>

  <root>
    <appender-ref ref="RollingLogFileAppender" />
  </root>
</log4net>
  • 로그 저장 경로를 설정합니다.
  • 파일명을 설정합니다. 
  • rolling file 을 설정합니다. daily or size

 

사용 가능한 로그 Level 은 아래와 같습니다.

  •             log.Debug("debug~");

  •             log.Info("info~");

  •             log.Warn("warn~");

  •             log.Error("error~");

  •             log.Fatal("fatal~");

log4net.xml 에 로그 래밸을 설정하면 그보다 중요한 로그는 다 쓰도록 됩니다.

중요도 : ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF

ALL 이면 모두 로깅. OFF 면 로그 출력 안함. WARN 이면 WARN,ERROR,FATAL 만 출력.

 

728x90
반응형

댓글