我有一个C#控制台应用程序项目,它使用log4net作为日志库.整个应用程序中都有日志语句(log.Debug(),log.Error()等),它们在程序运行时打印到控制台.
在生产环境中更改日志记录语句的最佳方法是什么,以最大限度地减少日志记录导致的执行时间?我希望一些语句根本不打印出来,并且一些日志语句只能在生产过程中打印出来.
我正在考虑在Web.config文件中添加新设置,该文件确定日志记录的更改方式.但是我想我还需要覆盖log.Debug()和log.Error()方法来处理新设置,但我不确定如何做到这一点.任何人都可以建议吗?
解决方法:
您应该从应用程序中抽象出日志库,这样您就可以控制日志记录行为,并使您的项目松散地耦合到您的log4net依赖项.
它可能不是你希望的简短的单行答案,但我强烈建议使用这种设计模式,因为它可以节省你很多时间. Heres a brief article that shows the concept