Пример #1
0
        public static void Main(string[] args)
        {
            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Debug()
                         .MinimumLevel.Override("Microsoft", LogEventLevel.Information)
                         .Enrich.FromLogContext()
                         .WriteTo.Console()
                         .WriteTo.File(Path.Combine("logs", @"log.txt"), rollingInterval: RollingInterval.Day)
                         .CreateLogger();

            var host = CreateHostBuilder(args).Build();

            using (var scope = host.Services.CreateScope())
            {
                var service       = scope.ServiceProvider;
                var loggerFactory = service.GetRequiredService <ILoggerFactory>();
                try
                {
                    var myContext = service.GetRequiredService <MyContext>();
                    MyContextSend.SeedAsync(myContext, loggerFactory).Wait();
                }
                catch (Exception e)
                {
                    var logger = loggerFactory.CreateLogger <Program>();
                    logger.LogError(e, "Error occured seeding the DataBase");
                }
            }

            host.Run();
        }
Пример #2
0
        public static void Main(string[] args)
        {
            #region 配置Seailog

            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Debug()                                                                 //最小输出级别
                         .MinimumLevel.Override("Microsoft", LogEventLevel.Information)                        //重写,日志输出的最小级别如果是以Microsoft空间开头的,那么输出的最小级别就是Information
                         .Enrich.FromLogContext()
                         .WriteTo.Console()                                                                    //输出到控制台
                         .WriteTo.File(Path.Combine("logs", @"log.txt"), rollingInterval: RollingInterval.Day) //输出到文件
                         .CreateLogger();
            #endregion



            var host = CreateWebHostBuilder(args).Build();
            //创建一个作用域
            using (var scope = host.Services.CreateScope())
            {
                var service = scope.ServiceProvider;
                //从容器中获取loggerFactory
                var loggerFactory = service.GetRequiredService <ILoggerFactory>();
                try
                {
                    var mycontext = service.GetRequiredService <MyDbContext>();
                    MyContextSend.SendAsync(mycontext, loggerFactory).Wait();
                }
                catch (Exception e)
                {
                    var logger = loggerFactory.CreateLogger <Program>();
                    logger.LogError(e, "Error occured on sending The Database    ");
                }
            }
            host.Run();
        }