Example #1
0
def test_mkevent_check_query_perf(config, event_status, status_server):
    for num in range(10000):
        event_status.new_event(CMKEventConsole.new_event({
            "host": "heute-%d" % num,
            "text": "%s %s BLA BLUB DINGELING ABASD AD R#@A AR@AR A@ RA@R A@RARAR ARKNLA@RKA@LRKNA@KRLNA@RLKNA@äRLKA@RNKAL@R" \
                    " j:O#A@J$ KLA@J $L:A@J :AMW: RAMR@: RMA@:LRMA@ L:RMA@ :AL@R MA:L@RM A@:LRMA@ :RLMA@ R:LA@RMM@RL:MA@R: AM@" % \
                    (time.time(), num),
        }))

    assert len(event_status.events()) == 10000

    s = FakeStatusSocket(b"GET events\n"
                         b"Filter: event_host in heute-1 127.0.0.1 heute123\n"
                         b"Filter: event_phase in open ack\n"
                         #b"OutputFormat: plain\n"
                         #b"Filter: event_application ~~ xxx\n"
                        )

    before = time.time()

    #import cProfile, StringIO, pstats
    #pr = cProfile.Profile()
    #pr.enable()
    status_server.handle_client(s, True, "127.0.0.1")
    #pr.disable()
    #ps = pstats.Stats(pr, stream=StringIO.StringIO())
    #ps.dump_stats("/tmp/test_mkevent_check_query_perf.profile")

    duration = time.time() - before

    response = s.get_response()
    assert len(response) == 2
    assert "event_id" in response[0]

    assert duration < 0.2
Example #2
0
def test_mkevent_query_filters(
    event_status,
    status_server,
    event,
    status_socket,
    is_match,
):
    event_status.new_event(CMKEventConsole.new_event(event))
    status_server.handle_client(status_socket, True, '127.0.0.1')
    response = status_socket.get_response()
    assert (len(response) == 2) is is_match