コード例 #1
0
def test_setup_logging(mock_gwc, tmpdir):
    mock_gwc.return_value.cachito_request_file_logs_dir = str(tmpdir)
    mock_gwc.return_value.cachito_request_file_logs_level = "DEBUG"
    mock_gwc.return_value.cachito_request_file_logs_format = (
        "[%(asctime)s %(name)s %(levelname)s %(module)s.%(funcName)s] %(message)s"
    )
    mock_gwc.return_value.cachito_request_file_logs_perm = 0o660
    workers_logger = logging.getLogger("cachito.workers")
    workers_logger.disabled = False
    workers_logger.setLevel(logging.INFO)

    logger = logging.getLogger()

    task_id = mock.Mock()
    task = mock.Mock()

    def _dummy_task(msg, request_id):
        return

    task.__wrapped__ = _dummy_task

    try:
        celery_logging.setup_task_logging(task_id,
                                          task,
                                          args=["hello"],
                                          kwargs={"request_id": 3})
        workers_logger.info("Test log message")
    finally:
        for handler in logger.handlers:
            if isinstance(handler, logging.FileHandler):
                logger.removeHandler(handler)

    # verify that correct message was logged
    with open(tmpdir.join("3.log")) as f:
        assert "Test log message" in f.read()
コード例 #2
0
def test_setup_logging_request_id_not_found(mock_gwc, mock_get_func_arg_val,
                                            tmpdir):
    mock_gwc.return_value.cachito_request_file_logs_dir = str(tmpdir)
    mock_gwc.return_value.cachito_request_file_logs_level = "DEBUG"
    mock_gwc.return_value.cachito_request_file_logs_format = (
        "[%(asctime)s %(name)s %(levelname)s %(module)s.%(funcName)s] %(message)s"
    )
    mock_get_func_arg_val.return_value = None

    task_id = mock.Mock()
    task = mock.Mock()

    def _dummy_task(msg, request_id):
        return

    task.__wrapped__ = _dummy_task

    expected = "Unable to get 'request_id'"
    with pytest.raises(CachitoError, match=expected):
        celery_logging.setup_task_logging(task_id,
                                          task,
                                          args=["hello"],
                                          kwargs={"request_id": 3})