TaskExecutionReport#
- class lsst.pipe.base.execution_reports.TaskExecutionReport(failed: dict[~uuid.UUID, ~lsst.daf.butler._dataset_ref.DatasetRef] = <factory>, n_succeeded: int = 0, n_expected: int = 0, blocked: dict[~uuid.UUID, ~lsst.daf.butler.dimensions._coordinate.DataCoordinate] = <factory>, output_datasets: dict[str, ~lsst.pipe.base.execution_reports.DatasetTypeExecutionReport] = <factory>)#
Bases:
objectA report on the status and content of a task in an executed quantum graph.
Use task metadata to identify and inspect failures and report on output datasets.
See Also#
QuantumGraphExecutionReport : Quantum graph report. DatasetTypeExecutionReport : DatasetType report.
Attributes Summary
A mapping of data IDs of quanta that were not attempted due to an upstream failure (
dict).A mapping from quantum data ID to log dataset reference for quanta that failed directly in this run (
dict).A count of expected quanta.
A count of successful quanta.
Missing and produced outputs of each
DatasetType(dict).Methods Summary
inspect_quantum(quantum_id, quantum, ...)Inspect a quantum of a quantum graph and ascertain the status of each associated data product.
to_summary_dict(butler[, do_store_logs, ...])Summarize the results of the TaskExecutionReport in a dictionary.
Attributes Documentation
- blocked: dict[UUID, DataCoordinate] = <dataclasses._MISSING_TYPE object>#
A mapping of data IDs of quanta that were not attempted due to an upstream failure (
dict).
- failed: dict[UUID, DatasetRef] = <dataclasses._MISSING_TYPE object>#
A mapping from quantum data ID to log dataset reference for quanta that failed directly in this run (
dict).
- n_expected: int = 0#
A count of expected quanta.
- n_succeeded: int = 0#
A count of successful quanta.
This may include quanta that did not produce any datasets; ie, raised
NoWorkFound.
- output_datasets: dict[str, DatasetTypeExecutionReport] = <dataclasses._MISSING_TYPE object>#
Missing and produced outputs of each
DatasetType(dict).
Methods Documentation
- inspect_quantum(quantum_id: UUID, quantum: Quantum, status_graph: DiGraph, refs: Mapping[str, Mapping[UUID, DatasetRef]], metadata_name: str, log_name: str) None#
Inspect a quantum of a quantum graph and ascertain the status of each associated data product.
Parameters#
- quantum_id
uuid.UUID Unique identifier for the quantum to inspect.
- quantum
Quantum The specific node of the quantum graph to be inspected.
- status_graph
networkx.DiGraph The quantum graph produced by
QuantumGraphExecutionReport.make_reportswhich steps through the quantum graph of a run and logs the status of each quantum.- refs
Mapping[str,Mapping[uuid.UUID,DatasetRef] ] The DatasetRefs of each of the DatasetTypes produced by the task. Includes initialization, intermediate and output data products.
- metadata_name
str The metadata dataset name for the node.
- log_name
str The name of the log files for the node.
See Also#
QuantumGraphExecutionReport.make_reports : Make reports.
- quantum_id
- to_summary_dict(butler: Butler, do_store_logs: bool = True, human_readable: bool = False) dict[str, Any]#
Summarize the results of the TaskExecutionReport in a dictionary.
Parameters#
- butler
lsst.daf.butler.Butler The Butler used for this report.
- do_store_logs
bool Store the logs in the summary dictionary.
- human_readable
bool Store more human-readable information to be printed out to the command-line.
Returns#
- summary_dict
dict A dictionary containing:
outputs: A dictionary summarizing the DatasetTypeExecutionReport for each DatasetType associated with the task
failed_quanta: A dictionary of quanta which failed and their dataIDs by quantum graph node id
n_quanta_blocked: The number of quanta which failed due to upstream failures.
n_succeded: The number of quanta which succeeded.
And possibly, if human-readable is passed:
errors: A dictionary of data ids associated with each error message. If
human-readableanddo_store_logs, this is stored here. Otherwise, ifdo_store_logs, it is stored infailed_quantakeyed by the quantum graph node id.
- butler