Turn off Debug Logging in Quartz .Net

Quartz.net uses Common.Logging, so something like this in your App.config/Web.config:

<configSections>
    <sectionGroup name="common">
        <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
    </sectionGroup>
</configSections>

<common>
    <logging>
        <factoryAdapter type="Common.Logging.Simple.**youradapterhere**, Common.Logging">
            <arg key="level" value="ERROR" />
        </factoryAdapter>
    </logging>
</common>

Be sure to change the youradapterhere to the actual logging adapter you're using, or NoOpLoggerFactoryAdapter if you want to disable logging entirely.


** Edit: ** Based on Ganesh's comment:

<sectionGroup name="common"> 
    <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging"/> 
</sectionGroup> 
<common>  
    <logging>  
        <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net">  
            <arg key="configType" value="INLINE"/>  
            <arg key="configFile" value="filename"/>  
            <arg key="level" value="ERROR" /> <!-- add this line here -->
        </factoryAdapter>  
    </logging> 
</common>

** Edit 2: **

For the benefits of those who don't want to read the comments, the log level was actually set in the log4net root config:

<log4net>
    <root>
        <level value="DEBUG" /> <!-- This is the value that needed changing -->
        <appender-ref ref="Console" />
        <appender-ref ref="RollingFile" />
    </root>
</log4net>

If any one needs to do this in NLog just add the following as the top most rule in NLog.Config

<!-- Disable Quartz info logging -->
<logger name="Quartz*" minlevel="Trace" maxlevel="Info" final="true" />

Note that this will still let Warn, Error, Fatal go to the other loggers if you don't want that change maxlevel="Info" to maxlevel="Fatal"


Rytmis' answer is great if you want to reduce all your logging which goes through the Common Logging Infrastructure.

But if you have more code logging through Common Logging, and you just want to reduce the ammount of logging from Quartz (and not from the rest of the your code), what I recomend is this:

In the log4net config xml (app.config usually) you probably already have something like this:

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

Leave that as it is. And after that (or anywhere inside the <log4net> config section) just add this:

    <logger name="Quartz">
        <level value="ERROR" />
    </logger>

This <logger> section will configure all the loggers with the namespace "Quartz". So in this example Quartz will be logging with level ERROR while the rest of my app will log with level ALL.