C#创建日志通用类<包含log4net日志和特殊日志(年/月/日/文件
2012-08-24 19:42
513 查看
public
class
LogerHelper
{
public
LogerHelper()
{
SetConfig();
}
private
static
ILog loginfo = LogManager.GetLogger(
"myLogger"
);
private
static
void
SetConfig()
{
log4net.Config.XmlConfigurator.ConfigureAndWatch(
new
System.IO.FileInfo(
"Configs/Log4net.xml"
) );
}
private
static
bool
IsLoadConfig =
false
;
/// <summary>
/// 记录日志
/// </summary>
/// <param name="info">提示信息</param>
public
static
void
WriteLog(
string
info )
{
if
(!IsLoadConfig)
{
SetConfig();
IsLoadConfig =
true
;
}
if
(loginfo.IsInfoEnabled)
{
loginfo.Info( info );
}
}
/// <summary>
/// 记录异常
/// </summary>
/// <param name="info">错误</param>
/// <param name="ex">Exception</param>
public
static
void
WriteLog(
string
info,Exception ex )
{
if
(!IsLoadConfig)
{
SetConfig();
IsLoadConfig =
true
;
}
if
(loginfo.IsErrorEnabled)
{
loginfo.Error( info,ex );
}
}
/// <summary>
/// 一天一个日志
/// 生成方式:目录:Error/年/月/日/文件名.log
/// </summary>
/// <param name="message"></param>
public
static
void
LogToFile(
string
message )
{
try
{
DirectoryInfo dir;
//修改记录日志为C盘根目录,并且注释判断当前程序目录内是否存在log日志文件夹
if
(!Directory.Exists(
"Error"
))
{
dir = Directory.CreateDirectory(
"Error"
);
dir.Create();
}
else
{
if
(!Directory.Exists(
@"Error/"
+ DateTime.Today.Year.ToString() +
"/"
+ DateTime.Today.Month.ToString() +
"/"
+ DateTime.Today.Day.ToString() ))
{
Directory.CreateDirectory(
@"Error/"
+ DateTime.Today.Year.ToString() +
"/"
+ DateTime.Today.Month.ToString() +
"/"
+ DateTime.Today.Day.ToString() );
}
}
using
(StreamWriter writer =
new
StreamWriter(
@"Error/"
+ DateTime.Today.Year.ToString() +
"/"
+ DateTime.Today.Month.ToString() +
"/"
+ DateTime.Today.Day.ToString() +
"/更新的接警单编号.log"
,
true
))
{
try
{
writer.Write(
"时间:t"
+ DateTime.Now.ToString() +
"t t t t"
);
writer.WriteLine( message );
//writer.WriteLine( Environment.NewLine );
writer.Flush();
writer.Close();
}
catch
(Exception exec)
{
WriteLog(
"写入错误"
,exec );
writer.Dispose();
}
}
}
catch
(Exception ex)
{
WriteLog(
"创建错误"
,ex );
}
}
}
//用的方法如下:
LogerHelper.LogToFile(
"创建日志"
);
//这个将生成诸如这样的Error/年/月/日/文件名.log的日志LogerHelper.WriteLog("单独的日志");
//这个将写入到Error/log.log文件夹下,只记录一个单独的infoLogerHelper.WriteLog("单独的日志",ex);
//这个也将写入到Error/log.log文件夹下,记录单独的info,和一个异常信息//注意:此方法在winform里边是不用配置log4net的节点的,可以将附件中的log4net
相关文章推荐
- (原创)--C#创建日志通用类<包含log4net日志和特殊日志(年/月/日/文件名.log)>
- C# 实现一个Log日志文件 以每2Mb创建一个新的日志
- c# 文件日志处理 需要log4net配置
- C# 读取Log4net 日志文件
- C# 创建文件日志记录
- C#使用正则表达式读取log4net日志文件
- C#动态创建日志文件,若文件存在,追加记录
- [C#]Log4net创建日志及简单扩展
- C# 创建系统日志、文件日志
- c# log4net 日志输出到 本地文件 textbox listview DEMO
- VS2010 c#利用GDAL创建金字塔文件(金字塔文件包含在文件内部)
- log4net按日期生成日志文件-C#学习笔记
- 一个经过改良的XMLHelper(包含了序列化,反序列化,创建xml文件,读取节点,C#对象与xml文件的相互转换等等。)
- C# 创建Windows服务 +Log4Net 日志
- C#中使用Log4net日志输出到本地文件、Textbox或Listview
- C# 实现一个Log日志文件 以每2Mb创建一个新的日志
- C# 文件操作(读取文本/日志文件,读取文件列表,创建HTML,写入日志文件)
- log4net使用C#代码配置文件名,记录日志
- C# 用Linq的方式实现对Xml文件的基本操作(创建xml文件、增删改查xml文件节点信息)
- 【转】C# 文件操作 全收录 追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件....