在log4net中为类的每个实例创建日志的最佳方式是什么

本文关键字:创建 日志 最佳 是什么 方式 实例 log4net | 更新日期: 2023-09-27 17:57:39

我们有几个长期存在的对象,每个对象在系统中都属于同一个类。只有大约5或6个,它们是与外部系统的连接。我希望每个实例都有自己的文件,他们可以登录到

最好的方法是什么?我现在只能用程序添加记录器作为答案。

更新:我想避免使用配置文件,因为如果我向不同的远程主机添加新连接,那么我希望它的日志输出转到以连接命名的文件,而不必首先在配置文件中进行破解。如果能自动完成那就太好了。我不知道这是否可以在配置文件中实现,也不需要每次都编辑它。

在log4net中为类的每个实例创建日志的最佳方式是什么

最好的答案是程序日志记录,我遇到了同样的问题,发现它是唯一的解决方案。

要获得更多帮助,请查看此问题(我的)StackOverFlow问题由我发布

我认为你和我的问题是一样的,动态记录器,重新创建记录器,在运行时处理记录器和所有这些东西:)

如果还有任何问题,一定要问,我很乐意帮忙,因为我已经经历了所有这些:)

我实际上可以看到两种可能性:

  1. 将每个日志记录分配给每个连接的不同类别,并将每个类别的日志附加到不同的文件中
  2. 按照您的建议以编程方式创建新的记录器
  3. 使用依赖项注入可以根据需要注入尽可能多的独立记录器

我有一篇文章可能会有所帮助:

http://horth.com/blog/?p=165

这是关于在运行时更改日志文件。您可以做的是将每个实例的文件名传递到您的log4net文件中。这样,您就可以为类的每个实例创建一个日志文件。

至于你关于不想使用配置文件的编辑,这个方法可以解决这个问题,这样你就可以使用配置文件,但仍然有你想要的灵活性。