Я новичок в Hangfire, и я пытаюсь настроить способ регистрации событий, используя мой существующий регистратор serilog в веб-API asp.net. Вот мой класс регистратора:
public static class LoggerInitializer
{
private static ILogger CreateLog()
{
var settings = Settings.Instance;
Log.Logger = new LoggerConfiguration().
MinimumLevel.Debug().
WriteTo.RollingFile(settings.LoggerDebugDirectory +"Debug-{Date}.txt", restrictedToMinimumLevel: Serilog.Events.LogEventLevel.Debug,
outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss} [{Level}] {Message}{NewLine}{Exception}").
WriteTo.RollingFile(settings.LoggerVerboseDirectory + "Debug-{Date}.txt").
CreateLogger();
return Log.Logger;
}
static ILogger _logger;
public static ILogger GetLogger()
{
if (_logger != null)
return _logger;
return _logger = CreateLog();
}
}
и в свой стартовый файл я добавляю код из документации по Hangfire:
GlobalConfiguration.Configuration
.UseSqlServerStorage(Settings.Instance.NLSContextConnectionString);
app.UseHangfireDashboard();
app.UseHangfireServer();
Мой Hangfire работает отлично, но как мне включить, чтобы Hangfire использовал мой серилог?
Log.CloseAndFlush()
при выходе из приложения вызовет проблемы (если он просто не пропущен в вашем примере кода). Ваше здоровье! - person Nicholas Blumhardt   schedule 21.09.2016