diff --git a/swh/scheduler/celery_backend/config.py b/swh/scheduler/celery_backend/config.py --- a/swh/scheduler/celery_backend/config.py +++ b/swh/scheduler/celery_backend/config.py @@ -23,7 +23,6 @@ from swh.scheduler import CONFIG as SWH_CONFIG from swh.core.config import load_named_config, merge_configs -from swh.core.logger import JournalHandler DEFAULT_CONFIG_NAME = 'worker' CONFIG_NAME_ENVVAR = 'SWH_WORKER_INSTANCE' @@ -75,10 +74,16 @@ root_logger.addHandler(console) if log_journal: - systemd_journal = JournalHandler() - systemd_journal.setLevel(logging.DEBUG) - systemd_journal.setFormatter(formatter) - root_logger.addHandler(systemd_journal) + try: + from swh.core.logger import JournalHandler + except ImportError: + root_logger.warning('JournalHandler is not available, skipping. ' + 'Please install swh-core[logging].') + else: + systemd_journal = JournalHandler() + systemd_journal.setLevel(logging.DEBUG) + systemd_journal.setFormatter(formatter) + root_logger.addHandler(systemd_journal) logging.getLogger('celery').setLevel(logging.INFO) # Silence amqp heartbeat_tick messages