默认日志:
1 | Console.WriteLine("日志内容..."); |
Serilog日志:
1 | Log.Error("OMG its on fire!"); |
Serilog日志显示效果:
1.安装依赖包:
Serilog 和 Serilog.Sinks.BrowserConsole
注意由于Serilog.Sinks.BrowserConsole现在还没有正式版本,所以必须在“程序包管理控件台”用命令安装,命令如下:
1 | dotnet add BlazorApp3 package Serilog.Sinks.BrowserConsole -v 1.0.0-dev-00012 |
2.创建日志实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | 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日志例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | @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!"); } } |
引深:
还可以将日志同时记录到服务器和客户端浏览器中:
https://nblumhardt.com/2019/11/serilog-blazor/