/// <summary> /// Logs msg unconditionally at Error level /// </summary> public static void Error(this IGrain grain, string message, [CallerFilePath] string filePath = "", [CallerMemberName] string memberName = "", [CallerLineNumber] int lineNumber = 0) { Common.Log.Error($"{grain.LoggingIdentifier()}{message}", filePath, memberName, lineNumber); }
/// <summary> /// Logs exception unconditionally at Critical level. /// </summary> public static void Exception(this IGrain grain, Exception ex, string message = null) { Common.Log.Exception(ex, $"{grain.LoggingIdentifier()}{message}"); }
/// <summary> /// Logs message iff this is a DEBUG build. /// </summary> public static void Debug(this IGrain grain, Func <string> messageFun, [CallerFilePath] string filePath = "", [CallerMemberName] string memberName = "", [CallerLineNumber] int lineNumber = 0) { Common.Log.Debug(() => $"{grain.LoggingIdentifier()}{messageFun()}", filePath, memberName, lineNumber); }