In .Net5 ILoggerFactory is used as Configure function in Startup.cs as follows :
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory)
{
//here we used loggerFactory
loggerFactory.AddProvider(loggerprovider);
}
In .Net6 how to get it with app or builder
var app = builder.Build();
OR
var builder = WebApplication.CreateBuilder(args);
To get the actual logger factory instance:
var app = builder.Build();
var lf = app.Services.GetRequiredService<ILoggerFactory>();
One could also use GetService rather than GetRequiredService. When the service does not exist, GetService returns null and GetRequiredService throws an exception. Pros and cons discussed here:
https://andrewlock.net/the-difference-between-getservice-and-getrquiredservice-in-asp-net-core/
WebApplicationBuilder exposes Logging property which has AddProvider(ILoggingBuilder, ILoggerProvider) extension method available. Try using it:
builder.Logging.AddProvider(loggerprovider);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With