"嘈杂"的记录问题

Ach*_*les 4 .net logging

在整个企业中,我们有许多应用程序将活动记录到文本文件以用于诊断目的.通常,如果某些内容失败或中断,则会发送电子邮件通知以通知我们的团队出现问 此外,我们还有一个监控应用程序,当应用程序的活动时间超过预期时,它会通过电子邮件通知我们的团队.我们面临的问题是日志已经转化为噪音,这意味着他们无法提供有关失败和成功的快速信息.我目前正在探索一个特定于我们企业中应用程序的一般体系结构的解决方案,这引出了我的问题:

什么是一些常见的方法,技术,甚至可能提供可快速查看和读取的简明日志信息的框架?

dan*_*ben 5

Log4J和其他日志记录框架提供了日志级别的概念,您可以在其中为每个日志语句指定优先级.然后在运行时,您可以设置日志文件本身的级别 - 只有具有该优先级或更高优先级的日志语句才能通过.因此,例如,您可以将生产系统设置为仅记录WARN或ERROR级别的消息,而您的开发环境可以设置为以DEBUG或更高级别记录任何内容.

这是一个很好的解决方案,因为它不需要对代码进行任何更改(例如为每个新构建添加/删除日志语句),并且当您需要执行诸如调试特定问题之类的操作时,可以轻松地(临时)重新配置.

如果您的系统使用.NET体系结构,则可以使用一个名为log4net的log4j端口(尽管显然,替换现有系统需要更改代码).但是,这个问题询问了一般的设计原则,而不是如何处理现有的代码库,所以我认为这个答案就足够了.

编辑:因为你有使用全新框架的奢侈,这个页面有一个备选列表,但由于我自己在Java应用程序中的使用,我对log4j很偏爱.