def METHOD_NAME(filename):
    """
    Read output from query_events command.
    The file is expected to be formatted such that there's a header line, a separator, then the
    data. The column set must contain "elapsed" and "rowcount" for later processing.
    Also Arthur prints a summary after the table, like "(100 rows)" which will be skipped if present.
    """
    column_spacing_re = re.compile(r"\s+\|\s+")
    row_count_re = re.compile(r"\(\d+\s*rows\)")
    print(f"Reading events from {filename}...")
    with open(filename) as f:
        for i, line in enumerate(f.readlines()):
            if i == 1 or row_count_re.match(line):
                # Found the separator line or the final row tally.
                continue
            yield column_spacing_re.sub("|", line).strip()