使用Common.Logging.Log4Net.Universal以xml格式编写日志以供YALV解析时出现问题
我使用Common.Logging.Log4Net.Universal以xml格式编写日志,这样我就可以使用YALV读取日志了! 但是,我看不到为此生成的日志。 我已经在普通的log4net库中使用了这种技术,并且没有任何问题。 以下是我的“web.config”文件中的相关配置:使用Common.Logging.Log4Net.Universal以xml格式编写日志以供YALV解析时出现问题,xml,log4net,common.logging,Xml,Log4net,Common.logging,我使用Common.Logging.Log4Net.Universal以xml格式编写日志,这样我就可以使用YALV读取日志了! 但是,我看不到为此生成的日志。 我已经在普通的log4net库中使用了这种技术,并且没有任何问题。 以下是我的“web.config”文件中的相关配置: <configSections> <sectionGroup name="common"> <section name="logging" type="Common
<configSections>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Universal.Log4NetFactoryAdapter, Common.Logging.Log4Net.Universal" >
<arg key="configType" value="FILE"/>
<arg key="configFile" value="~/log4net.config" />
</factoryAdapter>
</logging>
</common>
<configuration>
<log4net>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C://Logs//mylogfile.xml" type="log4net.Util.PatternString"/>
<appendToFile value="true" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<levelMax value="FATAL" />
</filter>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="FileAppender"/>
</root>
</log4net>
</configuration>
<log4net>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C://Logs//mylogfile.xml" type="log4net.Util.PatternString"/>
<appendToFile value="true" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<levelMax value="FATAL" />
</filter>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="FileAppender"/>
</root>
</log4net>
执行时,代码执行时不会出现任何错误,但是上面提到的“mylogfile.xml”永远不会生成
请提供建议,以防有人尝试相同的方法。当我查看Universal logging项目的GitHub源代码时,我看到web.config的以下配置:
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging"/>
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Universal.Log4NetFactoryAdapter, Common.Logging.Log4Net.Universal" />
</logging>
</common>
</configuration>
然后,您应该从“log4net.config”文件中删除配置根元素:
<configSections>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Universal.Log4NetFactoryAdapter, Common.Logging.Log4Net.Universal" >
<arg key="configType" value="FILE"/>
<arg key="configFile" value="~/log4net.config" />
</factoryAdapter>
</logging>
</common>
<configuration>
<log4net>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C://Logs//mylogfile.xml" type="log4net.Util.PatternString"/>
<appendToFile value="true" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<levelMax value="FATAL" />
</filter>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="FileAppender"/>
</root>
</log4net>
</configuration>
<log4net>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C://Logs//mylogfile.xml" type="log4net.Util.PatternString"/>
<appendToFile value="true" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<levelMax value="FATAL" />
</filter>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="FileAppender"/>
</root>
</log4net>
如果这不起作用,请启用log4net的调试,以查看您的配置出了什么问题