我与其他开发人员合作开发了一些ASP.NET项目,我正在考虑构建一个自制的日志记录解决方案。但在开始任何事情之前,我想知道是否存在类似于我打算编码的内容。
我正在寻找可用于创建日志记录Web服务的工具,框架或其他任何东西。
我们所有的网站都可以访问该服务。它提供了一组方法来将日志记录信息发送到服务,并将它们存储在数据库中。我们可以想象一个名为“Trace(String message,TraceLevel level)”的方法,其中第一个参数可以是包含一组结构化有用信息(错误,调试或访问)的XML字符串。
一个有趣的功能是人们可以订阅一组日志。例如,如果我正在处理“AnotherStackOverlow.com”项目并且我想接收错误日志,我可以轻松订阅选择相应TraceLevel的系统。
有没有人使用过这样的系统?
我也对有关安全问题,编码问题,设计问题等的一般性评论感兴趣。
由于
答案 0 :(得分:5)
在我看来,通过Web服务进行日志记录是一个非常糟糕的主意。您依赖于可能存在或可能不存在的机器之间的连接,这将导致数据丢失。
我会看看Elmah这是一个相当容易使用的ASP.NET日志工具。
你可以让Elmah为你做日志记录。然后,您可以编写一个单独的应用程序来聚合所有日志数据(如果您将Elmah配置为登录到数据库,这非常简单),以便可以从一个位置查看它。