【发布时间】:2016-12-08 17:10:45
【问题描述】:
我的 log4net 配置如下所示:
<log4net>
<appender name="CloudWatchLogsAppender" type="CloudWatchAppender.CloudWatchLogsAppender, CloudWatchAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %level %logger.%method - %message%newline" />
</layout>
<groupName value="agroupname" />
<streamName value="astreamname" />
</appender>
<root>
<level value="INFO" />
<appender-ref ref="CloudWatchLogsAppender" />
</root>
<logger name="Amazon">
<level value="OFF" />
</logger>
</log4net>
在类中,我用
实例化记录器private static readonly ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
并调用 Log.Error(message);只有一次,但在我的日志中,所有错误都是重复的。此外,此方法正在 WebApi 项目的控制器类中调用。
我在其他问题中读到,当使用多个记录器并且它们将消息传播到根记录器时可能会发生这种情况,但是,在这种情况下我只使用根记录器。
【问题讨论】:
-
我也试过删除那里的亚马逊记录器,但没有任何区别。
-
重复的日志条目是否完全相同,精确到毫秒?或者您的应用程序代码是否会无意中记录两次?
-
它们完全相同,毫秒和线程等时间相同。
-
我已经删除了
visual-studio和amazon-cloudwatchlogs标签,因为这个问题也不涉及。 -
尝试查看
log4net.LogManager.GetRepository().GetAppenders()并查看返回的内容
标签: c# log4net log4net-configuration amazon-cloudwatchlogs