Jobs dienen als periodisch laufende Hilfsprogramme der Synchronisation und Bearbeitung von Daten.
Die Jobs können automatisch, mit Hilfe eines sogenannten
Triggers gestartet werden. Mit dem Trigger wird ein Zeitplan
erstellt, so dass die Jobs beliebig gestartet werden können (stündlich, täglich,
wöchentlich oder monatlich, ...). Die Einstellung kann auf den Tag, Stunde und
Minute genau konfiguriert werden.
Bei Bedarf können die Jobs auch jederzeit manuell gestartet werden.
Weiters können die Jobs einen aktiven oder inaktiven Status haben. Bei einem
aktiven Status werden die Jobs gemäß dem eingestellten Trigger gestartet. Sind
diese jedoch inaktiv, können sie lediglich manuell gestartet werden. Der Status
kann jederzeit geändert werden.
Ein Trigger stellt einen Zeitplan für die Ausführung eines Jobs dar. Er legt fest, wann, wie oft, und in welchen Abständen der Job ausgeführt wird.
Namensfeld
Erlaubte Werte
Erlaubte Sonderzeichen
Seconds
0-59
, - * /
Minutes
0-59
, - * /
Hours
0-23
, - * /
Day-of-month
1-31
, - * ? / L W C
Month
1-12 or JAN-DEC
, - * /
Day-of-Week
1-7 or SUN-SAT
, - * ? / L C #
Year (Optional)
empty, 1970-2099
, - * /
Beispiele:
Ausdrücke |
Bedeutung |
---|---|
0 0 12 * * ? |
Startet täglich um 12:00 |
0 15 10 ? * * |
Startet täglich um 10:15 |
0 15 10 * * ? |
Startet täglich um 10:15 |
0 15 10 * * ? * |
Startet täglich um 10:15 |
0 15 10 * * ? 2005 |
Startet täglich um 10:15 während des Jahres 2005 |
0 * 14 * * ? |
Startet täglich jede Minute beginnend um 14:00 und endet um 14:59 |
0 0/5 14 * * ? |
Startet täglich alle 5 Minuten beginnend um 14:00 und endet um 14:55 |
0 0/5 14,18 * * ? |
Startet täglich alle 5 Minuten beginnend um 14:00 und endet um 14:55, UND Startet alle 5 Minuten beginnend um 18:00 und endet um 18:55 |
0 0-5 14 * * ? |
Startet täglich jede Minute beginnend um 14:00 und endet um 14:05 |
0 10,44 14 ? 3 WED |
Startet um 14:10 und um 14:44 jeden Mittwoch im Monat März |
0 15 10 ? * MON-FRI |
Startet um 10:15 jeden Montag, Dienstag, Mittwoch, Donnerstag und Freitag |
0 15 10 15 * ? |
Startet um 10:15 am15ten jedes Monats |
0 15 10 L * ? |
Startet um 10:15 am letzten Tag jedes Monats |
0 15 10 ? * 6L |
Startet um 10:15 am letzten Freitag jedes Monats |
0 15 10 ? * 6L 2002-2005 |
Startet um 10:15 am letzten Freitag jedes Monats in den Jahren 2002, 2003, 2004 und 2005 |
0 15 10 ? * 6#3 |
Startet um 10:15 am dritten Freitag jedes Monats |
Weiterführende Informationen zum Thema Cron-trigger finden Sie unter: http://quartz.sourceforge.net/javadoc/org/quartz/CronTrigger.html
Bei Bedarf kann in den Jobs auch ein Mailversand konfiguriert werden. Die Mailbenachrichtigungenthält nur den Job-Log, und wird an eine definierte Person verschickt, falls ein Logeintrag mit einem angegebenen Level existiert.
Für das Monitoring von Jobs ist es ungeheuer wichtig, dass die implementierenden Job-Klassen auch entsprechend Loggen. Diese Logging-Informationen werden dann üblicherweise in die Webdesk-Datenbank-Logs geschrieben und sind dann somit über die Ansicht Monitoring > Logeinträge auswertbar.
Ein Monitoring der Jobs wird durch die Ansicht "Aktive Jobs" ermöglicht, wo alle aktiven Jobs auf einen Blick zu sehen sind. Weiters kann, bei entsprechender Parametrierung, der Verlauf des Jobs mit Hilfe der Logeinträge nachvollzogen werden. So wird anhand des parametrierten Log-Levels (definierter Status während des Jobverlaufes, wie z.B. Fehler, Warnung, ...) ersichtlich, ob ein Job problemlose durchgelaufen ist, oder ob bestimmte Probleme aufgetreten sind.
Grundsätzlich sollte der Loglevel of Jobs in den
Log-Einstellungen (Full System Administrator: System--> Log-Einstellungen)
zumindest auf INFO stehen. Damit ist gewährleistet, dass alle
Log-Informationen, welche vom Programmierer als INFO oder höherwertig
qualifiziert wurden, ins Datenbank-Log geschrieben werden. Hiermit sollte z.b.
bei einer Batchverarbeitung üblicherweise z.b. die Anzahl der verarbeiteten
Datensätze gelogged werden. Jedenfalls werden damit Fehler (Exceptions) auf
jeden Fall gelogged!
Treten Fehler im Job auf, so ist es mitunter sinnvoll, den Logging-Level für
Jobs auf DEBUG zu erhöhen!
Vergrößern |