LocustIO: отображать журналы во время записи в файл журнала - PullRequest
0 голосов
/ 03 декабря 2018

Я нашел способ создавать файлы журналов в LocustIO .Он успешно записывает все журналы в файл.

Есть ли способ, чтобы терминал отображал журналы и записывал их также в файл журнала?Просто чтобы я мог легко отслеживать результаты, не открывая файл журнала каждый раз.

Пробовал программно, но все равно не печатал его.

Ничего не печатается после запуска locust -f my_locust_file.py --logfile=locustfile.log

@task(1)
def fetch_records(self):
... 
    response = self.client.get(full_result, auth=login_creds, headers=headers)
    entry_log = "Fetch Records | Username: {}\tPassword: {} | Response: {}".format(self.username, self.password, response)
    logging.info(entry_log)
    print(entry_log)

ОБНОВЛЕНИЕ
Пробовал также с использованием python logger'ов и запуска locust -f my_locust_file.py без --logfile.Он отображается в консоли, но не выводится в лог-файл.

def on_start(self):
    logging.basicConfig(filename=my_logfile, level=logging.INFO)

1 Ответ

0 голосов
/ 03 декабря 2018

Адаптирован путь от здесь .Лучше всего поместить в уровень класса , чтобы вы не встретили дубликаты журналов в файле.

log = logging.getLogger()
log.setLevel(logging.INFO)

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

fh = logging.FileHandler('locustfile.log')
fh.setLevel(logging.INFO)
fh.setFormatter(formatter)
log.addHandler(fh)

log.info("Fetch Records | Username: {}\tPassword: {} | {}".format(self.username, self.password, response))
...