Allow editing of log_record in two possible ways

This change allows a subclass to either modify the given log_record in process_log_record or to compute a new dictionary and return that instead.