2016-09-20 8 views
4

Im new to hangfire, и я пытаюсь настроить способ регистрации событий с помощью моего существующего регистратора serilog в asp.net web api. Вот мой регистратор класс:Журнальные события с использованием существующих serilog

и в моем файле запуска добавить код из документации замедленного воспламенения:

GlobalConfiguration.Configuration 
      .UseSqlServerStorage(Settings.Instance.NLSContextConnectionString); 

     app.UseHangfireDashboard(); 
     app.UseHangfireServer(); 

Моего замедленное воспламенение отлично работает, но как я позволяю сделать замедленное воспламенение использовать мой serilog?

+0

В соответствии с [документацией] (http://docs.hangfire.io/en/latest/configuration/configuring-logging.html) Hangfire автоматически поддерживает ведение журнала в Serilog. Разве это не работает для вас? – PatrickSteele

+0

нет не,, к сожалению. и я считаю, что документация действительно отсутствует. –

+0

Не связанный с вашей проблемой, но отсутствие вызова Log.CloseAndFlush() при выходе приложения вызовет проблемы (если только это не будет просто исключено из вашего примера кода). Ура! –

ответ

2

Возможно, что Hangfire инициализирует и кэширует свой собственный внутренний регистратор доCreateLog() вызывается приложением.

Чтобы проверить эту теорию, попробуйте переместить код, который инициализирует Log.Logger до самого начала кода запуска приложения, например. в Global.Application_Start() или аналогичных.