Difference between revisions of "Monitoring Cluster-Enabled Quartz Instances"
From AgileApps Support Wiki
imported>Aeric |
imported>Aeric |
||
Line 15: | Line 15: | ||
#: | #: | ||
# Set these variable values for your installation: | # Set these variable values for your installation: | ||
#:* <tt>$mysql_username</tt> - Database user name. | #:* <tt>$mysql_username</tt> - Database user name. | ||
#:* <tt>$mysql_password</tt> - Database password. | #:* <tt>$mysql_password</tt> - Database password. | ||
Line 22: | Line 21: | ||
#:* <tt>$config_file</tt> - Absolute path to <tt>tomcat/webapps/networking/WEB-INF/web.xml</tt> | #:* <tt>$config_file</tt> - Absolute path to <tt>tomcat/webapps/networking/WEB-INF/web.xml</tt> | ||
#:* <tt>$recipients</tt> - Comma-separated list of email addresses who will receive email status messages | #:* <tt>$recipients</tt> - Comma-separated list of email addresses who will receive email status messages | ||
#: | #: | ||
# Run the script | # Run the script in the background.<br>You'll get an email alert whenever the script discovers that Quartz isn't running. | ||
#: | #: | ||
;How it Works: | ;How it Works: | ||
:The lines in the properties file cause quartz to put an entry into the relationals.QRTZ_SCHEDULER_STATE table in the database. The script checks the timestamp to verify that the last stamp was within 5 minutes. (Quartz should be running once a minute. If it hasn't run in five minutes, it is considered to be down.) | :The lines in the properties file cause quartz to put an entry into the relationals.QRTZ_SCHEDULER_STATE table in the database. The script checks the timestamp to verify that the last stamp was within 5 minutes. (Quartz should be running once a minute. If it hasn't run in five minutes, it is considered to be down.) |
Revision as of 23:03, 19 July 2011
Monitoring Cluster--Enabled Quartz Instances
This process sets up an automatic check that sends an email alert when Quartz is down.
- Verify that these lines are in the quartz.properties file. (They are present in new installations, but are not automatically added during upgrades.)
- <syntaxhighlight lang="perl" enclose="div">
org.quartz.scheduler.instanceId = AUTO # Automatically assigns instance IDs to prevent conflicts ... org.quartz.jobStore.misfireThreshold = 60000 # Prevent infinite loop if a job can't start, but keeps retrying ... org.quartz.jobStore.isClustered = true # Turn on clustering org.quartz.jobStore.clusterCheckinInterval = 20000 </syntaxhighlight>
- Download the monitor_quartz.pl (Perl) script from the platform downloads area.
- Set these variable values for your installation:
- $mysql_username - Database user name.
- $mysql_password - Database password.
- $mysql_host - Name of server the database is running on.
- $config_file - Absolute path to tomcat/webapps/networking/WEB-INF/web.xml
- $recipients - Comma-separated list of email addresses who will receive email status messages
- Run the script in the background.
You'll get an email alert whenever the script discovers that Quartz isn't running.
- How it Works
- The lines in the properties file cause quartz to put an entry into the relationals.QRTZ_SCHEDULER_STATE table in the database. The script checks the timestamp to verify that the last stamp was within 5 minutes. (Quartz should be running once a minute. If it hasn't run in five minutes, it is considered to be down.)