访问cluster.yaml文件中的jobid

问题描述 投票:3回答:1

我正在尝试将其他目录用于在集群上运行的snakemake工作流程的日志。因此,我的cluster.yaml文件如下所示:

__default__:
    time: 5:00:00
    threads: 5
    vmem: 10G
    #stderr: logs/snakejob.{rule}.{wildcards.sample}.{jobid}.err
    stdout: logs/snakejob.{rule}.{wildcards.sample}.{jobid}.out

# custom parameters for each rule

但是,此配置产生此错误:

NameError: The name 'jobid' is unknown in this context. Please make sure that you defined that variable. Also note that braces not used for variable access have to be escaped by repeating them, i.e. {{print $1}}

由于我想将jobid保留在标准输出文件中(就像默认值一样,所以如何访问它?

非常感谢,

Domenico

snakemake
1个回答
0
投票

我假设您是指集群的作业调度程序提供的作业ID。对于LSF,可以使用%J获得作业ID,对于SLURM,它是%j。因此,您对LSF的配置为:

stdout: logs/snakejob.{rule}.{wildcards.sample}.%J.out
© www.soinside.com 2019 - 2024. All rights reserved.