Skip to content

Commit c367644

Browse files
committed
improving documentation
1 parent 84d6c82 commit c367644

3 files changed

Lines changed: 187 additions & 107 deletions

File tree

docs/source/analyzing_instances.rst

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,32 @@ parser provides a
6565
:meth:`~wfcommons.wfinstances.logs.abstract_logs_parser.LogsParser.build_workflow`
6666
method.
6767

68+
Supported log parsers
69+
+++++++++++++++++++++
70+
71+
- :class:`~wfcommons.wfinstances.logs.pegasusrec.HierarchicalPegasusLogsParser`
72+
- :class:`~wfcommons.wfinstances.logs.makeflow.MakeflowLogsParser`
73+
- :class:`~wfcommons.wfinstances.logs.nextflow.NextflowLogsParser`
74+
- :class:`~wfcommons.wfinstances.logs.pegasus.PegasusLogsParser`
75+
- :class:`~wfcommons.wfinstances.logs.taskvine.TaskVineLogsParser`
76+
77+
Examples
78+
++++++++
79+
80+
Hierarchical Pegasus
81+
++++++++++++++++++++
82+
83+
This parser targets Pegasus submit directories that contain hierarchical workflows.
84+
It recursively parses sub-workflows and rebuilds a coherent workflow instance::
85+
86+
import pathlib
87+
from wfcommons.wfinstances import HierarchicalPegasusLogsParser
88+
89+
submit_dir = pathlib.Path('/path/to/pegasus/hierarchical/submit/dir/')
90+
parser = HierarchicalPegasusLogsParser(submit_dir=submit_dir)
91+
workflow = parser.build_workflow('pegasus-hierarchical-workflow-test')
92+
workflow.write_json(pathlib.Path('./pegasus-hierarchical-workflow.json'))
93+
6894
Makeflow
6995
++++++++
7096

@@ -166,6 +192,21 @@ class: ::
166192
workflow_path = pathlib.Path('./pegasus-workflow.json')
167193
workflow.write_json(workflow_path)
168194

195+
TaskVine
196+
++++++++
197+
198+
`TaskVine <https://ccl.cse.nd.edu/software/taskvine/>`_ is a task scheduler for
199+
data-intensive dynamic workflows. The TaskVine logs parser translates TaskVine
200+
execution logs into workflow instances compatible with :ref:`json-format-label`::
201+
202+
import pathlib
203+
from wfcommons.wfinstances import TaskVineLogsParser
204+
205+
execution_dir = pathlib.Path('/path/to/taskvine/execution/dir/')
206+
parser = TaskVineLogsParser(execution_dir=execution_dir)
207+
workflow = parser.build_workflow('taskvine-workflow-test')
208+
workflow.write_json(pathlib.Path('./taskvine-workflow.json'))
209+
169210
The Instance Analyzer
170211
---------------------
171212

0 commit comments

Comments
 (0)