Blazor
15 Feb 2022

Adding Serilog to .Net 6 Blazor App.

1. Nuget Packages

Add the following Nuget package to your project.

  • Serilog.AspNetCore by Microsoft.

2. Configure

Configure Serilog in Program.cs file.

C#

...

using Serilog;
using Serilog.Formatting.Compact;

var builder = WebApplication.CreateBuilder(args);

...

Log.Logger = new LoggerConfiguration()
    .MinimumLevel.Error()
    .WriteTo.Debug(new RenderedCompactJsonFormatter())
    // File location should have write permission granted
    .WriteTo.File(@"c:/temp2/logs.txt",rollingInterval: RollingInterval.Day)
    .CreateLogger();

...

builder.Host.UseSerilog();
var app = builder.Build();

...

NOTE: The file location should have write permission granted.

3. Usage

Now to use logger in your Blazor component, inject it like any other service and use it anywhere in your code.

C#

[Inject] public ILogger<MyComponentBase> logger { get; set; }

...

protected override void OnInitialized()
{
    ...

    logger.LogError("Logging some error here.");

    ...
}

Happy Coding :)