public Task PersistAsync(Event evt)
        {
            var auditArgument = Factory.Create(evt);

            if (auditArgument != null)
            {
                if (evt.EventType == EventTypes.Success || evt.EventType == EventTypes.Information)
                {
                    return(auditRecorder.RecordSuccess(auditArgument));
                }

                return(auditRecorder.RecordFailure(auditArgument));
            }

            return(Task.CompletedTask);
        }