默认日志:
Console.WriteLine("日志内容...");
Serilog日志:
Log.Error("OMG its on fire!");
Serilog日志显示效果:
1.安装依赖包:
Serilog 和 Serilog.Sinks.BrowserConsole
注意由于Serilog.Sinks.BrowserConsole现在还没有正式版本,所以必须在“程序包管理控件台”用命令安装,命令如下:
dotnet add BlazorApp3 package Serilog.Sinks.BrowserConsole -v 1.0.0-dev-00012
2.创建日志实例:
public class Program
{
public static async Task Main(string[] args)
{
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.RootComponents.Add<App>("app");
builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });
builder.Services.AddSingleton<Markdig.MarkdownPipeline>(sp =>
new Markdig.MarkdownPipelineBuilder()
.UseAdvancedExtensions()
.UseSyntaxHighlighting()
.Build());
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.WriteTo.BrowserConsole()
.CreateLogger();
await builder.Build().RunAsync();
}
}
3.Serilog日志例子:
@page "/loging"
@using Serilog
<div class="row mt-1">
<button class="btn btn-primary" @onclick="LogMessage">Log Message with Serilog</button>
</div>
<div class="row mt-1" >
<button class="btn btn-warning" @onclick="LogWarning">Log Warning with Serilog</button>
</div>
<div class="row mt-1">
<button class="btn btn-danger" @onclick="LogError" >Log Error with Serilog</button>
</div>
@code {
private void LogMessage()
{
Log.Information("Information Message");
}
private void LogWarning()
{
Log.Warning("Warning Message");
}
private void LogError()
{
Log.Error("OMG its on fire!");
}
}
引深:
还可以将日志同时记录到服务器和客户端浏览器中: