模板 Log4Net 配置

Template Log4Net Configuration

我正在尝试跨多个项目简化我们的 log4net 配置。

我们有多个服务都创建日志。它们的附加程序在每个服务中定义 app.config。这会造成很多重复。

我想将 log4net 配置从这里转移到一个 Log4NetConfiguration.config 文件中,我可以 link 从每个项目中转移到类似于这个问题中接受的答案:

Share log4net configuration across multiple projects

这样开发时我们只需要更改一个地方的配置 - 但用户可以根据需要配置不同的服务日志文件。

我们从公共实用程序程序集调用 log4net.Config.XmlConfigurator.Configure() - 我如何才能从 运行 服务中加载 Log4NetConfiguration.config 的相关版本?

根据 StuartD 的评论,它位于 bin 目录中。

因此,您只需使用 Assembly.GetExecutingAssembly().Location 即可获取与 运行 应用程序相关的配置文件的位置。

然后按照建议使用 XmlConfigurator.ConfigureAndWatch(fileInfo)。