C#日志记录类,待完善,考虑多线程

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.IO;

using System.Web.Util;

using System.Threading;

namespace CountApp.App_Code

{

public class SysLog

{

/// <summary>

/// 创建文件夹

/// </summary>

public static void CreateLogFile()

{

string filePath = HttpContext.Current.Server.MapPath(@"~/temp/LogFolder/");

if (!Directory.Exists(filePath))

{

try

{

Directory.CreateDirectory(filePath);

}

catch (Exception ex)

{

throw ex;

}

}

if (!File.Exists(filePath + "LogFile.log"))

{

try

{

FileStream file = File.Create(filePath + "LogFile.log");

file.Dispose();

file.Close();

}

catch (Exception ex)

{

throw ex;

}

}

}

/// <summary>

///向日志文件中写入日志

/// </summary>

/// <param name="logText"></param>

public static void LogWrite(string logText)

{

CreateLogFile();

string filePath = HttpContext.Current.Server.MapPath(@"~/temp/LogFolder/LogFile.log");

StreamWriter sw = new StreamWriter(filePath, true, System.Text.Encoding.UTF8);

try

{

sw.WriteLine("/********************************/");

sw.WriteLine("日期:" + System.DateTime.Now.ToString());

sw.WriteLine();

sw.WriteLine(logText);

sw.WriteLine("/********************************/");

sw.WriteLine();

sw.WriteLine();

sw.Flush();

sw.Dispose();

sw.Close();

}

catch (Exception ex)

{

sw.Dispose();

sw.Close();

}

}

public static void LogWrite(Exception ex)

{

CreateLogFile();

string filePath = HttpContext.Current.Server.MapPath(@"~/temp/LogFolder/LogFile.log");

StreamWriter sw = new StreamWriter(filePath, true, System.Text.Encoding.UTF8);

try

{

sw.WriteLine("/********************************/");

sw.WriteLine("日期:" + System.DateTime.Now.ToString());

sw.WriteLine();

sw.WriteLine("错误源:" + ex.Source);

sw.WriteLine("错误信息:" + ex.Message);

sw.WriteLine("/********************************/");

sw.WriteLine();

sw.WriteLine();

sw.Flush();

sw.Dispose();

sw.Close();

}

catch (Exception e)

{

sw.Dispose();

sw.Close();

}

}

}

}