Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 警告级别不显示log4net_C#_Xml_Log4net - Fatal编程技术网

C# 警告级别不显示log4net

C# 警告级别不显示log4net,c#,xml,log4net,C#,Xml,Log4net,我有以下到log4net的XML <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> <log4net> <root> <level value="ALL" /> <

我有以下到log4net的XML

  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>
  <log4net>
    <root>
      <level value="ALL" />
      <appender-ref ref="FileAppenderXml" />
    </root>
    <appender name="FileAppenderXml" type="log4net.Appender.RollingFileAppender">
      <file type="log4net.Util.PatternString" value="logs\%date{yyyy}\%date{MM}\%date{yyyyMMdd}.xml"/>
      <appendToFile value="true"/>
      <rollingStyle value="Date" />
      <datePattern value="yyyyMMdd" />
      <layout type="log4net.Layout.XmlLayoutSchemaLog4j">
        <locationInfo value="true"/>
        <conversionPattern value="%date [%thread] %-5level - %message%newline" />
      </layout>
      <param name="Encoding" value="utf-8" />
    </appender>
  </log4net>

可能是XML配置还是代码?

所以问题似乎是当警告事件触发时,它显示为“INFO”

根据

在级别信息上记录时,实际使用的级别不是信息,而是
LoggerRepository.LevelMap[“INFO”]
的值。默认值为Info,但可以通过重新配置标高贴图来更改


看起来很奇怪。您是否查看了实际的XML文件,以查看是否存在
WARN
日志?是的,并且会显示除Warm之外的所有事件类型(级别)。我也觉得奇怪。你有
LevelRangeFilter
吗?我不熟悉Yalv,所以我不确定你怎么知道只有WARN没有生成。不,我在XML中没有这个语句。Yalv只是一个查看器,当格式为XML时,它能够以更愉快、更舒适的方式管理来自log4net的信息。您可以在“我知道没有生成警告”中找到它,因为我正在触发触发每个log4net级别的事件,并且明确地说,该事件是生成的,但带有INFO标记,并且不是WARM。
        switch (typeLog)
        {
            case elogType.infoType:
                log.Info(currentMessage);
                break;

            case elogType.errorType:
                log.Error(currentMessage);
                break;

            case elogType.debugType:
                log.Debug(currentMessage);
                break;

            case elogType.warningType :
                log.Warn(currentMessage);
                break;
        }