1. NLog Configuration 수동 등록하는 방법이다.
(여러 라이브러리에 NLog를 사용하면 아래의 방법을 추천하지 않는다.)
// Step 1. Create configuration object
var config = new LoggingConfiguration();
// Step 2. Create targets and add them to the configuration
var consoleTarget = new ColoredConsoleTarget();
config.AddTarget("console", consoleTarget);
var fileTarget = new FileTarget();
config.AddTarget("file", fileTarget);
// Step 3. Set target properties
consoleTarget.Layout = @"${date:format=HH\:mm\:ss} ${logger} ${message}";
fileTarget.FileName = "${basedir}/log/library/${shortdate}_dataflow.txt";
fileTarget.Layout = "${message}";
// Step 4. Define rules
var rule1 = new LoggingRule("*", LogLevel.Debug, consoleTarget);
config.LoggingRules.Add(rule1);
var rule2 = new LoggingRule("*", LogLevel.Debug, fileTarget);
config.LoggingRules.Add(rule2);
// Step 5. Activate the configuration
LogManager.Configuration = config;
2. NLog Configuration 에 수동으로 추가하는 방법이다.
기존의 설정을 초기화시키지 않고 추가할 수 있는 장점이 있다.
var consoleTarget = new ColoredConsoleTarget();
NLog.LogManager.Configuration.AddTarget("console", consoleTarget);
var fileTarget = new FileTarget();
NLog.LogManager.Configuration.AddTarget("file", fileTarget);
// Step 3. Set target properties
consoleTarget.Layout = @"${date:format=HH\:mm\:ss} ${logger} ${message}";
fileTarget.FileName = "${basedir}/log/library/${shortdate}_stitch.txt";
fileTarget.Layout = "${message}";
// Step 4. Define rules
var rule1 = new LoggingRule("StitchLibrary", LogLevel.Debug, consoleTarget);
NLog.LogManager.Configuration.LoggingRules.Add(rule1);
var rule2 = new LoggingRule("StitchLibrary", LogLevel.Debug, fileTarget);
NLog.LogManager.Configuration.LoggingRules.Add(rule2);
'Knowledge > NLog' 카테고리의 다른 글
[.NET] NLog Event Register 콜백 이벤트 (0) | 2018.04.14 |
---|