def logs_entryexit(logs, output_labels=None, ref_clock=0,
                         header=('Enter [s]', 'Exit [s]'), figs=(10, 4)):
    """Formatted string of logged function entry and exit times.

    Args:
        logs (List[dict]): Call logs as returned by ``log_with_timepoints``.
        output_labels (dict): Print labels for logs with output equal to keys.
        ref_clock (float): Process clock for relativizing log times.
            Should be the result of a recent call to ``time.perf_counter()``.
        header (iterable): Column headers for printout.
        figs (iterable): Number of total figures and decimals to report.

    Returns:
        log_str (str): Formatted string of logged entry and exit times.
    """
    log_str = ''
    if output_labels is None:
        output_labels = {}
    title_form = '\n{{:>{figs}}}{{:>{figs}}}'.format(figs=figs[0])
    record_form = '\n{{:{figs}.{decs}f}}{{:{figs}.{decs}f}} {{}}'.format(
        figs=figs[0], decs=figs[1])
    log_str += title_form.format(*header)
    for log in logs:
        call_entry = log['enter_clock'] - ref_clock
        call_exit = log['exit_clock'] - ref_clock
        try:
            output_label = output_labels[log['output']]
        except (TypeError, KeyError):
            output_label = ''
        log_str += record_form.format(call_entry, call_exit, output_label)
    return log_str