gpt4 book ai didi

c# - 没有来自 log4net 的输出

转载 作者:太空宇宙 更新时间:2023-11-03 23:12:47 24 4
gpt4 key购买 nike

我正在尝试通过遵循一些教程并阅读大量关于人们遇到问题的帖子来使用 log4net,因为我无法使其正常工作。

我将这部分放在我的 .config 文件之上

<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="log4net.log" />
<appendToFile value="true" />
<maximumFileSize value="500KB" />
<maxSizeRollBackups value="2" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %level %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="All" />
<appender-ref ref="RollingFile" />
</root>
</log4net>

我在我的 AssemblyInfo 文件中添加了这一行

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Web.config", Watch = true)]

并尝试像这样在 mt 服务中使用记录器

private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); 

private static ILog Log = LogManager.GetLogger(typeof(MyService));

虽然没有创建任何文件,也没有任何其他迹象表明正在发生某些事情。

如何正确使用这个记录器?

最佳答案

创建一个 log4net DebugAppender 以在 Visual Studio 输出窗口中查看 log4net 的输出,这应该会给您一些问题的指示。

添加到app.config:

<appSettings>
<!-- log4net configuration when running in debug mode. -->
<add key="log4net.Internal.Debug" value="true" />
</appSettings>

向 log4net.config 添加一个新的调试附加程序:

<appender name="DebugAppender" type="log4net.Appender.DebugAppender">
<immediateFlush value="true" />
<layout type="log4net.Layout.SimpleLayout" />
</appender>

并将新的附加程序添加到 log4net.config 根目录:

<root>
<level value="ALL" />
<appender-ref ref="RollingFile" />
<appender-ref ref="DebugAppender" />
</root>

运行应用程序并查看 Visual Studio 输出窗口以查看 log4net 的内部日志记录。如果没有输出,则永远不会加载 log4net.config 文件。

关于c# - 没有来自 log4net 的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38459860/

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