Whilst there are some pre-built libraries for this, I seemed to be getting Mono linking errors. What finally worked for me was to install the pre-release versions of:
Install-Package Microsoft.Extensions.Logging -Version 3.0.0-preview6.19304.6
Install-Package Microsoft.Extensions.Logging.Console -Version 3.0.0-preview6.19304.6
Now, in your View Model, accept the Logger:
public MyViewModel(ILogger<MyViewModel> logger)
Then you can log as normal:
\_logger.LogInformation("Hello, here's a log message");
You should now see the debug message in the F12 console.
You might be wondering why you don’t need to explicitly inject the logging capability; the reason is that:
BlazorWebAssemblyHost.CreateDefaultBuilder()
Does that for you.