gpt4 book ai didi

c# - 仅使用一个(根)记录器时的 Log4net 重复条目

转载 作者:太空狗 更新时间:2023-10-29 23:12:56 25 4
gpt4 key购买 nike

我的 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 项目的 Controller 类中调用。

我在其他问题中读到,当使用多个记录器并将消息传播到根记录器时可能会发生这种情况,但是,在这种情况下我只使用根记录器。

最佳答案

问题似乎出在 AWS SDK 的特定配置上:

     <add key="AWSLogging" value="log4net" />

不知何故,这复制了 appender 并导致了双重消息。

要修复,只需删除此设置或将值更改为“无”。

关于c# - 仅使用一个(根)记录器时的 Log4net 重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41045071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com