使用System; 使用System.Collections.Generic; 使用System.Linq; 使用System.Text;
命名空间clogger { 课程 { static void Main(string [] args) { CLogger.Trace(“我的班级”); CLogger.Error( “消息”); CLogger.Warning( “战争”);
}
}
使用System; 使用System.Collections.Generic; 使用System.Linq; 使用System.Text; 使用System.IO;
命名空间clogger { CLogger班 { static FileStream fs = new FileStream(@“c:\ vijay \ mcb.txt”,FileMode.OpenOrCreate,FileAccess.Write); static StreamWriter m_streamwriter = new StreamWriter(fs);
public static void Trace(string p)
{
m_streamwriter.WriteLine("Trace(string p)");
}
public static void Error(string p)
{
m_streamwriter.WriteLine("Error(string p)");
m_streamwriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamwriter.WriteLine("File writer operation starts: ");
m_streamwriter.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(), DateTime.Now.ToLongDateString());
}
public static void Warning(string p)
{
m_streamwriter.WriteLine("Warning(string p)");
m_streamwriter.Flush();
}
}
}
答案 0 :(得分:1)
如果您正在考虑使用.Net进行日志记录,请查看Log4Net(如果您不想让您的代码依赖于第三方软件,请查看自定义TraceListener)。 Log4Net是一个开源项目,在日志记录方面经常使用。我发现this教程非常有用,虽然官方网站也会为您提供大量信息,但我发现这更容易上手。顺便说一句,我认为Log4Net的一大优点是,如果你决定要登录到xml文件,那么你的app.config就是一个简单的改变,即没有编写额外的代码。
为什么要将记录器作为服务运行?如果你只写一个本地Txt文件l4n将完成这项工作,否则你仍然可以编写自己的远程appender,然后编写一个socketlistener或wcf udp监听器,将你的数据写入一个持久的地方。