Ejemplo n.º 1
0
def test_sanitize_http_query_string(http_test_data):
    result = processors.sanitize_http_request_querystring(None, http_test_data)

    expected = "foo=bar&password={0}&the_secret={0}&cc={0}".format(
        processors.MASK)
    assert result["context"]["request"]["url"]["search"] == expected
    assert result["context"]["request"]["url"]["full"].endswith(expected)
Ejemplo n.º 2
0
def test_querystring_as_string_with_partials(http_test_data):
    http_test_data["context"]["request"]["url"][
        "search"] = "foo=bar&password&secret=123456"
    result = processors.sanitize_http_request_querystring(None, http_test_data)

    assert result["context"]["request"]["url"][
        "search"] == "foo=bar&password&secret={0}".format(processors.MASK)
Ejemplo n.º 3
0
def test_non_utf8_encoding(elasticapm_client, http_test_data):
    broken = compat.b("broken=") + u"aéöüa".encode("latin-1")
    http_test_data["context"]["request"]["url"]["search"] = broken
    result = processors.sanitize_http_request_querystring(
        elasticapm_client, http_test_data)
    assert result["context"]["request"]["url"][
        "search"] == u"broken=a\ufffd\ufffd\ufffda"
Ejemplo n.º 4
0
def test_sanitize_http_query_string(http_test_data):
    result = processors.sanitize_http_request_querystring(None, http_test_data)

    expected = 'foo=bar&password={0}&the_secret={0}&cc={0}'.format(
        processors.MASK
    )
    assert result['context']['request']['url']['search'] == expected
    assert result['context']['request']['url']['full'].endswith(expected)
Ejemplo n.º 5
0
def test_sanitize_http_query_string_max_length(elasticapm_client):
    qs = "api_key=1&v=" + 1020 * "x"
    data = {
        "context": {
            "request": {
                "url": {
                    "full": "http://example.com/bla?" + qs,
                    "search": qs
                }
            }
        }
    }
    result = processors.sanitize_http_request_querystring(
        elasticapm_client, data)
    for val in (result["context"]["request"]["url"]["search"],
                result["context"]["request"]["url"]["full"]):
        assert "api_key=********" in val
        assert len(val) == 1024
        assert val.endswith(u"x…")
Ejemplo n.º 6
0
def test_non_utf8_encoding(http_test_data):
    broken = compat.b('broken=') + u"aéöüa".encode('latin-1')
    http_test_data['context']['request']['url']['search'] = broken
    result = processors.sanitize_http_request_querystring(None, http_test_data)
    assert result['context']['request']['url']['search'] == u'broken=a\ufffd\ufffd\ufffda'
Ejemplo n.º 7
0
def test_querystring_as_string_with_partials(http_test_data):
    http_test_data['context']['request']['url']['search'] = 'foo=bar&password&secret=123456'
    result = processors.sanitize_http_request_querystring(None, http_test_data)

    assert (result['context']['request']['url']['search'] ==
            'foo=bar&password&secret={0}'.format(processors.MASK))
Ejemplo n.º 8
0
def test_querystring_as_string_with_partials(elasticapm_client, expected, http_test_data):
    result = processors.sanitize_http_request_querystring(elasticapm_client, http_test_data)
    assert result["context"]["request"]["url"]["search"] == expected
Ejemplo n.º 9
0
def test_sanitize_http_query_string(elasticapm_client, expected, http_test_data):
    result = processors.sanitize_http_request_querystring(elasticapm_client, http_test_data)
    assert result["context"]["request"]["url"]["search"] == expected
    assert result["context"]["request"]["url"]["full"].endswith(expected)