多服务记录 - 最佳实践

时间:2013-02-19 09:34:02

标签: c# logging

我的系统包含许多组件:Windows服务,Web服务和Web站点,所有组件都是用C#编写的。目前,所有组件都使用包装器DLL使用NLog登录到数据库,每个组件都为它保存一个单独的配置文件(几乎相同)。

我想将所有配置文件统一到NLog的单个全局配置中。从每个组件获取全局配置的最佳方法是什么?一个全局文件?配置提供程序服务?

1 个答案:

答案 0 :(得分:0)

我有类似的要求(虽然没有专门针对NLog)。我有一个运行7种不同服务的系统,每个服务都需要记录活动以供以后报告。

我的解决方案:我创建了第8个组件......一个显示器。与此同时,我在其他7项服务中使用了XML序列化。他们会将XML“数据包”序列化到已知位置的磁盘,监视器会定期扫描。在扫描时,它将收集数据包,反序列化它们,并按日期时间顺序生成官方日志文件。

我正在研究的另一个选项是利用命名管道直接与监视器通信,避免文件I / O以及与之相关的所有伴随问题。