Job Scheduler Erste Seite – Konfiguration in XML |
<job_chaindistributed |
= "yes|no"
|
|
name |
= "name"
|
|
orders_recoverable |
= "yes|no"
|
|
title |
= "String"
|
|
visible |
= "yes|no"
|
>
<file_order_source ...> |
Dateiauftragsquelle |
<job_chain_node ...> |
Jobkettenknoten |
<file_order_sink ...> |
Dateiauftragssenke |
<job_chain_node.job_chain ...> |
Jobkettenknoten |
<job_chain_node.end ...> |
Ende einer Jobkette |
</job_chain>
Führt eine neue Jobkette (siehe Klasse Job_chain) ein.
Siehe Aufträge, Job_chain, Spooler.create_job_chain() und Spooler.add_job_chain()
Einfache Jobketten enthalten Jobs und werden mit den XML-Elementen <job_chain_node>, <file_order_source> und <file_order_sink> beschrieben.
Übergeordnete Jobketten verweisen auf andere Jobketten und werden mit den XML-Elementen <job_chain_node.job_chain>. <job_chain_node.end> beschrieben. Die aufgeführten Jobketten müssen einfache Jobketten sein.
Übergeordnete Jobketten arbeiten nicht mit verteilten Aufträgen.
<job_chains>
<job_chain name="Kette_A">
<job_chain_node state= "1" job="job_a" next_state= "2" error_state="999" />
<job_chain_node state= "2" job="job_b" next_state="100" error_state="999" />
<job_chain_node state="100" />
<job_chain_node state="999" />
</job_chain>
</job_chains> Das ist dasselbe wie folgendes Scheduler-Skript: <script language="javascript"><![CDATA[
var job_chain = spooler.create_job_chain();
job_chain.name = "Kette_A";
job_chain.add_job( "job_a", 1, 2, 999 );
job_chain.add_job( "job_b", 2, 100, 999 );
job_chain.add_end_state( 100 );
job_chain.add_end_state( 999 );
spooler.add_job_chain( job_chain );
]]></script> <job_chains>
<job_chain name="superchain">
<job_chain_node.job_chain state="A" job_chain="job_chain_a"
next_state="B" error_state="ERROR" />
<job_chain_node.job_chain state="B" job_chain="job_chain_b"
next_state="OK" error_state="ERROR" />
<job_chain_node.end state="OK" />
<job_chain_node.end state="ERROR" />
</job_chain>
</job_chains> <base>
<job_chain>
darf nicht angegeben werden, wenn es bereits in der Basiskonfiguration steht.
<job_chain name="Name"> mit verschiedenen Namen können hinzugefügt werden.
– Jobketten |
name="name"
Name der Jobkette. Jede Jobkette kann nur einmal definiert werden.
visible="yes|no" (Initialwert: yes)
visible="no" und visible="never" lassen die Jobkette im Ergebnis von <show_job_chains> und <show_state> unsichtbar.
Bei visible="no" setzt der Scheduler die Jobkette sichtbar, sobald eine Task eingereiht wird. Bei visible="never" ist das nicht der Fall.
orders_recoverable="yes|no" (Initialwert: yes)
orders_recoverable="yes"
Der Scheduler hält die Aufträge in der Datenbank. Sobald ein Auftrag in die Auftragswarteschlange eines Jobs eingereiht wird, speichert der Scheduler ihn auch in der Datenbank. Wenn der Auftrag die Jobkette durchlaufen hat, wird er aus der Datenbank entfernt.
Beim Einrichten der Jobkette (beim Start des Schedulers) lädt der Scheduler die Aufträge aus der Datenbank. Siehe Spooler.add_job_chain().
Wirkungslos, wenn der Scheduler ohne Datenbank arbeitet, siehe factory.ini (Abschnitt [spooler], Eintrag db=…).
orders_recoverable="no"
Der Scheduler hält nicht die Aufträge in der Datenbank und lädt sie auch nicht daraus.
Siehe Datenbank.
distributed="yes|no" (Initialwert: no)
Wirkt nur mit der Kommandozeilenoption -distributed-orders und lässt die Aufträge von mehreren Schedulern verteilt ausführen.
distributed="no" lässt die Jobkette nicht verteilt, sondern nur auf diesem Scheduler ausführen, wie bei einem nicht-verteiltem Scheduler. Der Name der Jobkette muss in diesem Fall im Cluster eindeutig sein (das wird nicht geprüft).
title="String"
– Dateiauftragsquelle |
<file_order_source>
kann wiederholt werden.
– Jobkettenknoten |
<job_chain_node>
kann wiederholt werden.
– Dateiauftragssenke |
<file_order_sink>
kann wiederholt werden.
– Jobkettenknoten |
<job_chain_node.job_chain>
kann wiederholt werden.
– Ende einer Jobkette |
<job_chain_node.end>
kann wiederholt werden.
Zuletzt geändert von Joacim Zschimmer, 2008-04-29 |