登录Umbraco的最佳做法是什么?

Mis*_*vic 6 logging log4net umbraco

我注意到至少有两种方法可以在Umbraco中编写日志.一种方法是使用LogHelper类,另一种方法是直接使用方法获得的实例的log4net.LogManager.GetLogger方法.毋庸置疑,LogHelper本身也使用log4net.

我添加了一个自定义日志appender,将appender的文件目标设置为自定义文件(与默认文件不同)并尝试两种方式,并注意到日志中的结果或多或少相同.LogHelper的条目如下所示:

错误ProjectName.Controllers.Backoffice.DataController - [P4876/T1/D2]测试

而log4net的条目如下所示:

错误ProjectName.Controllers.Backoffice.DataController - 测试

但是,当我搜索有关登录Umbraco的帖子时,我经常找到直接使用log4net的示例,而不是使用Umbraco CMS提供的LogHelper类.

所以基本上,有没有什么好的理由开发人员应该使用一种方式而不是另一种方式,或者仅仅是使用库的方法而不是使用CMS提供的帮助类(或者相反的方式 - 帮助图书馆)?

Rob*_*ter 16

LogHelper是一个日志记录的便利包装器 - Logging框架的一部分,Umbraco.Core.Logging.ILogger它的核心是接口.默认情况下使用log4net实现,但也有一个内部DebugDiagnosticsLogger类通过输出所有内容Debug.WriteLine.

通常,如果您正在使用Umbraco库进行开发,那么LogHelper就是要走的路.


Jan*_*ker 5

创建 LogHelper 可能是为了让开发人员不必担心在 Umbraco(log4net、Elmah 等)中使用了哪个特定的日志提供程序。所以理论上它可能会增加一点开销,但它更容易使用。

我认为没有实际的“最佳实践”,但我会使用 LogHelper :-)