作为一名软件开发者,在多年的开发实践中深刻体会到了日志在应用开发中的重要性。在开发过程中,编写日志语句看似是一项混乱的任务,但它在调试应用程序时,尤其是在生产环境中,提供了完美的解决方案。在生产环境中,无法使用简单的CLR调试器,此时日志成为了了解应用程序内部运行过程的唯一方式。不能设置调试监视器,也不能在某个时间点设置断点来停止执行。尽管可以使用debug.assert语句,但这并不方便。总的来说,在经验中,应用程序就像一个黑盒子,对执行过程没有严格的控制。
现在,想简要介绍一下本文的动机。完全可以理解,人们可能会为了调试应用程序而开始使用日志,但同时必须存在一些工具来评估应用程序运行时的日志。在看来,感兴趣的工具应该满足以下承诺:
完全同意,可能还有其他标准来评估日志监听工具,但上述标准是最关心的。
在研究这个话题后,列出了以下工具:
想对上述所有工具表示感谢,但它们都没有满足要求,原因如下:
经过所有这些艰苦的努力,决定自己实现。因为那是唯一剩下的选择,毕竟需要相信自己的技能(是的,可以做到)。
好消息是,在经过一番艰苦的努力和一些深夜的阅读之后,设计了一个工作稳定且满足所有日志需求的应用程序。现在想给大家一些关于讨论的工具的提示。嗯,开发的这个工具被称为LogViewer - 一个简单的日志监听工具,它支持以下行为:
从上面的描述中,可以很清楚地看出,这是一个简单的日志事件监听工具,支持从多个源同时监听日志事件。当开始使用它时,其余的功能将变得更加清晰。