我想我可能会忽略为您的应用程序提供日志框架的重点.在所有的小应用程序中,我总是编写一个小的"Logging"类,只是将日志消息传递给写入文件的方法.
第三方日志框架如log4net的目的是什么?它是日志写入操作的线程安全还是我错过了什么?
这是一个很好的问题.
第一个原因是"为什么不呢?" 如果您使用的是日志框架,那么您将获得使用已打包的东西的可维护性优势.
第二个原因是伐木很微妙.不同的线程,会话,类和对象实例都可以在日志记录中发挥作用,并且您不希望必须即时解决此问题.
第三个原因是您可能会在代码中发现性能瓶颈.确定您的代码很慢,因为您正在写入文件而没有缓冲,或者您的硬盘驱动器磁盘空间不足,因为记录器没有翻转并压缩旧文件可能会让您感到痛苦.
第四个原因是您可能希望附加到syslog,或写入数据库,或套接字或不同的文件.框架内置了此功能.
但实际上,第一个答案是最好的答案; 写自己的好处和一大堆缺点都没什么好处.