我对您在开发的哪个阶段向您的应用程序添加日志记录和/或跟踪感兴趣?
我正在使用 .Net 堆栈和 log4net(通过 commons.logging)。通常采用 TDD 方法进行开发,虽然不可否认不是 100%,但有时我知道在没有测试覆盖的情况下会飙升。我的应用程序都位于服务器端,例如 Web 服务、使用总线消息的 Windows 服务、asp.net mvc 业务管理应用程序。ETC..
我发现自己在我的应用程序服务中使用描述性 logger.INFO "Getting cakes from repository" 来装饰方法。一些工作..“从存储库中获得了 5 个蛋糕。”,然后应用程序域的未处理的异常处理程序到 logger.FATAL 以处理冒泡的意外异常。
但是,我通常最终会在开发结束时而不是在开发开始时返回并应用这些,我可能只有一两个。我发现我很少用记录器来装饰任何较低级别的类,例如 ICakeRepository 的实现,因为它似乎毫无意义。
对于通过配置打开的跟踪,我正在考虑使用 IOC 框架拦截方法调用和实例创建,这应该处理现场故障排除而不是大量跟踪人口。