diff --git a/freqtrade/loggers/__init__.py b/freqtrade/loggers/__init__.py index 1cc0590a1..ba0e23b5e 100644 --- a/freqtrade/loggers/__init__.py +++ b/freqtrade/loggers/__init__.py @@ -1,6 +1,7 @@ import logging from logging import Formatter from logging.handlers import RotatingFileHandler, SysLogHandler +from pathlib import Path from freqtrade.constants import Config from freqtrade.exceptions import OperationalException @@ -83,6 +84,7 @@ def setup_logging(config: Config) -> None: handler_jd.setFormatter(Formatter("%(name)s - %(levelname)s - %(message)s")) logging.root.addHandler(handler_jd) else: + Path(logfile).parent.mkdir(parents=True, exist_ok=True) handler_rf = get_existing_handlers(RotatingFileHandler) if handler_rf: logging.root.removeHandler(handler_rf) diff --git a/tests/test_log_setup.py b/tests/test_log_setup.py index 142134b34..19c6b190d 100644 --- a/tests/test_log_setup.py +++ b/tests/test_log_setup.py @@ -86,7 +86,7 @@ def test_set_loggers_Filehandler(tmp_path): logger = logging.getLogger() orig_handlers = logger.handlers logger.handlers = [] - logfile = tmp_path / "ft_logfile.log" + logfile = tmp_path / "logs/ft_logfile.log" config = { "verbosity": 2, "logfile": str(logfile),