from datetime import datetime


def log_entry_parser(entry_):
    """
    Parses the line with license usage text information and returns a dictionary containing
    data required.
    :param entry_:
    :return: dict()
    """
    entry = dict()

    entry['date'] = datetime.strptime(entry_[0:23], '%Y/%m/%d %H:%M:%S:%f')

    split_entry = entry_[38:].split('!')
    entry['status'] = split_entry[0]
    entry['license'] = split_entry[2]
    entry['user'] = split_entry[10]
    entry['machine'] = split_entry[8]

    return entry