动态生成日志和结果目录

问题描述

我正在尝试将蝗虫配置为将日志文件存储到logs/目录中。例如:

# example.conf
locustfile = example/locust.py
host = http://www.example.com
users = 10
spawn-rate = 10
logfile = logs/example.log

但是,如果logs/目录不存在,蝗虫将失败。我尝试过使用初始化事件监听器添加目录:

@events.init.add_listener
def on_init(**kw):
    if 'logs' not in os.listdir():
        os.mkdir('logs')

但是蝗虫在到达这一点之前就失败了。当前的蝗虫生长方式是否可以解决这个问题?

解决方法

只需将代码放在蝗虫文件的顶层/模块层中,而不是放在函数中,它将在其他所有内容之前执行。

if 'logs' not in os.listdir():
    os.mkdir('logs')