以編程的方式配置,這是我項目中的,我都不知道為什么使用編程。直接配置不很好嗎,估計他也沒有研究。直接上步驟和代碼:
- 創建一個LoggingConfiguration對象,用來保存配置信息
- 至少創建一個輸出目標對象
- 設置該輸出目標對象的屬性
- 設置LoggingRule對象,並將其添加到LoggingConfiguration對象的LoggingRules集合中
- 啟用該LoggingConfiguration對象(將LogManager.Configuration設定為該LoggingConfiguration對象即可)
using NLog; using NLog.Targets; using NLog.Config; using NLog.Win32.Targets; class Example { static void Main(string[] args) { // Step 1. Create configuration object LoggingConfiguration config = new LoggingConfiguration(); // Step 2. Create targets and add them to the configuration ColoredConsoleTarget consoleTarget = new ColoredConsoleTarget(); config.AddTarget("console", consoleTarget); FileTarget fileTarget = new FileTarget(); config.AddTarget("file", fileTarget); // Step 3. Set target properties consoleTarget.Layout = "${date:format=HH\\:MM\\:ss} ${logger} ${message}"; fileTarget.FileName = "${basedir}/file.txt"; fileTarget.Layout = "${message}"; // Step 4. Define rules LoggingRule rule1 = new LoggingRule("*", LogLevel.Debug, consoleTarget); config.LoggingRules.Add(rule1); LoggingRule rule2 = new LoggingRule("*", LogLevel.Debug, fileTarget); config.LoggingRules.Add(rule2); // Step 5. Activate the configuration LogManager.Configuration = config; // Example usage Logger logger = LogManager.GetLogger("Example"); logger.Trace("trace log message"); logger.Debug("debug log message"); logger.Info("info log message"); logger.Warn("warn log message"); logger.Error("error log message"); logger.Fatal("fatal log message"); } }