コード例 #1
0
def test_by_nonsense_is_err(log_setup):
    with pytest.raises(ValueError, match=r".*Incorrect 'file_rotate_by'.*"
                       ), tempfile.NamedTemporaryFile() as log:
        log.flush()
        de_logger.configure_logging(
            log_level="INFO",
            max_backup_count=6,
            file_rotate_by="nonsense",
            max_file_size=1000000,
            log_file_name=log.name,
        )
コード例 #2
0
def test_by_time(log_setup):
    with tempfile.NamedTemporaryFile() as log:
        log.flush()
        de_logger.configure_logging(
            log_level="INFO",
            rotation_interval=1,
            file_rotate_by="time",
            rotation_time_unit="D",
            log_file_name=log.name,
            start_q_logger="False",
        )

        assert log_setup.hasHandlers() is True
        assert "TimedRotatingFileHandler" in str(log_setup.handlers)
        assert log_setup.debug("debug") is None
        assert log_setup.info("infomsg") is None
コード例 #3
0
def test_by_size(log_setup):
    with tempfile.NamedTemporaryFile() as log:
        log.flush()
        de_logger.configure_logging(
            log_level="INFO",
            max_backup_count=6,
            file_rotate_by="size",
            max_file_size=1000000,
            log_file_name=log.name,
            start_q_logger="False",
        )

        assert log_setup.hasHandlers() is True
        assert "RotatingFileHandler" in str(log_setup.handlers)
        assert log_setup.debug("debug") is None
        assert log_setup.info("infomsg") is None
コード例 #4
0
def _make_de_logger(global_config):
    if "logger" not in global_config:
        raise RuntimeError("No logger configuration has been specified.")
    try:
        logger_config = global_config["logger"]
        de_logger.configure_logging(
            log_level=logger_config.get("log_level", "INFO"),
            file_rotate_by=logger_config.get("file_rotate_by", "size"),
            rotation_time_unit=logger_config.get("rotation_time_unit", "D"),
            rotation_interval=logger_config.get("rotation_time_interval", 1),
            max_backup_count=logger_config.get("max_backup_count", 6),
            max_file_size=logger_config.get("max_file_size", 1000000),
            log_file_name=logger_config["log_file"],
            start_q_logger=logger_config.get("start_q_logger", "True"),
        )
        return de_logger.get_logger()
    except Exception as msg:  # pragma: no cover
        raise RuntimeError(f"Failed to create log: {msg}")