安装包
代码
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
using Serilog;
using Serilog.Events;
using System.IO;
using Serilog.Sinks.SystemConsole.Themes;
namespace ReportView
{
public class Program
{
public static void Main(string[] args)
{
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Information()
//覆盖来自特定命名空间或类型名称的事件的最低级别
.MinimumLevel.Override("Microsoft", LogEventLevel.Information)
.Enrich.FromLogContext()
//显示文本格式
.WriteTo.Console(theme: AnsiConsoleTheme.Literate,
outputTemplate: "时间:{Timestamp: HH:mm:ss.fff} 级别:{Level} 信息:{Message}{NewLine}{Exception}")
// 将日志事件写入指定文件,日志的生成周期
.WriteTo.File(Path.Combine("logs", @"log.txt"), rollingInterval: RollingInterval.Day)
.CreateLogger();
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
webBuilder.UseUrls("http://*:10086");
}).UseSerilog();
}
}
必须要注入否则无效( CreateHostBuilder 中).UseSerilog();
控制台效果