记录.net核心2从两个项目写入同一个控制台

时间:2017-11-13 16:20:34

标签: logging asp.net-core

我需要在两个或更多项目的同一个控制台中编写,因此我在文本文件中滚动控制台中的所有内容。有可能吗?

我需要这个,因为我想知道更多项目中同时发生的事情。

在业务环境中管理日志的最佳方法是什么?

我使用内置日志记录的.net core 2

是否可以使用其他工具来执行此操作?一些延伸。 什么是

BR

1 个答案:

答案 0 :(得分:0)

你的问题并不完全清楚。这与多少项目正在发挥作用无关,而更多与这些项目有关。特别是控制台应用程序(ASP.NET Core项目所在的)无法写入同一个控制台,因为每个控制台都在自己的控制台窗口中运行。这是相当合乎逻辑且可以理解的。

但是,如果您正在谈论类库项目等,那么可以轻松地将它们输出到与引用它们的控制台应用程序相同的控制台窗口。事实上,这恰好是自然发生的。如果传入控制台记录器,库方法将最终记录到活动控制台。

因此,根据项目类型,您所谈论的内容要么自然发生,要么完全不可能发生。鉴于你首先要问这个问题,我不得不假设你在谈论多个控制台项目;在这种情况下,你想要的是不可能的。简单明了。

但是,如果您的最终目标是转储到文本文件,则使用实际写入文本文件的记录器。从理论上讲,如果您为每个项目的记录器提供相同的文本文件,则可以将所有输出合并在一起。从逻辑上讲,您可能会遇到并发问题以及文件锁定,因此我无法确定该方法是否正常。为了获得最佳机会,我建议使用支持写入文本文件的实际日志记录解决方案,而不是尝试滚动自己的文本文件记录器。无论如何,这是你最好的,也是唯一的选择。