namespace Log.Utils
{
public class TextLogUtil
{
private static readonly object locker = new object();
private static StreamWriter sw;
private static Timer changePathTimer;
private static readonly int CHANGEPATHINTERVAL = 60 * 1000;
private static readonly string LOGFILENAMEFORMAT = "yyyyMMdd_HH";
private static readonly string LOGLINEFORMAT = "HH:mm:ss_ffff";
private static LogLevel logLevel;
static TextLogUtil()
{
changePathTimer = new Timer(state =>
{
lock (locker)
{
Close();
InitStreamWriter();
}
}, null, CHANGEPATHINTERVAL, CHANGEPATHINTERVAL);
InitStreamWriter();
}
#region internal
internal static void Close()
{
try
{
if (sw != null)
sw.Close();
}
catch
{
}
}
#endregion
#region private
private static void InitStreamWriter()
{
logLevel = LogLevel.Debug;
try
{
sw = new StreamWriter(GetLogFileName(), true, Encoding.UTF8, 1024);
sw.AutoFlush =
C#开发日志工具类
于 2024-07-30 10:22:01 首次发布