3

什么是跟踪,应该如何进行?

我在我的项目中包含了一个通用实用程序库,我希望能够从中获得一些输出。我一直在使用 log4net,但我不想让我的常用实用程序库依赖于 log4net。那有意义吗?

编辑:日志记录和跟踪之间是否存在关联?出于某种原因,我是否想将跟踪和登录放到同一个流中?

我是否应该用 System.Diagnostics.Trace.WriteLine(..)s 替换我项目中的一些 log4net Logger.Debug(..)?

4

3 回答 3

4

以下是 .NET BCL 团队的 Mike Rousos 的一些博客文章:

于 2008-10-07T14:44:01.380 回答
0

在您的所有项目和库中使用 log4net 不仅更容易(更好地阅读)吗?通过这种方式,项目可以指定他们想要如何记录内容,而您的公共库的日志记录将只听该项目。

如果您有一个用于公共库的自定义记录器,那么您最终会在一个地方拥有公共日志,而在另一个地方拥有应用程序(项目)日志。

例如,您可以查看 NHibernate 或 Castle ActiveRecord。这两个都可以被视为“通用实用程序”(它们正在执行您的数据访问)。他们都使用 log4net。因此,通过在您的项目中使用它们,并使用 log4net 作为您的项目记录器,您可以指定将所有日志记录数据集中到一个位置。

如果您愿意,您甚至可以以不同的方式设置不同的记录器。以便在 INFO 级别记录您的常见日志,并在 ERROR 记录您的项目日志。


我刚刚发现另一个关于跟踪 VS 日志记录的问题,它似乎很深入。看看它。也许它会有所帮助。跟踪与日志记录以及 log4net 如何适应?

于 2008-10-07T15:01:08.100 回答
-1

我同意 FryHard,或者使用您的自定义类更好地扩展 log4net。

于 2008-10-07T15:12:54.363 回答