59

I can't find documentation anywhere on the syntax for Quartz.NET configuration files. I'd like to learn about

  1. Configuring the service itself

  2. Configuring jobs via the XML scheduler plugin.

I've seen plenty of examples, but I'm looking for a definitive syntax document that shows me all of my options.

marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
JamieGaines
  • 2,062
  • 1
  • 18
  • 20
  • 1
    This may help [link](https://github.com/quartznet/quartznet/blob/56867318d56cffe557b8fe7bfdf67586a1b2c4a6/src/Quartz/Impl/StdSchedulerFactory.cs) – Oleg Ivanov Feb 04 '18 at 12:39

3 Answers3

44

I was having a heck of a time finding info on the config format as well. Turns out the Quartz.Net source contains a nice sample App.config file in src/Quartz.Examples. It looks like the snippet below, except that I've omitted the Common.Logging configuration, which is explained in detail (with an example) in the Common.Logging documentation.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="quartz" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" />
  </configSections>
  <quartz>
    <add key="quartz.scheduler.instanceName" value="ExampleDefaultQuartzScheduler" />
    <add key="quartz.threadPool.type" value="Quartz.Simpl.SimpleThreadPool, Quartz" />
    <add key="quartz.threadPool.threadCount" value="10" />
    <add key="quartz.threadPool.threadPriority" value="2" />
    <add key="quartz.jobStore.misfireThreshold" value="60000" />
    <add key="quartz.jobStore.type" value="Quartz.Simpl.RAMJobStore, Quartz" />
  </quartz>
</configuration>

J has a discussion of other configuration options in How Does Quartz.Net Configuration Work?, and I expect the best place to find a "complete" list of possible properties is the Java Quartz documentation that Andreas linked, though it should probably only be used as a guide to see Quartz.Net's potential rather than true documentation per se since there are at least a couple differences.

ladenedge
  • 13,197
  • 11
  • 60
  • 117
2

There is no complete documentation for quartz.net, but you are free to write one and share. However you can have a look at the Java Quartz documentation:

http://www.quartz-scheduler.org/documentation/quartz-2.x/configuration/

90% of the configuration settings are equal e.g.:

quartz.scheduler.instanceName = DefaultQuartzScheduler
quartz.threadPool.type = Quartz.Simpl.SimpleThreadPool, Quartz
quartz.threadPool.threadCount = 10
quartz.threadPool.threadPriority = Normal
quartz.jobStore.type = Quartz.Simpl.RAMJobStore, Quartz
quartz.jobStore.misfireThreshold = 60000

In addition you can look at the source: https://github.com/quartznet/quartznet

Andreas
  • 5,251
  • 30
  • 43
  • 2
    Perhaps the most useful doc might be the "last 10%" then. One of the documented differences: "Currently the only option for the internal implementation of job store is JobStoreTX which creates transactions by itself. This is different from Java version of Quartz where there is also option to choose JobStoreCMT which uses J2EE container managed transactions." (http://www.quartz-scheduler.net/documentation/quartz-2.x/tutorial/job-stores.html) – ftexperts Mar 31 '14 at 02:48