使用Quartz.net进行日志记录

4

我很坦率地说,我对Log4Net的经验很少。我刚刚安装了它,但它无法捕获来自调度库Quartz.net的日志事件。显然,Quartz.net使用Commons Logging,并且需要配置为指向我的Log4Net设置。不幸的是,它似乎不起作用。需要帮助:

  <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>

你能提供一下你遇到的错误吗? - jvilalta
1个回答

4
尝试使用以下配置: ```html

```
    <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>

我知道现在有点晚了,但是ConversionPattern布局中的所有%d%t%-5p等占位符都是什么意思?还有其他可用的占位符吗?是否有任何相关文档可以参考? - SmartDev
@SmartDev:如果你还没有找到,你可以在这里找到它们的文档[http://logging.apache.org/log4net/release/sdk/log4net.Layout.PatternLayout.html]。 - InteXX

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接