Download presentation
Presentation is loading. Please wait.
Published byJean-Bernard Milot Modified 6년 전
1
사용법 1. NLog 설치 2. Configuration, Rule, Target 3. 기본 API 사용법
2
NLog 설치 Nuget 패키지 관리 NLog, Configuration, Chema for intelligence 3가지를 설치한다. 1 설치 과정은 생략. 2 설치 후, 2가지 파일을 확인한다. ㄱ. 참조에 NLog.dll ㄴ. 프로젝트 파일에 NLog.config 3 클래스 1군데에 지역변수 선언을 해본다. private static Logger logger = LogManager.GetCurrentClassLogger(); 4 실행 후, 오류가 없다면 설치완료.
3
Configuration, Rule, Target
NLog는 config파일을 설정하지 않으면 아무런 기능도 작동하지 않는다. NLog 설정방법은 App[Web].config, NLog.config 등에서 이루어진다. (한군데에서만 설정하면 된다.) 사용하기 위해서는 NLog.config 파일에 Rule과 Target을 올바르게 설정해야만한다.
4
Configuration 실행파일과 config 설정파일은 함께 있어야 한다.
<nlog xmlns=" xmlns:xsi=" <targets> <target name=“target_1" xsi:type="File" fileName="file.txt" /> <target name="target_2" xsi:type="File" fileName="file.txt" /> </targets> <rules> <logger name="*" minlevel="Info" writeTo="target_1" /> <logger name=“UCRM.Framework.*" minlevel=“Trace" writeTo="target_2" /> </rules> </nlog> 실행파일과 config 설정파일은 함께 있어야 한다. App.config에 <nlog>를 선언하고 싶다면, configuration ▶ configSections 에 다음 구문을 선언해라. <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog"/>
5
Rule 어떤 로거를 어떻게 할지 정한다. name 속성은 select의 속성을 가진다
<logger name="*" minlevel="Trace" writeTo="DevTrace_File,DevTrace_Console" /> name 속성은 select의 속성을 가진다 Level 은 기록할 로그의 수준을 정한다. Trace < Debug < Info < Warn < Error < Fatal writeTo 속성은 어떻게 기록할지를 정한다.
6
Target 로그의 결과물을 어떻게 할지 정하는 명시
<target xsi:type="Console“ name="DevTrace_Console" layout="${longdate} ${uppercase:${level}} ${newline} ${message}“ /> xsi:type : 로그의 결과물의 형태 (DB, File, Console, …) Name : 타겟의 이름. 롤의 <loger>의 wirteTo속성에서 쓰인다. Layout : 로그의 형태를 정한다. Ex) ${longdate} ${uppercase:${level}} ${newline} ${message} => :40: TRACE MESSAGE
7
기본 API 사용법(1/3) <nlog xmlns=" xmlns:xsi=" <targets> <target xsi:type="File" name="DevTrace_File" fileName="${basedir}/logs/DevTrace_${level}_${shortdate}.log" layout="${longdate} ${uppercase:${level}} ${newline} ${message}" /> <target xsi:type="Console" name="DevTrace_Console" </targets> <rules> <logger name="*" minlevel="Trace" writeTo="DevTrace_File,DevTrace_Console" /> </rules> </nlog>
8
기본 API 사용법(2/3) static class Program { private static Logger logger = LogManager.GetCurrentClassLogger(); [STAThread] static void Main() Reference.Console.SetupDebugConsole(); logger.Trace("콘솔시작"); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); logger.Trace("MainForm 구동준비"); Console.ReadLine(); Application.Run(new Forms.MainForm()); }
9
기본 API 사용법(3/3) 로그결과 2013-11-22 10:31:11.2820 TRACE 콘솔시작
MainForm 구동준비 :40: TRACE :40: TRACE :41: TRACE :41: TRACE
Similar presentations