示例#1
0
def logging_level(request):
    """ Configure the structlog level.

    For integration tests this also sets the geth verbosity.
    """
    # disable pytest's built in log capture, otherwise logs are printed twice
    request.config.option.showcapture = 'no'

    if request.config.option.log_cli_level:
        level = request.config.option.log_cli_level
    elif request.config.option.verbose > 3:
        level = 'DEBUG'
    elif request.config.option.verbose > 1:
        level = 'INFO'
    else:
        level = 'WARNING'

    if request.config.option.log_config:
        config_converter = LogLevelConfigType()
        logging_levels = config_converter.convert(
            value=request.config.option.log_config,
            param=None,
            ctx=None,
        )
    else:
        logging_levels = {'': level}

    configure_logging(
        logging_levels,
        colorize=not request.config.option.plain_log,
        log_file=request.config.option.log_file,
        cache_logger_on_first_use=False,
    )
示例#2
0
def logging_level(request):
    """ Configure the structlog level.

    For integration tests this also sets the geth verbosity.
    """
    if request.config.option.log_cli_level:
        level = request.config.option.log_cli_level
    elif request.config.option.verbose > 3:
        level = 'DEBUG'
    elif request.config.option.verbose > 1:
        level = 'INFO'
    else:
        level = 'WARNING'

    if request.config.option.log_config:
        config_converter = LogLevelConfigType()
        logging_levels = config_converter.convert(
            value=request.config.option.log_config,
            param=None,
            ctx=None,
        )
    else:
        logging_levels = {'': level}

    configure_logging(
        logging_levels,
        colorize=not request.config.option.plain_log,
        log_file=request.config.option.log_file,
    )
示例#3
0
def logging_level(request):
    """ Configure the structlog level.

    For integration tests this also sets the geth verbosity.
    """
    # disable pytest's built in log capture, otherwise logs are printed twice
    request.config.option.showcapture = "no"

    if request.config.option.log_cli_level:
        level = request.config.option.log_cli_level
    elif request.config.option.verbose > 3:
        level = "DEBUG"
    elif request.config.option.verbose > 1:
        level = "INFO"
    else:
        level = "WARNING"

    if request.config.option.log_config:
        config_converter = LogLevelConfigType()
        logging_levels = config_converter.convert(
            value=request.config.option.log_config, param=None, ctx=None)
    else:
        logging_levels = {"": level}

    time = datetime.datetime.utcnow().isoformat()
    debug_path = os.path.join(tempfile.gettempdir(),
                              f"raiden-debug_{time}.log")
    configure_logging(
        logging_levels,
        colorize=not request.config.option.plain_log,
        log_file=request.config.option.log_file,
        cache_logger_on_first_use=False,
        debug_log_file_name=debug_path,
    )
示例#4
0
def logging_level(request):
    """ Configure the structlog level.

    For integration tests this also sets the geth verbosity.
    """
    # disable pytest's built in log capture, otherwise logs are printed twice
    request.config.option.showcapture = 'no'

    if request.config.option.log_cli_level:
        level = request.config.option.log_cli_level
    elif request.config.option.verbose > 3:
        level = 'DEBUG'
    elif request.config.option.verbose > 1:
        level = 'INFO'
    else:
        level = 'WARNING'

    if request.config.option.log_config:
        config_converter = LogLevelConfigType()
        logging_levels = config_converter.convert(
            value=request.config.option.log_config,
            param=None,
            ctx=None,
        )
    else:
        logging_levels = {'': level}

    configure_logging(
        logging_levels,
        colorize=not request.config.option.plain_log,
        log_file=request.config.option.log_file,
    )
示例#5
0
def test_stress(
        request,
        raiden_network,
        deposit,
        retry_timeout,
        token_addresses,
        port_generator,
        skip_if_not_udp,  # pylint: disable=unused-argument
):

    config_converter = LogLevelConfigType()
    logging_levels = config_converter.convert(
        value=request.config.option.log_config or "", param=None, ctx=None)
    _trimmed_logging(logging_levels)

    token_address = token_addresses[0]
    rest_apis = start_apiserver_for_network(raiden_network, port_generator)
    identifier_generator = count()

    token_network_identifier = views.get_token_network_identifier_by_token_address(
        views.state_from_app(raiden_network[0]),
        raiden_network[0].raiden.default_registry.address,
        token_address,
    )

    for _ in range(2):
        assert_channels(raiden_network, token_network_identifier, deposit)

        stress_send_serial_transfers(rest_apis, token_address,
                                     identifier_generator, deposit)

        raiden_network, rest_apis = restart_network_and_apiservers(
            raiden_network, rest_apis, port_generator, retry_timeout)

        assert_channels(raiden_network, token_network_identifier, deposit)

        stress_send_parallel_transfers(rest_apis, token_address,
                                       identifier_generator, deposit)

        raiden_network, rest_apis = restart_network_and_apiservers(
            raiden_network, rest_apis, port_generator, retry_timeout)

        assert_channels(raiden_network, token_network_identifier, deposit)

        stress_send_and_receive_parallel_transfers(rest_apis, token_address,
                                                   identifier_generator,
                                                   deposit)

        raiden_network, rest_apis = restart_network_and_apiservers(
            raiden_network, rest_apis, port_generator, retry_timeout)

    restart_network(raiden_network, retry_timeout)
示例#6
0
def logging_level(request):
    """ Configure the structlog level.

    For integration tests this also sets the geth verbosity.
    """
    # disable pytest's built in log capture, otherwise logs are printed twice
    request.config.option.showcapture = 'no'

    if request.config.option.log_cli_level:
        level = request.config.option.log_cli_level
    elif request.config.option.verbose > 3:
        level = 'DEBUG'
    elif request.config.option.verbose > 1:
        level = 'INFO'
    else:
        level = 'WARNING'

    if request.config.option.log_config:
        config_converter = LogLevelConfigType()
        logging_levels = config_converter.convert(
            value=request.config.option.log_config,
            param=None,
            ctx=None,
        )
    else:
        logging_levels = {'': level}

    time = datetime.datetime.utcnow().isoformat()
    debug_path = os.path.join(
        tempfile.gettempdir(),
        f'raiden-debug_{time}.log',
    )
    configure_logging(
        logging_levels,
        colorize=not request.config.option.plain_log,
        log_file=request.config.option.log_file,
        cache_logger_on_first_use=False,
        debug_log_file_name=debug_path,
    )
示例#7
0
def logging_level(request, logs_storage):
    """ Configure the structlog level.

    For integration tests this also sets the geth verbosity.
    """
    # disable pytest's built in log capture, otherwise logs are printed twice
    request.config.option.showcapture = "stdout"

    if request.config.option.log_cli_level:
        level = request.config.option.log_cli_level
    elif request.config.option.verbose > 3:
        level = "DEBUG"
    elif request.config.option.verbose > 1:
        level = "INFO"
    else:
        level = "WARNING"

    if request.config.option.log_config:
        config_converter = LogLevelConfigType()
        logging_levels = config_converter.convert(
            value=request.config.option.log_config, param=None, ctx=None
        )
    else:
        logging_levels = {"": level}

    # configure_logging requires the path to exist
    os.makedirs(logs_storage, exist_ok=True)

    time = datetime.datetime.utcnow().isoformat()
    debug_path = os.path.join(logs_storage, f"raiden-debug_{time}.log")

    configure_logging(
        logging_levels,
        colorize=not request.config.option.plain_log,
        log_file=request.config.option.log_file,
        cache_logger_on_first_use=False,
        debug_log_file_path=debug_path,
    )
    log.info("Running test", nodeid=request.node.nodeid)
示例#8
0
def test_stress(
        request,
        raiden_network,
        deposit,
        retry_timeout,
        token_addresses,
        port_generator,
        skip_if_not_udp,  # pylint: disable=unused-argument
):

    config_converter = LogLevelConfigType()
    logging_levels = config_converter.convert(
        value=request.config.option.log_config or '',
        param=None,
        ctx=None,
    )
    _trimmed_logging(logging_levels)

    token_address = token_addresses[0]
    rest_apis = start_apiserver_for_network(raiden_network, port_generator)
    identifier_generator = count()

    token_network_identifier = views.get_token_network_identifier_by_token_address(
        views.state_from_app(raiden_network[0]),
        raiden_network[0].raiden.default_registry.address,
        token_address,
    )

    for _ in range(2):
        assert_channels(
            raiden_network,
            token_network_identifier,
            deposit,
        )

        stress_send_serial_transfers(
            rest_apis,
            token_address,
            identifier_generator,
            deposit,
        )

        raiden_network, rest_apis = restart_network_and_apiservers(
            raiden_network,
            rest_apis,
            port_generator,
            retry_timeout,
        )

        assert_channels(
            raiden_network,
            token_network_identifier,
            deposit,
        )

        stress_send_parallel_transfers(
            rest_apis,
            token_address,
            identifier_generator,
            deposit,
        )

        raiden_network, rest_apis = restart_network_and_apiservers(
            raiden_network,
            rest_apis,
            port_generator,
            retry_timeout,
        )

        assert_channels(
            raiden_network,
            token_network_identifier,
            deposit,
        )

        stress_send_and_receive_parallel_transfers(
            rest_apis,
            token_address,
            identifier_generator,
            deposit,
        )

        raiden_network, rest_apis = restart_network_and_apiservers(
            raiden_network,
            rest_apis,
            port_generator,
            retry_timeout,
        )

    restart_network(raiden_network, retry_timeout)