NLog 샘플

그동안 로깅을 위해 Log4Net을 오래동안 사용해 왔는데요..
지속적으로 업그레이드되고 있는 NLog를 사용해 봤습니다.
다양한 사용하기도 쉽고, 기능도 많아서 앞으로 쭉 사용할듯 하네요. ^^

NLog의 사용법은 Log4Net 과 거의 유사합니다.

using NLog;

namespace Kimstar
{
    public class Test
    {
        Logger m_logger;      

        public Test() 
        {
            m_logger = LogManager.GetCurrentClassLogger();
        }

        ...

        private void anyMethod() 
        {
            m_logger.Debug("aaa");
        }
    }
}

환경설정은 다양한 방법이 있는데요.
가장 쉬운 방법은 NLog.config 파일을 아래와 같이 추가해 주시면 됩니다.

<target name=”file” …>
아래의 설정에서 file이라는 target은 로그파일의 크기라 1048576 byte가 넘으면 백업하고 새로운 백업을 만들어 줍니다.
백업파일은 최대 10개까지 유지되며 숫자가 순서대로 붙어서 관리됩니다.

<target name=”console” …>
콘솔로 로그를 출력합니다.

<logger … writeTo=”file,console” …>
debug 이상의 로그는 file과 콘솔로 출력합니다.

자세한 옵션은 https://github.com/nlog/NLog/wiki/File-target 를 참고하시기 바랍니다.

<?xml version="1.0"  encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <targets>
    <target name="file" xsi:type="File"
        layout="[${longdate}] ${message}"
        fileName="${basedir}/logs/test.log"
        keepFileOpen="false" maxArchiveFiles="10" archiveNumbering="Sequence" archiveAboveSize="1048576"
        encoding="utf-8" />
    <target name="console" xsi:type="Console" layout="${message}" />
  </targets>

  <rules>
    <logger name="*" minlevel="Debug" writeTo="file,console" />
  </rules>
</nlog>

 

Notice

  • 이 저작물은 크리에이티브 커먼즈 저작자표시-비영리-변경금지 2.0 대한민국 라이선스에 따라 이용할 수 있습니다. 크리에이티브 커먼즈 라이선스
  • 저작권과 관련된 파일요청 및 작업요청을 받지 않습니다.
  • 댓글에 대한 답변은 늦을 수도 있습니다.
  • 2 댓글

    댓글 남기기

    이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다