From f374a062e1566032fa9f1714ab39cde21262970f Mon Sep 17 00:00:00 2001 From: gcarq Date: Sun, 25 Mar 2018 21:41:25 +0200 Subject: [PATCH] remove freqtrade/logger.py --- freqtrade/logger.py | 82 ------------------- freqtrade/optimize/backtesting.py | 5 +- freqtrade/optimize/hyperopt.py | 7 +- freqtrade/tests/optimize/test_hyperopt.py | 4 - freqtrade/tests/test_logger.py | 97 ----------------------- 5 files changed, 3 insertions(+), 192 deletions(-) delete mode 100644 freqtrade/logger.py delete mode 100644 freqtrade/tests/test_logger.py diff --git a/freqtrade/logger.py b/freqtrade/logger.py deleted file mode 100644 index 4d051dcdc..000000000 --- a/freqtrade/logger.py +++ /dev/null @@ -1,82 +0,0 @@ -# pragma pylint: disable=too-few-public-methods - -""" -This module contains the class for logger and logging messages -""" - -import logging -from typing import Optional - - -class Logger(object): - """ - Logging class - """ - def __init__(self, name, level: Optional[int] = None) -> None: - """ - Init the logger class - :param name: Name of the Logger scope - :param level: Logger level that should be used - :return: None - """ - self.name = name - self.logger = None - - self.level = level or logging.getLogger().getEffectiveLevel() - - self._init_logger() - - def _init_logger(self) -> None: - """ - Setup the bot logger configuration - :return: None - """ - logging.basicConfig( - level=self.level, - format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', - ) - - self.logger = self.get_logger() - self.set_level(self.level) - - def get_logger(self) -> logging.RootLogger: - """ - Return the logger instance to use for sending message - :return: the logger instance - """ - return logging.getLogger(self.name) - - def set_name(self, name: str) -> logging.RootLogger: - """ - Set the name of the logger - :param name: Name of the logger - :return: None - """ - self.name = name - self.logger = self.get_logger() - return self.logger - - def set_level(self, level) -> None: - """ - Set the level of the logger - :param level: - :return: None - """ - self.level = level - self.logger.setLevel(self.level) - - def set_format(self, log_format: str, propagate: bool = False) -> None: - """ - Set a new logging format - :return: None - """ - handler = logging.StreamHandler() - - len_handlers = len(self.logger.handlers) - if len_handlers: - self.logger.removeHandler(handler) - - handler.setFormatter(logging.Formatter(log_format)) - self.logger.addHandler(handler) - - self.logger.propagate = propagate diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index 1d1c33ff9..146b69d83 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -296,12 +296,9 @@ def start(args: Namespace) -> None: :param args: Cli args from Arguments() :return: None """ - - # Initialize logger - logger.info('Starting freqtrade in Backtesting mode') - # Initialize configuration config = setup_configuration(args) + logger.info('Starting freqtrade in Backtesting mode') # Initialize backtesting object backtesting = Backtesting(config) diff --git a/freqtrade/optimize/hyperopt.py b/freqtrade/optimize/hyperopt.py index 3e7b14610..a10bb0377 100644 --- a/freqtrade/optimize/hyperopt.py +++ b/freqtrade/optimize/hyperopt.py @@ -25,7 +25,6 @@ from pandas import DataFrame import freqtrade.vendor.qtpylib.indicators as qtpylib from freqtrade.arguments import Arguments from freqtrade.configuration import Configuration -from freqtrade.logger import Logger from freqtrade.optimize import load_data from freqtrade.optimize.backtesting import Backtesting from user_data.hyperopt_conf import hyperopt_optimize_conf @@ -592,13 +591,11 @@ def start(args: Namespace) -> None: logging.getLogger('hyperopt.mongoexp').setLevel(logging.WARNING) logging.getLogger('hyperopt.tpe').setLevel(logging.WARNING) - # Initialize logger - logger = Logger(__name__).get_logger() - logger.info('Starting freqtrade in Hyperopt mode') - # Initialize configuration # Monkey patch the configuration with hyperopt_conf.py configuration = Configuration(args) + logger.info('Starting freqtrade in Hyperopt mode') + optimize_config = hyperopt_optimize_conf() config = configuration._load_common_config(optimize_config) config = configuration._load_backtesting_config(config) diff --git a/freqtrade/tests/optimize/test_hyperopt.py b/freqtrade/tests/optimize/test_hyperopt.py index 6d376471a..26a2e388c 100644 --- a/freqtrade/tests/optimize/test_hyperopt.py +++ b/freqtrade/tests/optimize/test_hyperopt.py @@ -50,7 +50,6 @@ def test_start(mocker, default_conf, caplog) -> None: Test start() function """ start_mock = MagicMock() - mocker.patch('freqtrade.logger.Logger.set_format', MagicMock()) mocker.patch('freqtrade.optimize.hyperopt.Hyperopt.start', start_mock) mocker.patch('freqtrade.configuration.open', mocker.mock_open( read_data=json.dumps(default_conf) @@ -169,7 +168,6 @@ def test_fmin_best_results(mocker, default_conf, caplog) -> None: mocker.patch('freqtrade.optimize.hyperopt.load_data', MagicMock()) mocker.patch('freqtrade.optimize.hyperopt.fmin', return_value=fmin_result) mocker.patch('freqtrade.optimize.hyperopt.hyperopt_optimize_conf', return_value=conf) - mocker.patch('freqtrade.logger.Logger.set_format', MagicMock()) Strategy({'strategy': 'default_strategy'}) hyperopt = Hyperopt(conf) @@ -214,7 +212,6 @@ def test_fmin_throw_value_error(mocker, default_conf, caplog) -> None: conf.update({'timerange': None}) conf.update({'spaces': 'all'}) mocker.patch('freqtrade.optimize.hyperopt.hyperopt_optimize_conf', return_value=conf) - mocker.patch('freqtrade.logger.Logger.set_format', MagicMock()) Strategy({'strategy': 'default_strategy'}) hyperopt = Hyperopt(conf) hyperopt.trials = create_trials(mocker) @@ -256,7 +253,6 @@ def test_resuming_previous_hyperopt_results_succeeds(mocker, default_conf) -> No mocker.patch('freqtrade.optimize.hyperopt.load_data', MagicMock()) mocker.patch('freqtrade.optimize.hyperopt.fmin', return_value={}) mocker.patch('freqtrade.optimize.hyperopt.hyperopt_optimize_conf', return_value=conf) - mocker.patch('freqtrade.logger.Logger.set_format', MagicMock()) Strategy({'strategy': 'default_strategy'}) hyperopt = Hyperopt(conf) diff --git a/freqtrade/tests/test_logger.py b/freqtrade/tests/test_logger.py deleted file mode 100644 index 3e38084ad..000000000 --- a/freqtrade/tests/test_logger.py +++ /dev/null @@ -1,97 +0,0 @@ -""" -Unit test file for logger.py -""" - -import logging - -from freqtrade.logger import Logger - - -def test_logger_object() -> None: - """ - Test the Constants object has the mandatory Constants - :return: None - """ - logger = Logger('') - assert logger.name == '' - assert logger.level == 20 - assert logger.level is logging.INFO - assert hasattr(logger, 'get_logger') - - logger = Logger('Foo', level=logging.WARNING) - assert logger.name == 'Foo' - assert logger.name != '' - assert logger.level == 30 - assert logger.level is logging.WARNING - - -def test_get_logger() -> None: - """ - Test Logger.get_logger() and Logger._init_logger() - :return: None - """ - logger = Logger(name='get_logger', level=logging.WARNING) - get_logger = logger.get_logger() - assert logger.logger is get_logger - assert get_logger is not None - assert hasattr(get_logger, 'debug') - assert hasattr(get_logger, 'info') - assert hasattr(get_logger, 'warning') - assert hasattr(get_logger, 'critical') - assert hasattr(get_logger, 'exception') - - -def test_set_name() -> None: - """ - Test Logger.set_name() - :return: None - """ - logger = Logger(name='set_name') - assert logger.name == 'set_name' - - logger.set_name('set_name_new') - assert logger.name == 'set_name_new' - - -def test_set_level() -> None: - """ - Test Logger.set_name() - :return: None - """ - logger = Logger(name='Foo', level=logging.WARNING) - assert logger.level == logging.WARNING - assert logger.get_logger().level == logging.WARNING - - logger.set_level(logging.INFO) - assert logger.level == logging.INFO - assert logger.get_logger().level == logging.INFO - - -def test_sending_msg(caplog) -> None: - """ - Test send a logging message - :return: None - """ - logger = Logger(name='sending_msg', level=logging.WARNING).get_logger() - - logger.info('I am an INFO message') - assert('sending_msg', logging.INFO, 'I am an INFO message') not in caplog.record_tuples - - logger.warning('I am an WARNING message') - assert ('sending_msg', logging.WARNING, 'I am an WARNING message') in caplog.record_tuples - - -def test_set_format(caplog) -> None: - """ - Test Logger.set_format() - :return: None - """ - log = Logger(name='set_format') - logger = log.get_logger() - - logger.info('I am the first message') - assert ('set_format', logging.INFO, 'I am the first message') in caplog.record_tuples - - log.set_format(log_format='%(message)s', propagate=True) - logger.info('I am the second message') - assert ('set_format', logging.INFO, 'I am the second message') in caplog.record_tuples