ProvenanceQuantumScanModels¶
- class lsst.pipe.base.quantum_graph.ProvenanceQuantumScanModels(quantum_id: ~uuid.UUID, status: ~lsst.pipe.base.quantum_graph._provenance.ProvenanceQuantumScanStatus = ProvenanceQuantumScanStatus.INCOMPLETE, attempts: list[lsst.pipe.base.quantum_graph._provenance.ProvenanceQuantumAttemptModel] = <factory>, output_existence: dict[uuid.UUID, bool] = <factory>, metadata: ~lsst.pipe.base.quantum_graph._provenance.ProvenanceTaskMetadataModel = <factory>, logs: ~lsst.pipe.base.quantum_graph._provenance.ProvenanceLogRecordsModel = <factory>)¶
Bases:
objectA struct that represents provenance information for a single quantum.
Attributes Summary
Combined status for the scan and the execution of the quantum.
Methods Summary
from_metadata_and_logs(predicted, metadata, ...)Construct provenance information from task metadata and logs.
to_scan_data(predicted_quantum[, compressor])Convert these models to JSON data.
Attributes Documentation
- status: ProvenanceQuantumScanStatus = 1¶
Combined status for the scan and the execution of the quantum.
Methods Documentation
- classmethod from_metadata_and_logs(predicted: PredictedQuantumDatasetsModel, metadata: TaskMetadata | None, logs: ButlerLogRecords | None, *, assume_complete: bool = True) ProvenanceQuantumScanModels¶
Construct provenance information from task metadata and logs.
- Parameters:
- predicted
PredictedQuantumDatasetsModel Information about the predicted quantum.
- metadata
TaskMetadataorNone Task metadata.
- logs
lsst.daf.butler.logging.ButlerLogRecordsorNone Task logs.
- assume_complete
bool, optional If
False, treat execution failures as possibly-incomplete quanta and do not fully process them; instead just set the status toProvenanceQuantumScanStatus.ABANDONEDand return.
- predicted
- Returns:
- scan_models
ProvenanceQuantumScanModels Struct of models that describe quantum provenance.
- scan_models
Notes
This method does not necessarily fully populate the
output_existencefield; it does what it can given the information in the metadata and logs, but the caller is responsible for filling in the existence status for any predicted outputs that are not present at all in thatdict.
- to_scan_data(predicted_quantum: PredictedQuantumDatasetsModel, compressor: Compressor | None = None) ProvenanceQuantumScanData¶
Convert these models to JSON data.
- Parameters:
- predicted_quantum
PredictedQuantumDatasetsModel Information about the predicted quantum.
- compressor
Compressor Object that can compress bytes.
- predicted_quantum
- Returns:
- scan_data
ProvenanceQuantumScanData Scan information ready for serialization.
- scan_data