你的位置:首页 > 软件开发 > ASP.net > 将Log4Net 日志保存到mongodb数据库实践

将Log4Net 日志保存到mongodb数据库实践

发布时间:2016-02-21 22:00:08
log4net的大名早有耳闻,一直没真正用过,这次开发APP项目准备在服务端使用log4net。 日志的数据量较大,频繁的写数据库容易影响系统整体性能,所以独立将日志写到mongodb数据库是不错的选择。---经过2天的摸索,总结出本文档。 github有个开源项目log4m ...
log4net的大名早有耳闻,一直没真正用过,这次开发APP项目准备在服务端使用log4net。 日志的数据量较大,频繁的写数据库容易影响系统整体性能,所以独立将日志写到mongodb数据库是不错的选择。---经过2天的摸索,总结出本文档。 执行写日志log.Debug(object)之前,先把各种自定义内容通过LogicalThreadContext设置好。然后再执行log.Debug(object)。默认loggingEvent.RenderedMessage是获取object 的ToString()的值,这里需要重写一下ToString(),将类转化为BsonDocument。为了方便,直接用 BsonDocument.Parse(message)来判断是复杂对象还是String。直接用try catch来处理,对性能会有一点影响。做了测试相比直接传递String不需要BuildCustomMessage ,传递复杂对象时性能相差6%左右。这6%主要是对象ToString()转化为BsonDocument,和BuildCustomMessage两部份。配置的值在public class MongoDBAppender : AppenderSkeleton这个类里会直接获取,不需要做额外处理  <CollectionName value="yyyyMM"/>这么写的目的是让日志根据日期来自动分表。通过修改配置就能按日、按月、按年来分表。

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:将Log4Net 日志保存到mongodb数据库实践

关键词:MongoDB

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录