You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using NLog;
|
|
|
|
|
using NLog.Config;
|
|
|
|
|
using NLog.Fluent;
|
|
|
|
|
|
|
|
|
|
namespace NLogStudy.ConsoleApp.Default
|
|
|
|
|
{
|
|
|
|
|
public class NLogWrap<T>
|
|
|
|
|
{
|
|
|
|
|
public Logger Logger;
|
|
|
|
|
public NLogWrap()
|
|
|
|
|
{
|
|
|
|
|
Logger = NLog.LogManager.GetLogger(typeof(T).FullName);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public Logger GetLogger()
|
|
|
|
|
{
|
|
|
|
|
return LogManager.GetCurrentClassLogger();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static LoggingConfiguration GetConfig()
|
|
|
|
|
{
|
|
|
|
|
LoggingConfiguration configuration = new LoggingConfiguration();
|
|
|
|
|
|
|
|
|
|
// Targets where to log to: File and Console
|
|
|
|
|
var logfile = new NLog.Targets.FileTarget("logfile") { FileName = "file.txt" };
|
|
|
|
|
var logconsole = new NLog.Targets.ConsoleTarget("logconsole");
|
|
|
|
|
|
|
|
|
|
// Rules for mapping loggers to targets
|
|
|
|
|
configuration.AddRule(LogLevel.Info, LogLevel.Fatal, logconsole);
|
|
|
|
|
configuration.AddRule(LogLevel.Debug, LogLevel.Fatal, logfile);
|
|
|
|
|
|
|
|
|
|
return configuration;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|