mirror of
https://github.com/hmaxnl/DotBased.git
synced 2025-01-18 18:14:20 +01:00
Added logging building function to LogOption for creating ILogger instasnces
This commit is contained in:
parent
a62896cf9f
commit
68403245f0
|
@ -9,4 +9,10 @@ public class LogOptions
|
|||
/// The severty the logger will log
|
||||
/// </summary>
|
||||
public LogSeverity Severity { get; set; } = LogSeverity.Trace;
|
||||
|
||||
/// <summary>
|
||||
/// The function that will build and return the <see cref="ILogger"/> when calling <see cref="LogService.RegisterLogger"/>, so a custom logger can be used.
|
||||
/// </summary>
|
||||
public Func<string, CallingSource, Action<LogCapsule>, ILogger> LoggerBuilder { get; set; } =
|
||||
(identifier, source, sendEvent) => new Logger(identifier, source, ref sendEvent);
|
||||
}
|
|
@ -46,13 +46,12 @@ public static class LogService
|
|||
/// }
|
||||
/// </code>
|
||||
/// </example>
|
||||
/// <remarks>At the moment this function will only return the default <see cref="Logger"/> class, this is not configureble at the moment!</remarks>
|
||||
/// <param name="identifier">The identifier name of the logger, this will be passed to the log adapter as the source.</param>
|
||||
/// <returns>The configured <see cref="ILogger"/> implementation that will be configuered in the <see cref="LogOptions"/> at the <see cref="LogService"/> class</returns>
|
||||
/// <returns>The configured <see cref="ILogger"/> implementation that will be configuered in the <see cref="LogOptions.LoggerBuilder"/> at the <see cref="LogService"/> class</returns>
|
||||
public static ILogger RegisterLogger(string identifier)
|
||||
{
|
||||
var asm = Assembly.GetCallingAssembly();
|
||||
var logger = new Logger(identifier, CallingSource.LoadFromAsm(asm), ref _loggerSendEvent);
|
||||
var logger = Options.LoggerBuilder.Invoke(identifier, CallingSource.LoadFromAsm(asm), _loggerSendEvent);
|
||||
Loggers.Add(logger);
|
||||
return logger;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user