Snakemake: RuntimeError Seguimiento de la pila falta cuando se utiliza Python fileConfig ()

votos
0

Tengo un snakefile con una regla que importa un script local Python y luego plantea una RuntimeError. Cuando ejecuto el snakefile, el seguimiento de la pila para el RuntimeErrorque no se muestra. El código y la salida snakemake se muestran a continuación.

// test.snakefile
rule test_rule:
    run:
        from test import hello
        print(hello)
        raise RuntimeError('raising error')
// test.py
import logging
import os
from logging.config import fileConfig

log_file_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'logging_config.ini')
fileConfig(log_file_path)

hello = 'hello'

snakemake de salida:

...
[Mon Jan 13 14:45:54 2020]
rule test_rule:
    jobid: 0

Job counts:
    count   jobs
    1   test_rule
    1
hello
Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message

Sin embargo, si comento hacia fuera de la línea fileConfig(log_file_path)en test.pyy snakemake correr, la RuntimeError Seguimiento de la pila se imprime como se esperaba:

Error in rule test_rule:
    jobid: 0

RuleException:
RuntimeError in line 5 of /my-dir/test.snakefile:
raising error
  File /my-dir/test.snakefile, line 5, in __rule_test_rule
  File /usr/lib/python3.6/concurrent/futures/thread.py, line 56, in run
Exiting because a job execution failed. Look above for error message

Alguien sabe por qué ocurre esto?

Publicado el 14/01/2020 a las 00:02
fuente por usuario
En otros idiomas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more