2010-01-26 160 views
0

我有一个ASP.NET MVC应用程序托管在webhost4life
什么是保存日志的好方法?
我有我的网站上传到FTP,我只是做有效网站日志(IIS7,托管)

File.AppendAllText("log.txt", "Ooops, we have an error" + e.Message); 

还是有更好的方法访问?发电子邮件?将日志保存到数据库中?

回答

2

我总是尝试登录到数据库,并在数据库无法访问时回退到文件(可能是因为异常)。这允许您直接对日志运行查询和报告,并立即找出问题所在。您还可以通过存储重要的外部事件并对它们进行标记等方式对应用程序执行“健康检查”。

1

避免写入文件系统;这可能会在尝试写入相同文件的线程之间产生冲突/争用条件。数据库是这个问题的绝妙解决方案,并提供一些很好的好处,例如能够从标准化数据轻松生成报告。

另外,你正在登录什么样的信息? IIS日志非常详细。保存这些日志中已有的信息重复工作(服务器写入其日志,然后编写自己的日志),这当然会导致性能下降。

+0

我在webhost4life.com上托管我的网站我不认为我可以访问IIS日志文件。 – 2010-01-26 17:43:06

+0

然后按照Joel的建议坚持数据库;否则你将面临线程之间文件锁定冲突的可能性。数据库故障非常罕见,我不担心写入文件作为备份,但您的应用程序可能并非如此。 – 2010-01-26 19:24:08