本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
HealthOmics 執行輸出
當 WDL 或 CWL 執行完成時,輸出會包含輸出摘要檔案 (JSON 格式),其中會列出執行所產生的所有輸出。您可以將輸出摘要檔案用於下列目的:
-
以程式設計方式判斷執行產生的輸出檔案。
-
驗證執行是否產生所有預期的輸出。
執行 WDL 的輸出摘要
當 WDL 執行完成時,HealthOmics 會建立名為 的輸出摘要檔案output.json。
對於工作流程的每個輸出,檔案中都有對應的索引鍵/值對。金鑰包含工作流程名稱和輸出名稱,格式如下:WorkflowName.output_name
。對於檔案輸出,值是指向儲存檔案之 S3 中輸出位置的 S3 URI。對於 Array【File】 輸出,值是 S3 URIs的陣列。
下列範例顯示名為 之工作流程output.json的檔案BWAMappingWorkflow。
{ "BWAMappingWorkflow.bam_indexes": [ "s3://omics-outputs/8886192/out/bam_indexes/0/pbmc8k_S1_L007_R1_001.sorted.bam.bai", "s3://omics-outputs/8886192/out/bam_indexes/1/pbmc8k_S1_L008_R1_001.sorted.bam.bai" ], "BWAMappingWorkflow.mapping_stats": "s3://omics-outputs/8886192/out/mapping_stats/genome_mapping_final_stats.txt", "BWAMappingWorkflow.merged_bam": "s3://omics-outputs/8886192/out/merged_bam/genome_mapping.merged.bam", "BWAMappingWorkflow.merged_bam_index": "s3://omics-outputs/8886192/out/merged_bam_index/genome_mapping.merged.bam.bai", "BWAMappingWorkflow.reference_index_tar": "s3://omics-outputs/8886192/out/reference_index_tar/reference_index.tar", "BWAMappingWorkflow.sorted_bams": [ "s3://omics-outputs/8886192/out/sorted_bams/0/pbmc8k_S1_L007_R1_001.sorted.bam", "s3://omics-outputs/8886192/out/sorted_bams/1/pbmc8k_S1_L008_R1_001.sorted.bam" ], "BWAMappingWorkflow.unmapped_bams": [ "s3://omics-outputs/8886192/out/unmapped_bams/0/pbmc8k_S1_L007_R1_001.unmapped.bam", "s3://omics-outputs/8886192/out/unmapped_bams/1/pbmc8k_S1_L008_R1_001.unmapped.bam" ] }
如果工作流程使用非檔案類型 (例如 String、Int、Float 或 Bool) 產生輸出,則欄位值為 JSON 基本值。例如:
{ "MyWorkflow.my_int_ouput": 1, "MyWorkflow.my_bool_output": false, ... }
執行 CWL 的輸出摘要
當 CWL 執行完成時,HealthOmics outputs.json會在下列位置建立名為 的輸出摘要檔案:
{my-S3outputpath}/{runId}/{run-uuid}/logs/outputs.json
輸出摘要檔案包含輸出清單。每個輸出都是金鑰/值對,其中金鑰是輸出的名稱。值是包含下列屬性的物件:
-
location – 輸出檔案的完整路徑
-
basename – 路徑的檔案名稱部分
-
class – 輸出的類型,通常是檔案
-
size – 檔案大小,以位元組為單位
在下列範例中, output.json 檔案具有兩個輸出檔案的清單。
{ "example_output": { "location": "{my-S3outputpath}/{runId}/{run-uuid}/out/output.txt", "basename": "output.txt", "class": "File", "size": 13 }, "another_output": { "location": "{my-S3outputpath}/{runId}/{run-uuid}/out/metrics.json", "basename": "metrics.json", "class": "File", "size": 256 } }