I defined a Logger this way with LogLevel FATAL for Console log:
LoggerConfiguration logCfg = new LoggerConfiguration();
logCfg
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", LogEventLevel.Error)
.Enrich.FromLogContext()
.Enrich.With(new UtcTimestampEnricher())
.Enrich.WithProperty("SENDER", applicationName)
//ToDo, extend the Logger for DB to log an active GUID
//.Enrich.WithProperty("GUID", guid)
.WriteTo.Console(restrictedToMinimumLevel: LogEventLevel.Fatal)
.WriteTo.File(applicationLogPath,
restrictedToMinimumLevel: logEventLvlFile,
outputTemplate: fileOutputTemplate,
rollOnFileSizeLimit: changeOnFileSizeLimit,
fileSizeLimitBytes: fileSize,
retainedFileCountLimit: retainedFileCount);
But this will be displayed on Console:
_logger.LogInformation("Worker pulling config at: {time}", DateTimeOffset.Now);
This was the solution:
foreach (ServiceDescriptor serviceDescriptor in logging.Services)
{
if (serviceDescriptor.ImplementationType == typeof(Microsoft.Extensions.Logging.Console.ConsoleLoggerProvider))
{
// remove ConsoleLoggerProvider service only
logging.Services.Remove(serviceDescriptor);
break;
}
}
logging.AddSerilog();