【问题标题】:log4net: what am I doing wrong?log4net:我做错了什么?
【发布时间】:2010-05-08 16:42:47
【问题描述】:

作为一个 log4net newb / boob,我刚刚从 NHibernate 示例项目中复制了几行代码,在该项目中我可以看到 log.txt 文件已更新。有没有快速回答为什么我没有创建文件?

干杯,
浆果

[assembly: log4net.Config.XmlConfigurator(Watch = true)]

我在这里看到另一个帖子说这应该放在 AssemblyInfo 中,但在示例项目中,这只是静态帮助器类中的另一行。不想“弄乱”assemblyInfo 我还将它放在一个静态助手中,以及以下内容以实际登录同一个静态助手类:

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

在 app.config 中,我有

<configSections>
    <section
        name="log4net"
        type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"
    />
</configSections>

    <!-- This section contains the log4net configuration settings -->
<log4net>
    <!-- Define an output appender (where the logs can go) -->
    <appender name="LogFileAppender" type="log4net.Appender.FileAppender, log4net">
        <param name="File" value="log.txt" />
        <param name="AppendToFile" value="false" />
        <layout type="log4net.Layout.PatternLayout, log4net">
            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt; - %m%n" />
        </layout>
    </appender>
    <appender name="LogDebugAppender" type="log4net.Appender.DebugAppender, log4net">
        <layout type="log4net.Layout.PatternLayout, log4net">
            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt; - %m%n"/>
        </layout>
    </appender>

    <!-- Setup the root category, set the default priority level and add the appender(s) (where the logs will go) -->
    <root>
        <priority value="ALL" />
        <appender-ref ref="LogFileAppender" />
        <appender-ref ref="LogDebugAppender"/>
    </root>

    <!-- Specify the level for some specific namespaces -->
    <!-- Level can be : ALL, DEBUG, INFO, WARN, ERROR, FATAL, OFF -->
    <logger name="NHibernate">
        <level value="ALL" />
    </logger>
</log4net>

【问题讨论】:

    标签: log4net log4net-configuration


    【解决方案1】:

    你做对了。

    开启此设置:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <appSettings>
            <add key="log4net.Internal.Debug" value="true"/>
        </appSettings>
    </configuration>
    

    并将生成的输出粘贴到此处。

    【讨论】:

    • 只是想我会把它写下来,因为当人们把头撞在同一堵墙上时; )
    猜你喜欢
    • 1970-01-01
    • 2012-03-13
    • 2011-06-01
    • 1970-01-01
    • 2021-04-14
    • 2021-04-19
    • 2017-03-13
    • 2017-01-18
    • 2013-06-24
    相关资源
    最近更新 更多