我正在使用log4net记录我们网站的错误/信息,效果很好。
是否可以根据登录的用户/ sessionid或类似内容来控制日志记录级别。 IE浏览器。用户给我们一个问题,我们为他们打开了详细的日志记录,这样我们就可以排除故障,但只会通过详细的日志记录减慢用户的负担?
显然我可以明确编码,但我想知道log4net中是否有任何内置?也许通过使用具有全局属性的过滤器?
答案 0 :(得分:0)
您应该查看过滤器,也可以自己编写。或者制作自己的日志追加器,为您进行过滤。
过滤器:
<filter type="YourNameSpace.UserFilter">
<user value="myusername"/>
</filter>
然后将SkeletonFilter类实现为YourNameSpace.UserFilter
如果您使用窗口身份验证和模拟,您还可以使用log4net.Filter.PropertyFilter,它允许您过滤消息中的属性。用户可以通过UserId属性找到:
<filter type="log4net.Filter.PropertyFilter">
<key value="UserID" />
<stringToMatch value="MyUserName" />
</filter>