微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net – Orchard CMS如何进行日志记录?

我正在和Orchard CMS合作,对我来说是更好的CMS.我想了解它是如何进行日志记录的,以及是否可以添加自己的日志记录.我看到Orchard使用NullLogger类,它没有工作.我打开了App_Data.Logs文件夹,并看到有日志文件.但是怎么样我在代码搜索用log4net替换NullLogger的技巧(我猜这是log4net,因为log4net.config的日志格式和格式非常相似),但是我还没有找到.
有人可以回答我:

Orchard如何做日志记录?
>我是否可以添加自己的记录器,如果是,是否有最佳实践呢?

谢谢,安德烈.

解决方法

Autofac模块(Orchard.Logging.LoggerModule要精确)处理.基本上,它扫描每个依赖关系,并使用适当的记录器实例的引用来填充类型为ILogger的所有属性.每个依赖项都拥有自己的名称等于包含类的完整类型名称(包括命名空间)的记录器.

NullLogger只是一个占位符,所以在Autofac设置属性之前,访问该属性将不会抛出NullReferenceExceptions.

扩展认日志记录是一项相当复杂的任务,因为它将涉及三件事情:

>创建ILoggerFactory的自定义实现(就像认的Orchard.Logging.CastleLoggerFactory)和
>创建一个在容器中注册该实现的Autofac模块(像上述的LoggerModule)
>通过使用[OrchardSuppressDependency(“Orchard.Logging.LoggingModule”)装饰新的日志模块来抑制当前的认日志记录模块]

UPDATE

刚才意识到我没有在这里讨论问题的最重要部分:)是的,Orchard使用log4net,以便您可以通过Config / log4net.config文件更改认设置.

原文地址:https://www.jb51.cc/aspnet/245651.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐