public static void Error(this TyrionBankerLogger me,
                          object message, Exception exception,
                          object properties = null, [CallerMemberName] string caller = null, [CallerLineNumber] int line = 0) => me.Write(CreateLogEntry(Level.Error, message?.ToString(), exception, properties, caller, line));
 public static void ErrorFormat(this TyrionBankerLogger me,
                                string format, object properties = null, [CallerMemberName] string caller = null, [CallerLineNumber] int line = 0, params object[] args) => me.Write(CreateLogEntry(Level.Error, string.Format(format, args), null, properties, caller, line));
 public static void WarnFormat(this TyrionBankerLogger me,
                               string format, object arg0, object arg1, object arg2,
                               object properties = null, [CallerMemberName] string caller = null, [CallerLineNumber] int line = 0) => me.Write(CreateLogEntry(Level.Warn, string.Format(format, arg0, arg1, arg2), null, properties, caller, line));