您的位置:首页 > 编程语言

使用NLog实现一个简单的日志记录(包含源代码)

2011-10-06 18:00 781 查看
目前比较流行.net的Log框架是log4net,不过个人觉得log4net配置比较繁琐,这里我向大家推荐一个比较简单实用的log框架:NLog。
有兴趣的朋友可以到http://www.nlog-project.org/下载源代码和demo,这里我就不详细介绍了。
我尝试做了一个简单的demo,目的是实现一个简单的日志记录, 愿跟大家一起分享。代码如下:

public class Log
{
Create log instance

Logger logger;

public Log()
{
LogDate = DateTime.Now;
SimpleConfigurator.ConfigureForTargetLogging(GetFileTarget());
logger = LogManager.GetCurrentClassLogger();
}

public void Write(Exception ex)
{
try
{
logger.Info(ex.Message + "\r \n" + ex.StackTrace);
}
catch
{

}
}

public void Write(string message)
{
try
{
logger.Info(message);
}
catch
{

}
}

private string GetLogFile()
{
string fileName = "Log_" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt";
return Path.Combine(AppDomain.CurrentDomain.BaseDirectory + "log", fileName);
}

private FileTarget GetFileTarget()
{
FileTarget ft = new FileTarget();
ft.FileName = GetLogFile();
ft.Layout = "${longdate} ${message}";
ft.KeepFileOpen = false;
ft.Encoding = "iso-8859-2";
ft.OpenFileCacheTimeout = 10;
ft.OpenFileCacheSize = 1;
return ft;
}

private DateTime logDate;
public DateTime LogDate
{
get { return logDate; }
set { logDate = value; }
}
}

使用的时候只需要一行代码:
Log.DefaultLog().Write("aaa is ok.");
如果需要记录异常情况,代码如下:
Log.DefaultLog().Write(ex);

源代码下载:/Files/binbin1845/NLogWebTest.rar

/content/4511279.html

http://www.cnblogs.com/xugang/archive/2008/04/09/1145384.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐