2010-06-08 57 views
4

我会无耻地声明我对Log4Net没有多少经验。我只是安装了它,但它不会捕获Quartz.net中的日志事件,这是一个调度库。显然Quartz.net使用Commons Logging,并且需要配置为指向我的Log4Net设置。不幸的是,它似乎没有工作。帮助表示赞赏:使用Quartz.net记录

<configSections> 
    ... 
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> 
    <section name="quartz" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
    <section name="commonLogging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging"/> 
    </configSections> 
    <!-- Log4net error handling --> 
    <log4net> 
    <appender name="LogFileAppender" type="log4net.Appender.FileAppender"> 
     <param name="File" value="Admin/LabSlice.log" /> 
     <param name="AppendToFile" value="true" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <param name="ConversionPattern" value="%d [%t] %-5p %c %m%n" /> 
     </layout> 
    </appender> 
    <root> 
     <level value="INFO" /> 
     <appender-ref ref="LogFileAppender" /> 
    </root> 
    </log4net> 
    <!-- Commons logging (Quart.net logs) --> 
    <commonLogging> 
    <logging> 
     <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4net"> 
     <arg key="configType" value="INLINE" /> 
     </factoryAdapter> 
    </logging> 
    </commonLogging> 
+0

你能提供你所得到的错误? – jvilalta 2010-07-13 02:38:37

回答

4

试试这个配置:

<configSections> 
     .... 
     <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/> 
     <section name="quartz" type="System.Configuration.NameValueSectionHandler, 
       System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
     <sectionGroup name="common"> 
     <section name="logging" type="Common.Logging.ConfigurationSectionHandler, 
       Common.Logging"/> 
     </sectionGroup> 
    </configSections> 

    <appSettings> 
     <add key="log4net.Internal.Debug" value="false"/> 
    </appSettings> 

    <common> 
     <logging> 
     <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, 
         Common.Logging.Log4Net"> 
      <arg key="configType" value="INLINE"/> 
      <arg key="configFile" value="Trace/application.log.txt"/> 
      <arg key="level" value="ALL" /> 
     </factoryAdapter> 
     </logging> 
    </common> 

    <log4net> 
     <appender name="GeneralLog" type="log4net.Appender.RollingFileAppender"> 
     <file value="Trace/application.log.txt"/> 
     <appendToFile value="true"/> 
     <maximumFileSize value="1024KB"/> 
     <rollingStyle value="Size"/> 
     <layout type="log4net.Layout.PatternLayout"> 
      <conversionPattern value="%d{HH:mm:ss} [%t] %-5p %c - %m%n"/> 
     </layout> 
     </appender> 

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

    </log4net> 
+0

我知道这是迟到了,但是在'ConversionPattern'布局中,所有'%d''%t''%-5p'等等占位符是什么?有没有其他可用的?有没有关于这个地方的任何文件? – SmartDev 2014-11-12 14:20:39

+0

@SmartDev:如果你还没有到现在,你可以在这里找到他们[这里](http://logging.apache.org/log4net/release/sdk/log4net.Layout.PatternLayout.html)。 – InteXX 2015-02-22 01:00:56