private void ConnectionAfterExecuteReader(object sender, AfterExecuteCommandEventArgs e)
    {
        var duration = e.Timestamp - _beforeExecuteReader.Timestamp;

        if (e.Exception != null)
        {
            Log.Write(LogLevel.Error, "{0}\r\nException:\r\n{1}", ToString(e.Command, duration), e.Exception.ToLogString());
            _beforeExecuteReader = null;
        }
        else
        {
            Log.Trace("{0}", ToString(e.Command, duration));
        }
    }
 private void ConnectionBeforeExecuteReader(object sender, BeforeExecuteCommandEventArgs e) => _beforeExecuteReader = e;