C#日志类简单实使有源代码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一个简单实用的C#日志类

不管是Web应用还是Windows Forms 应用,系统日志我们都经常用到。日志可以帮助我们跟踪监视系统的运行状况,及时发现错误,输出调式信息等。记录日志的方法很多,比如用文本文件、XML文件、数据库等。而用文本文件记录日志是最常用的方法之一。

这里就是一个用文本文件记录日志的简单实用的日志类,它有如下几个特点:

1)按日期每天生产不同日志文件,方便按照日期来查找日志。

2)按日志类型生产不同的文件,比如跟踪信息、警告信息、错误信息用不同的日志文件来记录;方便我们查找指定类型的日志。

3)可以指定保持日志文件文件夹,如果不指定日志文件夹,Web应用保存到Bin文件夹,Windows Forms应用保存到.EXE文件所在的文件夹。

4)可以指定日志文件的前缀。

public class LogManager

{

private static string logPath = string.Empty;

///

///保存日志的文件夹

///

public static string LogPath

{

get

{

if (logPath == string.Empty)

{

if (System.Web.HttpContext.Current == null)

// Windows Forms 应用

logPath = AppDomain.CurrentDomain.BaseDirectory;

else

// Web 应用

logPath = AppDomain.CurrentDomain.BaseDirector

y + @"bin\";

}

return logPath;

}

set{ logPath = value;}

}

private static string logFielPrefix = string.Empty;

///

///日志文件前缀

///

public static string LogFielPrefix

{

get { return logFielPrefix; }

set { logFielPrefix = value; }

}

///

///写日志

///

public static void WriteLog(string logFile, string msg)

{

try

System.IO.StreamWriter sw = System.IO.File.AppendText( LogPath + LogFielPrefix + logFile + " " +

DateTime.Now.ToString("yyyyMMdd") + ".Log"

);

sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:s s: ") + msg);

sw.Close();

}

catch

{ }

}

///

///写日志

///

public static void WriteLog(LogFile logFile, string msg)

{

WriteLog(logFile.ToString(), msg);

}

}

///

///日志类型

///

public enum LogFile

{

Trace,

Warning,

Error,

}

使用方法:

LogManager.LogFielPrefix = "ERP ";

LogManager.LogPath = @"C:\";

LogManager.WriteLog(LogFile.Trace, "A test Msg.");

相关文档
最新文档