Zschimmer GmbH Impressum und Kontakt

Job Scheduler     Erste Seite   –   XML-Kommandos

  XML     API     Register


logo

XML-Element  <task>     (Antwort)

<task
calling  = "text"
cause  = "cause"
delayed_after_error_task  = "zahl"
enqueued  = "yyyy-mm-td hh:mm:ss.mmm"
id  = "zahl" (veraltet)
idle_since  = "yyyy-mm-td hh:mm:ss.mmm"
in_process_since  = "yyyy-mm-td hh:mm:ss.mmm"
log_file  = "dateiname"
name  = "name"
pid  = "zahl"
priority  = "priority"
running_since  = "yyyy-mm-td hh:mm:ss.mmm"
start_at  = "yyyy-mm-td hh:mm:ss.mmm"
state  = "state" Zustand der Task
steps  = "zahl"
task  = "zahl" Task-Id
web_service  = "name" Name des zugeordneten Web-Dienstes
>
<subprocesses ...>
Subprozesse (abhängige Prozesse)
<log ...>
Protokoll
<order ...>
Der gerade ausgeführte Auftrag
<ERROR ...>
Falls ein Fehler aufgetreten ist

</task>

 

Eltern-Elemente

<tasks>  

  – Liste der laufenden Tasks

Attribute

task="zahl" Task-Id

id="zahl" (veraltet)

Die Task-Id.

(XML reserviert das Attribut id, es sollte stattdessen task verwendet werden.)

state="state" Zustand der Task

Folgende Werte werden zurückgegeben:

state="none" Der anfängliche Status.
state="loading" Der Programmcode der Task wird geladen.
state="waiting_for_process" Ein Prozess ist gestartet worden und die Task wartet darauf, dass der Prozess bereit ist.
state="starting" Die Task startet. spooler_init() wird aufgerufen.
state="opening" spooler_open() wird aufgerufen.
state="opening_waiting_for_locks" spooler_open() hat spooler_task.call_me_again_when_locks_available() aufgerufen. Die Task wird fortgesetzt, sobald die angeforderten Sperren verfügbar sind.
state="running_process" Nur, wenn der Job mit <process> definiert ist: Der Prozess läuft.
state="running_remote_process" Nur, wenn der Job mit <process> und <process_class remote_scheduler="…"> definiert ist: Der Prozess läuft unter einem entfernten Scheduler.
state="running" Die Task läuft. spooler_process() wird aufgerufen.
state="running_waiting_for_order" Nur bei einem auftragsgesteuerten Job: Die Task ist bereit, den nächsten Auftrag auszuführen, aber es liegt kein Auftrag vor.
state="running_waiting_for_locks" spooler_process() hat spooler_task.call_me_again_when_locks_available() aufgerufen. Die Task wird fortgesetzt, sobald die angeforderten Sperren verfügbar sind.
state="running_delayed" Die Task hat Task.delay_spooler_process aufgerufen und wird verzögert.
state="suspended" Die Task ist angehalten worden.
state="ending_waiting_for_subprocesses" Wie ending, zuvor wird aber auf das Ende der Subprozessen gewartet.
(Siehe Task.create_subprocess().)
state="ending" spooler_process() wird nicht mehr aufgerufen. Der nächste Aufruf ist spooler_close().
state="on_success" spooler_on_success() wird aufgerufen.
state="on_error" spooler_on_error() wird aufgerufen.
state="exit" spooler_exit() wird aufgerufen.
state="release" Das Task-Objekt wird freigegeben, das Programm wird beendet.
state="ended" Das Task-Objekt ist freigeben.
state="deleting_files" Wenn die temporären Dateien für stdin, stdout und stderr sich nicht löschen lassen, verharrt die Task in diesem Zustand. Mit <kill_task> kann das Ende der Task erzwungen werden. Die Dateien bleiben dann stehen.
state="closed" Endzustand.

name="name" 

Der Name der Task (s. <start_job>).

running_since="yyyy-mm-td hh:mm:ss.mmm" 

Wenn die Task geladen oder gestartet worden ist: Zeitpunkt des Starts der Task.

enqueued="yyyy-mm-td hh:mm:ss.mmm" 

Zeitpunkt, wann die Task in die Task-Warteschlange eingereiht worden ist.

start_at="yyyy-mm-td hh:mm:ss.mmm" 

Zeitpunkt, wann die Task gestartet werden soll (s. <start_job at="…">).

idle_since="yyyy-mm-td hh:mm:ss.mmm" 

Zeitpunkt, seit dem die Task im Zustand waiting_for_order ist.

in_process_since="yyyy-mm-td hh:mm:ss.mmm" 

Zeitpunkt, seit dem spooler_process(), also der gerade aktive Jobschritt ausgeführt wird.

cause="cause" 

Anlass des Starts.

cause="none" (Sollte nicht vorkommen.)
cause="period_once" Wegen <run_time once="yes">.
cause="period_single" Wegen <period>, Attribut single_start.
cause="period_repeat" Wegen <period>, Attribut repeat.
cause="queue" Die Task war in der Task-Warteschlange, ohne feste Startzeit.
cause="queue_at" Die Task war in der Task-Warteschlange, mit fester Startzeit (s. <start_job at="…">).
cause="directory" Die Verzeichnisüberwachung (Job.start_when_directory_changed()) hat eine Änderung eines Verzeichnisses festgestellt.
cause="delay_after_error" Der Job geriet in den Fehlerzustand, wurde wegen Job.delay_after_error verzögert und wird jetzt erneut gestartet.
cause="order" Ein Auftrag liegt vor.
cause="wake" Siehe <modify_job cmd="wake">.

steps="zahl" 

Anzahl abgeschlossener Jobschritte, also Aufrufe von spooler_process().

log_file="dateiname" 

Name der Protokolldatei. Das Attribut ist nur gesetzt solange die Task läuft.

calling="text" 

Name der Methode des Jobs, die gerade aufgerufen wird.

pid="zahl" 

Kennung des Prozesses, der die Task ausführt.

priority="priority" 

Priorität des Prozesses: Unter Unix -20 bis 20, unter Windows idle, below_normal, normal, above_normal oder high.

delayed_after_error_task="zahl" 

Wenn diese Task eine Wiederholung einer mit Fehler abgebrochen Task ist (s. Job.delay_after_error), dann gibt dieses Attribut die Kennung der fehlerhaften Task an.

web_service="name" Name des zugeordneten Web-Dienstes

Kind-Elemente

<subprocesses>  

  – Subprozesse (abhängige Prozesse)

<log>  

  – Protokoll

Das Protokoll der laufenden Task. Nur wenn im Kommando das Attribut what="log" gesetzt ist.

<order>  

  – Der gerade ausgeführte Auftrag

<ERROR>  

  – Falls ein Fehler aufgetreten ist


Software- und Organisations-Service GmbH

Zuletzt geändert von Joacim Zschimmer, 2008-10-21