我有一个简单的c#日志记录应用程序,它写入日志文件,然后通过HTTP-POST或基于Windows共享文件夹将其上传到“服务器”。
配置应用程序的“正确”方法是什么,每个使用不同的上传方法有两个版本?
我应该在app.config中设置一个参数,还是应该编译2个二进制文件?
答案 0 :(得分:3)
让你的应用程序在运行时读取配置文件(app.config,自定义xml文件)并根据它决定做什么;它比编译同一个应用程序的多个版本更好。
另外,请查看NLog以获取更完整的日志记录解决方案。 NLog使用在运行时读取的xml file;它允许将所有日志消息保存到文件(或多个文件,基于错误级别),控制台或忽略某些错误。灵活性是一件好事。您并不总是能够只为很小的变化重新编译应用程序。
答案 1 :(得分:1)
嗯,这取决于使用您的日志记录应用程序的项目。
如果您已经在很多其他项目中使用它并且无法重构它们。分离的组件可能是一种方法。如果你从头开始,最后通过配置来做。当我理解你纠正时,你正在谈论不同的Logger
类型。
通常,我建议您不要编写自己的日志记录应用程序。使用现有的,有非常好的(NLog,log4net,EnterpriseLibrary Logging)。您不希望在日志记录框架中出现错误,因此请使用在数百万个项目中成功测试并且稳定的内容。
如果你需要不同的记录器,你可以扩展这些框架。