Dot Net Core, использующий NLog, создает файл журнала, но никогда ничего не регистрирует

Да, оба коротких замыкания and и or - см. документы .

0
задан Sir Rufo 11 March 2019 в 22:38
поделиться

1 ответ

Ваш код инициализирует NLog, затем вызывает NLog.LogManager.Shutdown(), а затем запускает WebHost.

Попробуйте вместо этого:

   public static void Main(string[] args)
   {
        // NLog: setup the logger first to catch all errors
        var logger = NLog.Web.NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger();
        try
        {
            logger.Debug("init main");
            BuildWebHost(args).Build().Run();
        }
        catch (Exception ex)
        {
            //NLog: catch setup errors
            logger.Error(ex, "Stopped program because of exception");
            throw;
        }
        finally
        {
            // Ensure to flush and stop internal timers/threads before application-exit (Avoid segmentation fault on Linux)
            NLog.LogManager.Shutdown();
        }
    }

    public static IWebHostBuilder BuildWebHost(string[] args)
    {
            var webHost = new WebHostBuilder()
                .UseKestrel()
                .UseContentRoot(Directory.GetCurrentDirectory())
                .UseIISIntegration()
                .ConfigureAppConfiguration((hostingContext, config) =>
                {
                    var env = hostingContext.HostingEnvironment;
                    config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
                          .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true, reloadOnChange: true);
                    config.AddEnvironmentVariables();
                })
                .UseStartup<Startup>()
                .ConfigureLogging(logging =>
                {
                    logging.ClearProviders();
                    logging.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
                })
                .UseNLog();
        return webHost;
    };
0
ответ дан Rolf Kristensen 11 March 2019 в 22:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: