From 25c49e18142583a73a7ab8383edbe25e88386e81 Mon Sep 17 00:00:00 2001 From: Michael Miller Date: Sat, 29 Jul 2017 12:15:56 -0700 Subject: [PATCH] Add command line flag for changing the loglevel. Also reduced the checking message to debug level --- rq_retry_scheduler/cli/scheduler.py | 6 +++++- rq_retry_scheduler/scheduler.py | 2 +- tests/test_cli_main.py | 5 +++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/rq_retry_scheduler/cli/scheduler.py b/rq_retry_scheduler/cli/scheduler.py index dce8d93..0dcbf63 100644 --- a/rq_retry_scheduler/cli/scheduler.py +++ b/rq_retry_scheduler/cli/scheduler.py @@ -43,6 +43,10 @@ def get_arguments(args=None): '-i', '--interval', help='Scheduler polling interval (in seconds)', default=10.0, type=float) + parser.add_argument('--loglevel', help="Logging level", + choices=['DEBUG', 'INFO', 'WARNING', 'ERROR', + 'CRITICAL']) + return parser.parse_args(args) @@ -57,7 +61,7 @@ def get_redis(args): def setup_logging(args): logger = logging.getLogger('rq:retryscheduler:scheduler') - logger.setLevel('INFO') + logger.setLevel(vars(args).get('loglevel', 'INFO')) formatter = logging.Formatter(fmt='%(asctime)s %(message)s', datefmt='%H:%M:%S') handler = ColorizingStreamHandler() diff --git a/rq_retry_scheduler/scheduler.py b/rq_retry_scheduler/scheduler.py index 7de1df6..79b1a03 100644 --- a/rq_retry_scheduler/scheduler.py +++ b/rq_retry_scheduler/scheduler.py @@ -118,7 +118,7 @@ def is_repeat(self, job): return 'interval' in job.meta def enqueue_jobs(self): - self.log.info('Checking for scheduled jobs...') + self.log.debug('Checking for scheduled jobs...') jobs = self.get_jobs_to_queue(to_unix(self.current_time())) diff --git a/tests/test_cli_main.py b/tests/test_cli_main.py index 33f888b..aab6510 100644 --- a/tests/test_cli_main.py +++ b/tests/test_cli_main.py @@ -27,6 +27,11 @@ def test_setup_logging(): assert logger.getEffectiveLevel() == logging.INFO assert len(logger.handlers) > 0 + args = Namespace(loglevel='ERROR') + logger = scheduler.setup_logging(args) + + assert logger.getEffectiveLevel() == logging.ERROR + def test_main(mock): args = Namespace(url='redis://localhost/15', interval=5, burst=False)