Resolve "Workflow execution tracking"
Closes #12 (closed)
Ewoks produces events with these fields:
Field | Type | Not None when | Value |
---|---|---|---|
host_name | str | ||
process_id | int | ||
user_name | str | ||
job_id | str | random uuid by default | |
binding | str|None | using a scheduler | |
context | str |
"workflow" or "node"
|
|
workflow_id | str | ||
node_id | str|None | context == "node" |
|
task_id | str|None | context == "node" |
|
type | str |
"start" , "end" or "progress"
|
|
time | str | ISO 8601 format in local timezone | |
error | bool|None | event == "end" |
|
error_message | str|None | event == "end" |
|
error_traceback | str|None | event == "end" |
|
progress | int|None | event == "progress" |
number between 0 and 100 |
task_uri | str|None | ||
input_uris | List[Dict]|None | event == "start" |
|
output_uris | List[Dict]|None | event == "start" |
-
execinfo
argument forexecute_graph
(job_id when a string). Same for the bindings. -
handler registration through ewokscore.events.add_handler
-
handler registration through execinfo
-
sqlite3 handler for testing -
emit task events (ewokscore) -
emit workflow events (ewokscore and all the bindings) -
execinfo
CLI argument (including handler registration)
execinfo = {"job_id": ...,
"handlers":[{"class": "ewokscore.events.handlers.EwoksSqlite3EventHandler",
"arguments": [{"name": "uri",
"value": "file:/tmp/ewoks_event.db"}]}]
Edited by Wout De Nolf