如何检查log4net的日志路径? [英] How to check log4net log path?

查看:376
本文介绍了如何检查log4net的日志路径?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的配置文件是:

<log4net  xsi:noNamespaceSchemaLocation="http://csharptest.net/downloads/schema/log4net.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <appender name="InfoFileAppender" type="log4net.Appender.RollingFileAppender">
            <file value="D:/" />
            <appendToFile value="true" />
            <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
            <rollingStyle value="Date" />
            <maxSizeRollBackups value="100" />
            <datePattern value="YYYY-MM-DD'.log'"/>
            <maximumFileSize value="1024KB" />
            <staticLogFileName value="false" />
            <encoding value="utf-8"/>           
            <filter type="log4net.Filter.LevelRangeFilter">
                <param name="LevelMin" value="INFO" />
                <param name="LevelMax" value="INFO" />
            </filter>
            <layout type="log4net.Layout.PatternLayout">
                <conversionPattern value="%date %-5level %logger  - %message%newline" />
            </layout>
        </appender>
        <appender name="ErrorFileAppender" type="log4net.Appender.RollingFileAppender">
            <file value="D:/" />
            <appendToFile value="true" />
            <rollingStyle value="Size" />
            <maxSizeRollBackups value="100" />
            <maximumFileSize value="10240KB" />
            <datePattern value="YYYY-MM-DD'.log'"/>
            <staticLogFileName value="true" />
            <encoding value="utf-8"/>
            <filter type="log4net.Filter.LevelRangeFilter">
                <param name="LevelMin" value="WARN" />
                <param name="LevelMax" value="FATAL" />
            </filter>
            <layout type="log4net.Layout.PatternLayout">
                <conversionPattern value="%date %-5level %logger - %message%newline" />
            </layout>
        </appender>
        <root>
            <level value="INFO" />
            <appender-ref ref="InfoFileAppender" />
            <appender-ref ref="ErrorFileAppender" />
        </root>
    </log4net>

在app.config中。

in app.config.

不过,它在D盘没有日志文件:!!!!

But it has no log file in disk D:!!!!

推荐答案

只是验证你的配置 - 工作正常。你可能没有正确初始化log4net的。你应该加入到的的AssemblyInfo.cs 的文件:

Just verified your config - works fine. You probably didn't initialize log4net properly. You should add into AssemblyInfo.cs file:

[assembly: XmlConfigurator(Watch = true)]

或者你可以使用的 XmlConfigurator.ConfigureAndWatch 方法或者干脆

Or you can use XmlConfigurator.ConfigureAndWatch method or simply

XmlConfigurator.Configure();



不像NLOG,log4net的无法初始化。

Unlike NLog, log4net cannot initialize itself.

注意的:你应该改变你的约会模式 YYYY-MM-dd'.log - 年份和日期应为小写字母。你也可以写几个层次单追加程序。没有必要建立哪个写入同一文件中的两个追加程序

NOTES: You should change your date pattern to yyyy-MM-dd'.log' - year and day should be lowercase letters. Also you can write several levels with single appender. There is no need to create two appenders which write to same file.

这篇关于如何检查log4net的日志路径?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆