当前位置:  开发笔记 > 后端 > 正文

写入ASP.NET中的日志文件

如何解决《写入ASP.NET中的日志文件》经验,为你挑选了2个好方法。

我使用File.AppendAllText方法将事件数据写入asp.net httphandler中的日志文件.我担心同时收到多个请求时会发生什么.AppendAllText是否锁定了它要写入的文件?



1> Nick Berardi..:

我建议使用TextWriterTraceListener而不是试图管理你的自我.

设置和使用非常简单:

TextWriterTraceListener logListener = new TextWriterTraceListener("C:\log.txt", "My Log Name");
Trace.Listeners.Add(logListener);

然后记录一些东西:

Trace.WriteLine("Log this text");

它使用起来非常简单,并且SQL,事件日志,文本文件等有许多不同类型的侦听器.因此,如果要更改侦听器,则无需调整代码.



2> Steven A. Lo..:

不,你应该有一个保护日志文件写入的静态锁定对象,例如

public static object LockingTarget = new object();

public void LogToFile(string msg)
{
    lock(LockingTarget)
    {
        //append to file here as fast as possible
    }
}

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有